OOFEM  2.4
OOFEM.org - Object Oriented Finite Element Solver
oofem::SparseGeneralEigenValueSystemNM Class Referenceabstract

This base class is an abstraction for all numerical methods solving sparse linear system of equations. More...

#include <sparsegeneigenvalsystemnm.h>

+ Inheritance diagram for oofem::SparseGeneralEigenValueSystemNM:
+ Collaboration diagram for oofem::SparseGeneralEigenValueSystemNM:

Public Member Functions

 SparseGeneralEigenValueSystemNM (Domain *d, EngngModel *m)
 Constructor. More...
 
virtual ~SparseGeneralEigenValueSystemNM ()
 Destructor. More...
 
virtual const char * giveClassName () const =0
 
std::string errorInfo (const char *func)
 
virtual NM_Status solve (SparseMtrx &A, SparseMtrx &B, FloatArray &x, FloatMatrix &v, double rtol, int nroot)=0
 Solves the given sparse generalized eigen value system of equations $ Av = x^2 Bv $. More...
 
- Public Member Functions inherited from oofem::NumericalMethod
 NumericalMethod (Domain *d, EngngModel *m)
 Constructor. More...
 
virtual ~NumericalMethod ()
 Destructor. More...
 
EngngModelgiveEngngModel ()
 
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)
 

Additional Inherited Members

- Protected Attributes inherited from oofem::NumericalMethod
Domaindomain
 Pointer to domain. More...
 
EngngModelengngModel
 Pointer to engineering model. More...
 

Detailed Description

This base class is an abstraction for all numerical methods solving sparse linear system of equations.

The purpose of this class is to declare the general interface to all numerical methods solving this kind of problem. This interface allows to use any suitable instance of the Numerical method class to the solve problem, and leave the whole engineering model code, including mapping, unchanged, because all instances of this class provide the common interface.

Definition at line 56 of file sparsegeneigenvalsystemnm.h.

Constructor & Destructor Documentation

oofem::SparseGeneralEigenValueSystemNM::SparseGeneralEigenValueSystemNM ( Domain d,
EngngModel m 
)
inline

Constructor.

Definition at line 60 of file sparsegeneigenvalsystemnm.h.

virtual oofem::SparseGeneralEigenValueSystemNM::~SparseGeneralEigenValueSystemNM ( )
inlinevirtual

Destructor.

Definition at line 62 of file sparsegeneigenvalsystemnm.h.

Member Function Documentation

std :: string oofem::SparseGeneralEigenValueSystemNM::errorInfo ( const char *  func)
inline

Definition at line 65 of file sparsegeneigenvalsystemnm.h.

virtual const char* oofem::SparseGeneralEigenValueSystemNM::giveClassName ( ) const
pure virtual
virtual NM_Status oofem::SparseGeneralEigenValueSystemNM::solve ( SparseMtrx A,
SparseMtrx B,
FloatArray x,
FloatMatrix v,
double  rtol,
int  nroot 
)
pure virtual

Solves the given sparse generalized eigen value system of equations $ Av = x^2 Bv $.

Parameters
Acoefficient matrix.
Bcoefficient matrix.
veigen vector(s).
xeigen value(s).
rtoltolerance
nrootnumber of required eigenvalues.
Returns
NM_Status value.

Implemented in oofem::SubspaceIteration, oofem::InverseIteration, and oofem::SLEPcSolver.


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

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Jan 2 2018 20:07:41 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011