CHROMA
|
Internal Overlap-pole operator. More...
#include <lg5eps_w.h>
Public Types | |
typedef LatticeFermion | T |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
lg5eps (const UnprecWilsonTypeFermAct< T, P, Q > &S_aux, Handle< FermState< T, P, Q > > state, int _numroot, const Real &_constP, const multi1d< Real > &_resP, const multi1d< Real > &_rootQ, int _NEig, const multi1d< Real > &_EigValFunc, const multi1d< LatticeFermion > &_EigVec, int _MaxCG, const Real &_RsdCG, const int _ReorthFreq) | |
Creation routine. More... | |
~lg5eps () | |
Destructor is automatic. More... | |
const Subset & | subset () const |
Only defined on the entire lattice. More... | |
void | operator() (LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign) const |
Apply the operator onto a source std::vector. More... | |
void | operator() (LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign, Real epsilon) const |
Apply the operator onto a source std::vector. Here epsilon is the. More... | |
![]() | |
virtual | ~LinearOperator () |
Virtual destructor to help with cleanup;. More... | |
virtual unsigned long | nFlops () const |
Private Attributes | |
Handle< const LinearOperator< LatticeFermion > > | M |
Handle< const LinearOperator< LatticeFermion > > | MdagM |
int | numroot |
const Real | constP |
const multi1d< Real > | resP |
const multi1d< Real > | rootQ |
const multi1d< LatticeFermion > | EigVec |
const multi1d< Real > | EigValFunc |
int | NEig |
int | MaxCG |
const Real | RsdCG |
const int | ReorthFreq |
Internal Overlap-pole operator.
This routine is specific to Wilson fermions!
Chi = gamma_5 * B . Psi where B is the pole approx. to eps(H(m))
Internally, it computes Chi = gamma_5 * B . Psi and then rescales at the end to the correct normalization
NOTE: B is hermitian, so
(1 + gamma_5 * B)^dag = (1 + B * gamma_5) = gamma_5 * (1 + gamma_5 * B) * gamma_5
Definition at line 36 of file lg5eps_w.h.
typedef multi1d<LatticeColorMatrix> Chroma::lg5eps::P |
Definition at line 41 of file lg5eps_w.h.
typedef multi1d<LatticeColorMatrix> Chroma::lg5eps::Q |
Definition at line 42 of file lg5eps_w.h.
typedef LatticeFermion Chroma::lg5eps::T |
Definition at line 40 of file lg5eps_w.h.
|
inline |
Creation routine.
_MdagM | M^dag.M of underlying linop M (Read) |
_M | Underlying linop M (Read) |
_numroot | number of poles in expansion (Read) |
_constP | constant coeff (Read) |
_resP | numerator (Read) |
_rootQ | denom (Read) |
_OperEigVec | eigenvectors (Read) |
_EigValFunc | eigenvalues (Read) |
_NEig | number of eigenvalues (Read) |
_MaxCG | MaxCG inner CG (Read) |
_RsdCG | residual for inner CG (Read) |
Definition at line 58 of file lg5eps_w.h.
|
inline |
Destructor is automatic.
Definition at line 76 of file lg5eps_w.h.
|
inlinevirtual |
Only defined on the entire lattice.
Implements Chroma::LinearOperator< LatticeFermion >.
Definition at line 79 of file lg5eps_w.h.
|
private |
Definition at line 94 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 98 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 97 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 89 of file lg5eps_w.h.
|
private |
Definition at line 100 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 90 of file lg5eps_w.h.
|
private |
Definition at line 99 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 93 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 102 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 95 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 96 of file lg5eps_w.h.
Referenced by operator()().
|
private |
Definition at line 101 of file lg5eps_w.h.
Referenced by operator()().