OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
#include <slepcsolver.h>
Public Member Functions | |
SLEPcSolver (Domain *d, EngngModel *m) | |
virtual | ~SLEPcSolver () |
virtual NM_Status | solve (SparseMtrx &a, SparseMtrx &b, FloatArray &v, FloatMatrix &x, double rtol, int nroot) |
Solves the given sparse generalized eigen value system of equations . More... | |
virtual const char * | giveClassName () const |
Public Member Functions inherited from oofem::SparseGeneralEigenValueSystemNM | |
SparseGeneralEigenValueSystemNM (Domain *d, EngngModel *m) | |
Constructor. More... | |
virtual | ~SparseGeneralEigenValueSystemNM () |
Destructor. More... | |
std::string | errorInfo (const char *func) |
Public Member Functions inherited from oofem::NumericalMethod | |
NumericalMethod (Domain *d, EngngModel *m) | |
Constructor. More... | |
virtual | ~NumericalMethod () |
Destructor. More... | |
EngngModel * | giveEngngModel () |
virtual IRResultType | initializeFrom (InputRecord *ir) |
virtual void | reinitialize () |
Reinitializes the receiver. More... | |
virtual void | setDomain (Domain *d) |
virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Private Attributes | |
PetscSparseMtrx * | A |
PetscSparseMtrx * | B |
EPS | eps |
Eigenvalue solver context. More... | |
bool | epsInit |
Flag if context initialized. More... | |
Additional Inherited Members | |
Protected Attributes inherited from oofem::NumericalMethod | |
Domain * | domain |
Pointer to domain. More... | |
EngngModel * | engngModel |
Pointer to engineering model. More... | |
Definition at line 52 of file slepcsolver.h.
oofem::SLEPcSolver::SLEPcSolver | ( | Domain * | d, |
EngngModel * | m | ||
) |
Definition at line 53 of file slepcsolver.C.
|
virtual |
Definition at line 60 of file slepcsolver.C.
|
inlinevirtual |
Implements oofem::SparseGeneralEigenValueSystemNM.
Definition at line 67 of file slepcsolver.h.
|
virtual |
Solves the given sparse generalized eigen value system of equations .
A | coefficient matrix. |
B | coefficient matrix. |
v | eigen vector(s). |
x | eigen value(s). |
rtol | tolerance |
nroot | number of required eigenvalues. |
Implements oofem::SparseGeneralEigenValueSystemNM.
Definition at line 68 of file slepcsolver.C.
References A, oofem::FloatArray::at(), oofem::FloatMatrix::at(), B, oofem::NumericalMethod::engngModel, eps, epsInit, oofem::Timer::getUtime(), oofem::PetscSparseMtrx::giveDomainIndex(), oofem::PetscSparseMtrx::giveMtrx(), oofem::SparseMtrx::giveNumberOfColumns(), oofem::SparseMtrx::giveNumberOfRows(), oofem::EngngModel::giveParallelComm(), oofem::EngngModel::giveParallelContext(), NM_Success, OOFEM_ERROR, OOFEM_LOG_INFO, oofem::FloatArray::resize(), oofem::FloatMatrix::resize(), oofem::PetscSparseMtrx::scatterG2L(), oofem::Timer::startTimer(), and oofem::Timer::stopTimer().
|
private |
Definition at line 55 of file slepcsolver.h.
Referenced by SLEPcSolver(), and solve().
|
private |
Definition at line 56 of file slepcsolver.h.
Referenced by SLEPcSolver(), and solve().
|
private |
Eigenvalue solver context.
Definition at line 58 of file slepcsolver.h.
Referenced by solve(), and ~SLEPcSolver().
|
private |
Flag if context initialized.
Definition at line 60 of file slepcsolver.h.
Referenced by SLEPcSolver(), solve(), and ~SLEPcSolver().