You are here:
Concepts
>
Concepts Web
>
Class documentation
Class documentation of Concepts
Loading...
Searching...
No Matches
eigensolver
jdbsym.hh
Go to the documentation of this file.
1
6
#ifndef jdbsym_hh
7
#define jdbsym_hh
8
9
#include "
eigens.hh
"
10
11
namespace
concepts
{
12
// forward declaration
13
template
<
typename
F>
14
class
Operator;
15
template
<
typename
F>
16
class
SolverFabric;
17
}
// namespace concepts
18
19
namespace
eigensolver
{
20
21
using
concepts::Real
;
22
23
// **************************************************************** JdbSym **
24
48
class
JdbSym
:
public
EigenSolver
<Real> {
49
public
:
76
JdbSym
(
concepts::Operator<Real>
& stiff,
concepts::Operator<Real>
& mass,
77
Real tol, uint maxit = 150, Real tau = 0.0, uint jdtype = 1,
78
uint kmax = 1,
concepts::SolverFabric<Real>
* fabric = 0,
79
const
concepts::Array
<
concepts::Vector<Real>
*>* start = 0);
80
virtual
~JdbSym
();
81
virtual
const
concepts::Array<Real>
&
getEV
();
82
virtual
const
concepts::Array<concepts::Vector<Real>
*>& getEF();
83
virtual
uint
iterations
()
const
{
return
(uint)it_; }
84
virtual
uint
converged
()
const
{
return
(uint)k_conv_; }
85
protected
:
86
virtual
std::ostream&
info
(std::ostream& os)
const
;
87
private
:
91
void
compute_();
93
bool
computed_;
95
concepts::Operator<Real>
& stiff_;
99
concepts::Operator<Real>
& mass_;
101
Real tol_;
103
uint maxit_;
105
Real tau_;
107
const
uint jdtype_;
109
uint kmax_;
111
int
it_;
113
int
k_conv_;
114
116
concepts::Array<Real>
lambda_;
118
concepts::Array<Real>
eigenvectors_;
120
concepts::Array<concepts::Vector<Real>
*> ev_;
121
123
uint stiffCounter_, massCounter_;
124
125
concepts::SolverFabric<Real>
* fabric_;
126
const
concepts::Array<concepts::Vector<Real>
*>* start_;
127
129
static
int
jdbsymLock_;
130
};
131
132
}
133
134
#endif
// jdbsym_hh
concepts::Array
Definition
array.hh:46
concepts::Operator
Definition
compositions.hh:42
concepts::SolverFabric
Definition
solverFabric.hh:22
concepts::Vector
Definition
vector.hh:39
eigensolver::EigenSolver
Definition
eigens.hh:23
eigensolver::JdbSym
Definition
jdbsym.hh:48
eigensolver::JdbSym::converged
virtual uint converged() const
Returns the number of converged eigen pairs.
Definition
jdbsym.hh:84
eigensolver::JdbSym::JdbSym
JdbSym(concepts::Operator< Real > &stiff, concepts::Operator< Real > &mass, 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)
eigensolver::JdbSym::iterations
virtual uint iterations() const
Returns the number of iterations.
Definition
jdbsym.hh:83
eigensolver::JdbSym::info
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
eigensolver::JdbSym::getEV
virtual const concepts::Array< Real > & getEV()
eigens.hh
concepts
Definition
pml_formula.h:16
concepts::Real
double Real
Definition
typedefs.hh:39
eigensolver
Definition
eigensolver.hh:33
Generated on Wed Sep 13 2023 21:06:18 for Concepts by
1.9.8