Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ProfileSPDLinDirectBlockSolver Class Reference

#include <ProfileSPDLinDirectBlockSolver.h>

Inheritance diagram for ProfileSPDLinDirectBlockSolver::

ProfileSPDLinSolver LinearSOESolver Solver List of all members.

Public Methods

 ProfileSPDLinDirectBlockSolver (double tol=1.0e-12, int blockSize=4)
virtual ~ProfileSPDLinDirectBlockSolver ()
virtual int solve (void)
virtual int setSize (void)
 virtual int setLinearSOE(LinearSOE &theSOE) =0;. More...

virtual int setProfileSOE (ProfileSPDLinSOE &theSOE)
int sendSelf (int commitTag, Channel &theChannel)
int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)

Protected Attributes

double minDiagTol
int blockSize
int maxColHeight
int size
int* RowTop
double** topRowPtr
double * invD

Detailed Description

A ProfileSPDLinDirectBlockSolver object can be constructed to solve a ProfileSPDLinSOE object. It does this by direct means, using the variation of the cholesky factorization. The matrx is factored one block row at a time using a right-looking approach. No BLAS or LAPACK routines are called for the factorization or subsequent substitution. \

{\bf Interface} \ Constructor \ {ProfileSPDLinDirectBlockSolver();} \ \ Destructor \ {\form#25ProfileSPDLinDirectySolver();}\\ \ Public Methods \ {int solve(void);} \ {int setSize(void);} \ {int sendSelf(int commitTag, Channel &theChannel);}\ {int recvSelf(int commitTag, Channel &theChannel, FEM\_ObjectBroker &theBroker);}\

{\bf Constructor} \ {ProfileSPDLinDierctBlockSolver();} \ A unique class tag (defined in classTags.h\form#24) is passed to the ProfileSPDLinSolver constructor. \

{\bf Destructor} \ {\form#25ProfileSPDLinDierctBlockSolver();}\\ Does nothing. \

{\bf Public Member Functions } \ {int solve(void);} \ The solver first copies the B vector into X. FILL IN The solve process changes and . \

{int setSize(void);} \ Does nothing but return . \

{int sendSelf(int commitTag, Channel &theChannel);} \ Does nothing but return . \

{int recvSelf(int commitTag, Channel &theChannel, FEM\_ObjectBroker &theBroker);} \ Does nothing but return . \

Definition at line 101 of file ProfileSPDLinDirectBlockSolver.h.


Constructor & Destructor Documentation

ProfileSPDLinDirectBlockSolver::ProfileSPDLinDirectBlockSolver ( double tol = 1.0e-12,
int blockSize = 4 )
 

Definition at line 47 of file ProfileSPDLinDirectBlockSolver.cpp.

ProfileSPDLinDirectBlockSolver::~ProfileSPDLinDirectBlockSolver ( ) [virtual]
 

Definition at line 56 of file ProfileSPDLinDirectBlockSolver.cpp.


Member Function Documentation

int ProfileSPDLinDirectBlockSolver::recvSelf ( int commitTag,
Channel & theChannel,
FEM_ObjectBroker & theBroker )
 

Definition at line 360 of file ProfileSPDLinDirectBlockSolver.cpp.

int ProfileSPDLinDirectBlockSolver::sendSelf ( int commitTag,
Channel & theChannel )
 

Definition at line 351 of file ProfileSPDLinDirectBlockSolver.cpp.

int ProfileSPDLinDirectBlockSolver::setProfileSOE ( ProfileSPDLinSOE & theSOE ) [virtual]
 

Definition at line 338 of file ProfileSPDLinDirectBlockSolver.cpp.

int ProfileSPDLinDirectBlockSolver::setSize ( void ) [virtual]
 

virtual int setLinearSOE(LinearSOE &theSOE) =0;.

Reimplemented from LinearSOESolver.

Definition at line 64 of file ProfileSPDLinDirectBlockSolver.cpp.

int ProfileSPDLinDirectBlockSolver::solve ( void ) [virtual]
 

Reimplemented from ProfileSPDLinSolver.

Definition at line 120 of file ProfileSPDLinDirectBlockSolver.cpp.


Member Data Documentation

int * ProfileSPDLinDirectBlockSolver::RowTop [protected]
 

Definition at line 134 of file ProfileSPDLinDirectBlockSolver.h.

int ProfileSPDLinDirectBlockSolver::blockSize [protected]
 

Definition at line 128 of file ProfileSPDLinDirectBlockSolver.h.

double * ProfileSPDLinDirectBlockSolver::invD [protected]
 

Definition at line 136 of file ProfileSPDLinDirectBlockSolver.h.

int ProfileSPDLinDirectBlockSolver::maxColHeight [protected]
 

Definition at line 130 of file ProfileSPDLinDirectBlockSolver.h.

double ProfileSPDLinDirectBlockSolver::minDiagTol [protected]
 

Definition at line 126 of file ProfileSPDLinDirectBlockSolver.h.

int ProfileSPDLinDirectBlockSolver::size [protected]
 

Definition at line 132 of file ProfileSPDLinDirectBlockSolver.h.

double ** ProfileSPDLinDirectBlockSolver::topRowPtr [protected]
 

Definition at line 136 of file ProfileSPDLinDirectBlockSolver.h.


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