CHROMA
|
#include <klein_gordon_linop_s.h>
Public Types | |
typedef LatticeStaggeredFermion | T |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
KleinGordonLinOp () | |
Partial constructor - Must use create later. More... | |
KleinGordonLinOp (Handle< FermState< T, P, Q > > state_, const Real &Mass_, const AnisoParam_t &aniso) | |
Full constructor. More... | |
void | create (Handle< FermState< T, P, Q > > fs, const Real &Mass_, const AnisoParam_t &aniso) |
Creation routine with Anisotropy. More... | |
~KleinGordonLinOp () | |
Destructor is automatic. More... | |
const FermBC< T, P, Q > & | getFermBC () const |
Return the fermion BC object for this linear operator. More... | |
void | operator() (T &chi, const T &psi, enum PlusMinus isign) const |
Apply the operator onto a source std::vector. More... | |
void | deriv (multi1d< LatticeColorMatrix > &ds_u, const T &chi, const T &psi, enum PlusMinus isign) const |
Derivative of unpreconditioned operator. More... | |
unsigned long | nFlops () const |
Return flops performed by the operator() More... | |
Public Member Functions inherited from Chroma::UnprecLinearOperator< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~UnprecLinearOperator () |
Virtual destructor to help with cleanup;. More... | |
const Subset & | subset () const |
Only defined on the entire lattice. More... | |
Public Member Functions inherited from Chroma::DiffLinearOperator< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~DiffLinearOperator () |
Virtual destructor to help with cleanup;. More... | |
virtual void | deriv (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign, const Real &epsilon) const |
Apply the derivative of the operator onto a source std::vector to some precision. More... | |
virtual void | derivMultipole (multi1d< LatticeColorMatrix > &ds_u, const multi1d< LatticeStaggeredFermion > &chi, const multi1d< LatticeStaggeredFermion > &psi, enum PlusMinus isign) const |
Return the force for multiple poles. More... | |
Public Member Functions inherited from Chroma::LinearOperator< T > | |
virtual | ~LinearOperator () |
Virtual destructor to help with cleanup;. More... | |
virtual void | operator() (T &chi, const T &psi, enum PlusMinus isign) const =0 |
Apply the operator onto a source std::vector. More... | |
virtual void | operator() (T &chi, const T &psi, enum PlusMinus isign, Real epsilon) const |
Apply the operator onto a source std::vector to some precision. More... | |
Private Attributes | |
Real | fact |
Real | Mass |
AnisoParam_t | anisoParam |
Handle< FermBC< T, P, Q > > | fbc |
multi1d< LatticeColorMatrix > | u |
Definition at line 18 of file klein_gordon_linop_s.h.
typedef multi1d<LatticeColorMatrix> Chroma::KleinGordonLinOp::P |
Definition at line 24 of file klein_gordon_linop_s.h.
typedef multi1d<LatticeColorMatrix> Chroma::KleinGordonLinOp::Q |
Definition at line 25 of file klein_gordon_linop_s.h.
typedef LatticeStaggeredFermion Chroma::KleinGordonLinOp::T |
Definition at line 23 of file klein_gordon_linop_s.h.
|
inline |
Partial constructor - Must use create later.
Definition at line 28 of file klein_gordon_linop_s.h.
|
inline |
Destructor is automatic.
Definition at line 41 of file klein_gordon_linop_s.h.
void Chroma::KleinGordonLinOp::create | ( | Handle< FermState< T, P, Q > > | fs, |
const Real & | Mass_, | ||
const AnisoParam_t & | aniso | ||
) |
Creation routine with Anisotropy.
Definition at line 20 of file klein_gordon_linop_s.cc.
References Chroma::AnisoParam_t::anisoP, anisoParam, Chroma::END_CODE(), fact, fbc, Mass, mu, Nd, Chroma::AnisoParam_t::nu, Chroma::START_CODE(), Chroma::state, Chroma::AnisoParam_t::t_dir, u, and Chroma::AnisoParam_t::xi_0.
Referenced by KleinGordonLinOp().
|
virtual |
Derivative of unpreconditioned operator.
Reimplemented from Chroma::DiffLinearOperator< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 86 of file klein_gordon_linop_s.cc.
References Chroma::AnisoParam_t::anisoP, anisoParam, Chroma::chi(), Chroma::END_CODE(), FORWARD, getFermBC(), Chroma::isign, Chroma::MINUS, mu, Nd, Chroma::AnisoParam_t::nu, Chroma::PLUS, Chroma::psi, Chroma::QDP_error_exit(), Chroma::START_CODE(), Chroma::AnisoParam_t::t_dir, and Chroma::AnisoParam_t::xi_0.
Return the fermion BC object for this linear operator.
Definition at line 44 of file klein_gordon_linop_s.h.
References fbc.
Referenced by deriv(), and operator()().
|
virtual |
Return flops performed by the operator()
Reimplemented from Chroma::LinearOperator< T >.
Definition at line 143 of file klein_gordon_linop_s.cc.
Apply the operator onto a source std::vector.
Definition at line 60 of file klein_gordon_linop_s.cc.
References BACKWARD, Chroma::chi(), Chroma::END_CODE(), fact, FORWARD, getFermBC(), mu, Nd, Chroma::psi, Chroma::START_CODE(), Chroma::tmp, u, and Chroma::zero.
|
private |
Definition at line 60 of file klein_gordon_linop_s.h.
|
private |
Definition at line 58 of file klein_gordon_linop_s.h.
Referenced by create(), and operator()().
Definition at line 61 of file klein_gordon_linop_s.h.
Referenced by create(), and getFermBC().
|
private |
Definition at line 59 of file klein_gordon_linop_s.h.
Referenced by create().
|
private |
Definition at line 62 of file klein_gordon_linop_s.h.
Referenced by create(), and operator()().