SparseGridMtx Class Reference

Summary description for SparseGridMtx. More...

#include <SparseGridMtx.h>

Inheritance diagram for SparseGridMtx:
TraceableMatrix ILargeMatrix IMatrix SparseGridMtxLDL SparseGridMtxLL SparseGridMtxLU

List of all members.

Public Member Functions

void AlocateMemoryByPattern (IConectMatrix *bskl)
long Blocks ()
long BlockSize ()
void ComputeBlocks ()
virtual void Factorize ()=0
double GetWaste ()
virtual void LoadMatrixNumbers (SparseMatrixF &sm)=0
virtual void MultiplyByVector (const LargeVectorAttach &x, LargeVectorAttach &y)
long N () const
long N_blocks ()
long No_Multiplications ()
long Nonzeros () const
virtual void SchurComplementFactorization (int fixed_blocks)=0
virtual void Solve (double *b, double *x)=0
virtual void SolveA11 (double *x, long fixed_blocks)=0
virtual void SolveLV (const LargeVector &b, LargeVector &x)=0
 SparseGridMtx (SparseMatrixF &sm, BYTE block_size, Ordering *block_order, Ordering *node_order, MathTracer *eMT)
 SparseGridMtx (SparseMatrixF &sm, BYTE block_size, Ordering *block_order, MathTracer *eMT)
virtual void Sub_A11inv_A12 (double *x, long fixed_blocks)=0
virtual void Sub_A21_A11inv (double *x, long fixed_blocks)=0
virtual void WriteCondensedMatrixA22 (double *a, Ordering *mcn, IntArrayList *lncn)=0
void WriteStatistics (long no_init_blocks, long no_nonzeros)
virtual ~SparseGridMtx ()

Public Attributes

Orderingblock_order
long block_size
long block_storage
DenseMatrixArithmeticsBlockArith
SparseGridColumn ** Columns
long columns_data_length
Orderingnode_order

Protected Attributes

long blocks
long n
long n_blocks
long no_multiplications
long noDummyDOFs
long nonzeros

Detailed Description

Summary description for SparseGridMtx.

Definition at line 16 of file SparseGridMtx.h.


Constructor & Destructor Documentation

SparseGridMtx ( SparseMatrixF sm,
BYTE  block_size,
Ordering block_order,
MathTracer eMT 
)
SparseGridMtx ( SparseMatrixF sm,
BYTE  block_size,
Ordering block_order,
Ordering node_order,
MathTracer eMT 
)
~SparseGridMtx (  )  [virtual]

Definition at line 64 of file SparseGridMtx.cpp.

References block_order, BlockArith, Columns, and n_blocks.


Member Function Documentation

void AlocateMemoryByPattern ( IConectMatrix bskl  ) 
long Blocks (  )  [inline]

Definition at line 62 of file SparseGridMtx.h.

References blocks.

Referenced by WriteStatistics().

long BlockSize (  )  [inline]
void ComputeBlocks (  ) 
virtual void Factorize (  )  [pure virtual]

Implements ILargeMatrix.

Implemented in SparseGridMtxLDL, SparseGridMtxLL, and SparseGridMtxLU.

double GetWaste (  ) 

Definition at line 91 of file SparseGridMtx.cpp.

References block_storage, blocks, and nonzeros.

virtual void LoadMatrixNumbers ( SparseMatrixF sm  )  [pure virtual]

Implements ILargeMatrix.

Implemented in SparseGridMtxLDL, SparseGridMtxLL, and SparseGridMtxLU.

void MultiplyByVector ( const LargeVectorAttach x,
LargeVectorAttach y 
) [virtual]

Implements ILargeMatrix.

Reimplemented in SparseGridMtxLDL, SparseGridMtxLL, and SparseGridMtxLU.

Definition at line 112 of file SparseGridMtx.cpp.

long N (  )  const [inline, virtual]
long N_blocks (  )  [inline]

Definition at line 66 of file SparseGridMtx.h.

References n_blocks.

long No_Multiplications (  )  [inline, virtual]

Implements ILargeMatrix.

Definition at line 69 of file SparseGridMtx.h.

References no_multiplications.

long Nonzeros (  )  const [inline, virtual]

Implements IMatrix.

Definition at line 59 of file SparseGridMtx.h.

References columns_data_length.

Referenced by WriteStatistics().

virtual void SchurComplementFactorization ( int  fixed_blocks  )  [pure virtual]
virtual void Solve ( double *  b,
double *  x 
) [pure virtual]

Implements ILargeMatrix.

Implemented in SparseGridMtxLDL, SparseGridMtxLL, and SparseGridMtxLU.

virtual void SolveA11 ( double *  x,
long  fixed_blocks 
) [pure virtual]
virtual void SolveLV ( const LargeVector b,
LargeVector x 
) [pure virtual]

Implements ILargeMatrix.

Implemented in SparseGridMtxLDL, SparseGridMtxLL, and SparseGridMtxLU.

virtual void Sub_A11inv_A12 ( double *  x,
long  fixed_blocks 
) [pure virtual]
virtual void Sub_A21_A11inv ( double *  x,
long  fixed_blocks 
) [pure virtual]
virtual void WriteCondensedMatrixA22 ( double *  a,
Ordering mcn,
IntArrayList lncn 
) [pure virtual]
void WriteStatistics ( long  no_init_blocks,
long  no_nonzeros 
) [virtual]

Member Data Documentation

long block_size
long blocks [protected]

Definition at line 52 of file SparseGridMtx.h.

Referenced by Blocks(), ComputeBlocks(), and GetWaste().

long n [protected]
long n_blocks [protected]
long no_multiplications [protected]
long noDummyDOFs [protected]
long nonzeros [protected]

The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2