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

FullGenLinLapackSolver Class Reference

#include <FullGenLinLapackSolver.h>

Inheritance diagram for FullGenLinLapackSolver::

FullGenLinSolver LinearSOESolver Solver List of all members.

Public Methods

 FullGenLinLapackSolver ()
 ~FullGenLinLapackSolver ()
int solve (void)
int setSize (void)
 virtual int setLinearSOE(LinearSOE &theSOE) =0;. More...

int sendSelf (int commitTag, Channel &theChannel)
int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)

Detailed Description

A FullGenLinLapackSolver object can be constructed to solve a FullGenLinSOE object. It obtains the solution by making calls on the the LAPACK library. The class is defined to be a friend of the FullGenLinSOE class (see FullGenLinSOE.h\form#24). \

{\bf Interface} \ Constructor \ {FullGenLinLapackSolver();} \ \ Destructor \ {\form#25FullGenLinLapackSolver();}\\ \ 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} \ {FullGenLinLapackSolver();} \ A unique class tag (defined in classTags.h\form#24) is passed to the FullGenLinSolver constructor. Sets the size of {iPiv} to , {iPiv} being an integer array needed by the LAPACK routines. \

{\bf Destructor} \ {\form#25FullGenLinLapackSolver();}\\ Invokes delete on {iPiv} to free the memory it was allocated. \

{\bf Public Methods } \ {int solve(void);} \ First copies into and then solves the FullGenLinSOE system it is associated with (pointer kept by parent class) by calling the LAPACK routines {dgesv()}, if the system is marked as not having been factored, or {dgetrs()}, if system is marked as having been factored. If the solution is successfully obtained, i.e. the LAPACK routines return in the INFO argument, it marks the system has having been factored and returns , otherwise it prints a warning message and returns INFO. The solve process changes and . \

{int setSize(void);} \ Is used to construct a 1d integer array, {iPiv} that is needed by the LAPACK solvers. It checks to see if current size of {iPiv} is large enough, if not it deletes the cold and creates a larger array. Returns if sucessfull, prints a warning message and returns a if not enough memory is available for this new array. \

{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 104 of file FullGenLinLapackSolver.h.


Constructor & Destructor Documentation

FullGenLinLapackSolver::FullGenLinLapackSolver ( )
 

Definition at line 45 of file FullGenLinLapackSolver.cpp.

FullGenLinLapackSolver::~FullGenLinLapackSolver ( )
 

Definition at line 51 of file FullGenLinLapackSolver.cpp.


Member Function Documentation

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

Definition at line 177 of file FullGenLinLapackSolver.cpp.

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

Definition at line 168 of file FullGenLinLapackSolver.cpp.

int FullGenLinLapackSolver::setSize ( void ) [virtual]
 

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

Reimplemented from LinearSOESolver.

Definition at line 141 of file FullGenLinLapackSolver.cpp.

int FullGenLinLapackSolver::solve ( void ) [virtual]
 

Reimplemented from LinearSOESolver.

Definition at line 73 of file FullGenLinLapackSolver.cpp.


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