org.opensourcephysics.numerics.dde_solvers.rk.irk
Class IRKLinearAlgebra

java.lang.Object
  extended by org.opensourcephysics.numerics.dde_solvers.rk.irk.IRKLinearAlgebra

public class IRKLinearAlgebra
extends java.lang.Object

Non objective software for solving linear equations see org.opensourcephysics.numerics.LUPdecomposition


Constructor Summary
IRKLinearAlgebra()
           
 
Method Summary
 int dec(int N, int NDIM, double[][] A, int[] IP)
          ----------------------------------------------------------------------- MATRIX TRIANGULARIZATION BY GAUSSIAN ELIMINATION.
 int decc(int N, int NDIM, double[][] AR, double[][] AI, int[] IP)
          ----------------------------------------------------------------------- MATRIX TRIANGULARIZATION BY GAUSSIAN ELIMINATION ------ MODIFICATION FOR COMPLEX MATRICES -------- INPUT..
 void sol(int N, int NDIM, double[][] A, double[] B, int[] IP)
          ----------------------------------------------------------------------- SOLUTION OF LINEAR SYSTEM, A * X = B .
 void solc(int N, int NDIM, double[][] AR, double[][] AI, double[] BR, double[] BI, int[] IP)
          ----------------------------------------------------------------------- SOLUTION OF LINEAR SYSTEM, A * X = B .
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IRKLinearAlgebra

public IRKLinearAlgebra()
Method Detail

dec

public int dec(int N,
               int NDIM,
               double[][] A,
               int[] IP)
----------------------------------------------------------------------- MATRIX TRIANGULARIZATION BY GAUSSIAN ELIMINATION. INPUT.. N = ORDER OF MATRIX. NDIM = DECLARED DIMENSION OF ARRAY A . A = MATRIX TO BE TRIANGULARIZED. OUTPUT.. A[I][J], I <= J = UPPER TRIANGULAR FACTOR, U . A[I][J], I > J = MULTIPLIERS = LOWER TRIANGULAR FACTOR, I - L. IP[K], K < N - 1 = INDEX OF K-TH PIVOT ROW. IP[N - 1] = (-1)**(NUMBER OF INTERCHANGES) OR O . IER = -1 IF MATRIX A IS NONSINGULAR, OR K IF FOUND TO BE SINGULAR AT STAGE K. USE SOL TO OBTAIN SOLUTION OF LINEAR SYSTEM. DETERM(A) = IP[N - 1] * A[0][0] * A[1][1] * ... * A[N - 1][N - 1]. IF IP[N - 1] = O, A IS SINGULAR, SOL WILL DIVIDE BY ZERO. REFERENCE.. C. B. MOLER, ALGORITHM 423, LINEAR EQUATION SOLVER, C.A.C.M. 15 (1972), P. 274. -----------------------------------------------------------------------


sol

public void sol(int N,
                int NDIM,
                double[][] A,
                double[] B,
                int[] IP)
----------------------------------------------------------------------- SOLUTION OF LINEAR SYSTEM, A * X = B . INPUT.. N = ORDER OF MATRIX. NDIM = DECLARED DIMENSION OF ARRAY A . A = TRIANGULARIZED MATRIX OBTAINED FROM DEC. B = RIGHT HAND SIDE VECTOR. IP = PIVOT VECTOR OBTAINED FROM DEC. DO NOT USE IF DEC HAS SET IER != -1. OUTPUT.. B = SOLUTION VECTOR, X . -----------------------------------------------------------------------


decc

public int decc(int N,
                int NDIM,
                double[][] AR,
                double[][] AI,
                int[] IP)
----------------------------------------------------------------------- MATRIX TRIANGULARIZATION BY GAUSSIAN ELIMINATION ------ MODIFICATION FOR COMPLEX MATRICES -------- INPUT.. N = ORDER OF MATRIX. NDIM = DECLARED DIMENSION OF ARRAYS AR AND AI . (AR, AI) = MATRIX TO BE TRIANGULARIZED. OUTPUT.. AR[I][J], I <= J = UPPER TRIANGULAR FACTOR, U ; REAL PART. AI[I][J], I <= J = UPPER TRIANGULAR FACTOR, U ; IMAGINARY PART. AR[I][J], I > J = MULTIPLIERS = LOWER TRIANGULAR FACTOR, I - L ; REAL PART. AI[I][J], I > J = MULTIPLIERS = LOWER TRIANGULAR FACTOR, I - L ; IMAGINARY PART. IP[K], K <= N - 1 = INDEX OF K-TH PIVOT ROW. IP[N - 1] = (-1)**(NUMBER OF INTERCHANGES) OR O . IER = -1 IF MATRIX A IS NONSINGULAR, OR K IF FOUND TO BE SINGULAR AT STAGE K. USE SOLC TO OBTAIN SOLUTION OF LINEAR SYSTEM. IF IP[N - 1] = O, A IS SINGULAR, SOLC WILL DIVIDE BY ZERO. REFERENCE.. C. B. MOLER, ALGORITHM 423, LINEAR EQUATION SOLVER, C.A.C.M. 15 (1972), P. 274. -----------------------------------------------------------------------


solc

public void solc(int N,
                 int NDIM,
                 double[][] AR,
                 double[][] AI,
                 double[] BR,
                 double[] BI,
                 int[] IP)
----------------------------------------------------------------------- SOLUTION OF LINEAR SYSTEM, A * X = B . INPUT.. N = ORDER OF MATRIX. NDIM = DECLARED DIMENSION OF ARRAYS AR AND AI. (AR,AI) = TRIANGULARIZED MATRIX OBTAINED FROM DEC. (BR,BI) = RIGHT HAND SIDE VECTOR. IP = PIVOT VECTOR OBTAINED FROM DEC. DO NOT USE IF DECC HAS SET IER != -1. OUTPUT.. (BR,BI) = SOLUTION VECTOR, X . -----------------------------------------------------------------------