Parallel Vectorize Sparse Solver (PVSS)

 

Calling PVSS Library

 

PVSS Library consist of Five Calls:

1. VSS_SET (Setup the Data Structure and Reordering)

CALL VSS_SET(NEQ,NCOEFF,DIAG,RHS,AMAT,KPT,KIND,ANS,J_POINTER)

2. VSS_MEM      (Allocate memory)

CALL VSS_MEM(NEQ,NCOEFF,DIAG,RHS,AMAT,KPT,KIND,ANS,J_POINTER)

3. VSS (Factorize The matrix)

CALL VSS (NEQ,NCOEFF,DIAG,RHS,AMAT,KPT,KIND,ANS,J_POINTER)

4. VSS2 (Performs Forward/Backward Substitution)
   Can be called many times for each R.H.S.

CALL VSS2 (NEQ,NCOEFF,DIAG,RHS,AMAT,KPT,KIND,ANS,J_POINTER)

5. VSS_FREE will free all memory used by the solver.
   Must be called before calling setup again.

CALL VSS_FREE (NEQ,NCOEFF,J_POINTER)


     NEQ        [I]   :  number of equations
     NCOEFF     [I]   :  number of non-zero coefficients 
     DIAG       [I]   :  diagonal terms  [size NEQ]
     KPT        [I]   :  number of (off- diagonal) coefficients in each row  [size NEQ]
     KIND       [I]   :  column location of each coefficient  [size NCOEFF]
     AMAT       [I]   :  (off-diagonal) coefficients in row format  [size NCOEFF]
     RHS        [I]   :  Right-Hand Side (Load vector)  [size NEQ]
     ANS        [O]   :  Left-Hand Side (Solution)  [size NEQ]
     J_POINTER  [-]   :  WORKING VECTOR SIZE (100,2)

[I] Denotes Input
[O] Denotes Output
   Example:
                1    2    3    4     5     6

          1  | 100   1    2                5  |  | X1 |     | 201 |
          2  |     200    6    7           9  |  | X2 |     | 202 |
          3  |          300   10    11    12  |  | X3 |     | 203 |
      A = 4  |                400   13    14  |  | X4 |  =  | 204 |
          5  |                     500    15  |  | X5 |     | 205 |
          6  |                           600  |  | X6 |     | 206 |

     NUMBER OF EQUATIONS    =  6

     NUMBER OF COEFFICIENTS = 12

     NEQ       = 6
     NCOEFF    = 12
     DIAG      = { 100, 200, 300, 400, 500, 600}
     KPT       = { 3, 3, 3, 2, 1, 0}
     KIND      = { 2, 3, 6,  3, 4, 6,  4, 5, 6,  5, 6,  6}
     AMAT      = { 1, 2, 5,  6, 7, 9, 10,11,12, 13,14, 15}
     RHS       = { 201, 202, 203, 204, 205, 206}

 

PVSS Page