Structure
CSRSparsity_
is data type for handling CSRMatrix_
in EASIFEM.
It is encapsulated inside CSRMatrix_
, and contains only the sparsity pattern not the matrix values, which we can use a single instance of CSRSparsity_
to define several CSRMatrix_
.
The structure is given below.
TYPE :: CSRSparsity_
INTEGER( I4B ) :: nnz = 0
INTEGER( I4B ) :: ncol = 0
INTEGER( I4B ) :: nrow = 0
LOGICAL( LGT ) :: isSorted = .FALSE.
LOGICAL( LGT ) :: isInitiated = .FALSE.
LOGICAL( LGT ) :: isSparsityLock = .FALSE.
INTEGER( I4B ), ALLOCATABLE :: IA( : )
INTEGER( I4B ), ALLOCATABLE :: JA( : )
TYPE( IntVector_ ), ALLOCATABLE :: row( : )
TYPE( DOF_ ) :: dof
END TYPE CSRSparsity_
IA
: size of IA is number of rows in the sparse matrix. It contains indices for accessing the entries inJA
. For example,IA( iRow )
toIA( iRow + 1 ) - 1
are indices of entries of matrix ofiRow
.JA
: size ofJA
isNNZ
.JA
contains the column indices.