Fabric class for JdbSym eigenvalue solver for a constrained problem. More...
#include <jdbsymFabric.hh>


Public Member Functions | |
| JdbSymFabric (Real tol, uint maxit=150, Real tau=0.0, uint jdtype=1, uint kmax=1, concepts::SolverFabric< Real > *fabric=0, const concepts::Array< concepts::Vector< Real > * > *start=0) | |
| Constructor. | |
| virtual EigenSolver< F > & | operator() (concepts::Operator< F > &stiff, concepts::Operator< Real > &mass)=0 |
Creates an eigenvalue solver which solves the abstract eigenvalue problem defined by stiff and mass. | |
| virtual JdbSym & | operator() (concepts::Operator< Real > &stiff, concepts::Operator< Real > &mass) |
| virtual | ~JdbSymFabric () |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Attributes | |
| concepts::SolverFabric< Real > * | fabric_ |
| uint | jdtype_ |
| uint | kmax_ |
| uint | maxit_ |
| std::auto_ptr< JdbSym > | solver_ |
| Real eigenvalue solver. | |
| const concepts::Array < concepts::Vector< Real > * > * | start_ |
| Real | tau_ |
| Real | tol_ |
Fabric class for JdbSym eigenvalue solver for a constrained problem.
Definition at line 20 of file jdbsymFabric.hh.
| eigensolver::JdbSymFabric::JdbSymFabric | ( | Real | tol, |
| uint | maxit = 150, |
||
| Real | tau = 0.0, |
||
| uint | jdtype = 1, |
||
| uint | kmax = 1, |
||
| concepts::SolverFabric< Real > * | fabric = 0, |
||
| const concepts::Array< concepts::Vector< Real > * > * | start = 0 |
||
| ) | [inline] |
Constructor.
| fabric | Solver fabric for a linear solver (preconditioner for the shifted stiffness matrix) |
| tol | Convergence tolerance for the eigenpairs. For a pair convergence is defined by |
| tau | Target value of Jacobi-Davidson algorithm. The code will find the kmax eigenvalues closest to tau. |
| jdtype | Type of solver required. An older solver and a newer solver are possible to use. |
| kmax | Number of eigenpairs to be computed |
| start | Starting vectors. Used to build the initial search subspace |
Definition at line 36 of file jdbsymFabric.hh.
| virtual eigensolver::JdbSymFabric::~JdbSymFabric | ( | ) | [virtual] |
| virtual std::ostream& eigensolver::JdbSymFabric::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
| virtual EigenSolver<F>& eigensolver::SolverFabric< F >::operator() | ( | concepts::Operator< F > & | stiff, |
| concepts::Operator< Real > & | mass | ||
| ) | [pure virtual, inherited] |
Creates an eigenvalue solver which solves the abstract eigenvalue problem defined by stiff and mass.
This fabric should only by used once as subsequent uses would invalidate older solvers.
Implemented in eigensolver::ArPackFabric.
| virtual JdbSym& eigensolver::JdbSymFabric::operator() | ( | concepts::Operator< Real > & | stiff, |
| concepts::Operator< Real > & | mass | ||
| ) | [virtual] |
concepts::SolverFabric<Real>* eigensolver::JdbSymFabric::fabric_ [private] |
Definition at line 52 of file jdbsymFabric.hh.
uint eigensolver::JdbSymFabric::jdtype_ [private] |
Definition at line 51 of file jdbsymFabric.hh.
uint eigensolver::JdbSymFabric::kmax_ [private] |
Definition at line 51 of file jdbsymFabric.hh.
uint eigensolver::JdbSymFabric::maxit_ [private] |
Definition at line 51 of file jdbsymFabric.hh.
std::auto_ptr<JdbSym> eigensolver::JdbSymFabric::solver_ [private] |
Real eigenvalue solver.
Definition at line 49 of file jdbsymFabric.hh.
const concepts::Array<concepts::Vector<Real>*>* eigensolver::JdbSymFabric::start_ [private] |
Definition at line 53 of file jdbsymFabric.hh.
Real eigensolver::JdbSymFabric::tau_ [private] |
Definition at line 50 of file jdbsymFabric.hh.
Real eigensolver::JdbSymFabric::tol_ [private] |
Definition at line 50 of file jdbsymFabric.hh.