CHROMA
|
#include <asqtad_linop_s.h>
Public Types | |
typedef LatticeStaggeredFermion | T |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
AsqtadLinOp () | |
Partial constructor - Must use create later. More... | |
AsqtadLinOp (Handle< AsqtadConnectStateBase > state_, const Real &Mass_) | |
Full constructor. More... | |
void | create (Handle< AsqtadConnectStateBase > state_, const Real &Mass_) |
Creation routine. More... | |
~AsqtadLinOp () | |
Destructor is automatic. More... | |
const FermBC< T, P, Q > & | getFermBC () const |
void | evenEvenLinOp (LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the even-even block onto a source std::vector. More... | |
void | evenOddLinOp (LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the even-odd block onto a source std::vector. More... | |
void | oddEvenLinOp (LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the odd-even block onto a source std::vector. More... | |
void | oddOddLinOp (LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the odd-odd block onto a source std::vector. More... | |
unsigned long | nFlops () const |
Return flops performed by the operator() More... | |
Public Member Functions inherited from Chroma::EvenOddLinearOperator< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~EvenOddLinearOperator () |
Virtual destructor to help with cleanup;. More... | |
const Subset & | subset () const |
Only defined on the even lattice. More... | |
virtual void | operator() (LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the operator onto a source std::vector. More... | |
virtual void | derivEvenEvenLinOp (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the even-even block onto a source std::vector. More... | |
virtual void | derivEvenOddLinOp (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the even-odd block onto a source std::vector. More... | |
virtual void | derivOddEvenLinOp (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the odd-even block onto a source std::vector. More... | |
virtual void | derivOddOddLinOp (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the the odd-odd block onto a source std::vector. More... | |
virtual void | deriv (multi1d< LatticeColorMatrix > &ds_u, const LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const |
Apply the operator onto a source std::vector. More... | |
virtual unsigned long | evenEvenNFlops () const |
Return flops performed by the evenEvenLinOp. More... | |
virtual unsigned long | evenOddNFlops () const |
Return flops performed by the evenOddLinOp. More... | |
virtual unsigned long | oddEvenNFlops () const |
Return flops performed by the oddEvenLinOp. More... | |
virtual unsigned long | oddOddNFlops () const |
Return flops performed by the oddOddLinOp. 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 | Mass |
AsqtadDslash | D |
Definition at line 18 of file asqtad_linop_s.h.
typedef multi1d<LatticeColorMatrix> Chroma::AsqtadLinOp::P |
Definition at line 24 of file asqtad_linop_s.h.
typedef multi1d<LatticeColorMatrix> Chroma::AsqtadLinOp::Q |
Definition at line 25 of file asqtad_linop_s.h.
typedef LatticeStaggeredFermion Chroma::AsqtadLinOp::T |
Definition at line 23 of file asqtad_linop_s.h.
|
inline |
Partial constructor - Must use create later.
Definition at line 28 of file asqtad_linop_s.h.
|
inline |
|
inline |
Destructor is automatic.
Definition at line 46 of file asqtad_linop_s.h.
|
inline |
Creation routine.
Definition at line 37 of file asqtad_linop_s.h.
References Chroma::QDPStaggeredDslash::create(), D, and Mass.
Referenced by AsqtadLinOp().
|
inlinevirtual |
Apply the the even-even block onto a source std::vector.
Definition at line 53 of file asqtad_linop_s.h.
References Chroma::chi(), Mass, and Chroma::psi.
|
virtual |
Apply the the even-odd block onto a source std::vector.
Definition at line 11 of file asqtad_linop_s.cc.
References Chroma::QDPStaggeredDslash::apply(), Chroma::chi(), D, Chroma::isign, and Chroma::psi.
Return the fermion BC object for this linear operator Return the fermion BC object for this linear operator
Definition at line 50 of file asqtad_linop_s.h.
References D, and Chroma::QDPStaggeredDslash::getFermBC().
|
virtual |
Return flops performed by the operator()
Reimplemented from Chroma::EvenOddLinearOperator< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.
Definition at line 26 of file asqtad_linop_s.cc.
|
virtual |
Apply the the odd-even block onto a source std::vector.
Definition at line 18 of file asqtad_linop_s.cc.
References Chroma::QDPStaggeredDslash::apply(), Chroma::chi(), D, Chroma::isign, and Chroma::psi.
|
inlinevirtual |
Apply the the odd-odd block onto a source std::vector.
Definition at line 68 of file asqtad_linop_s.h.
References Chroma::chi(), Mass, and Chroma::psi.
|
private |
Definition at line 85 of file asqtad_linop_s.h.
Referenced by create(), evenOddLinOp(), getFermBC(), and oddEvenLinOp().
|
private |
Definition at line 78 of file asqtad_linop_s.h.
Referenced by create(), evenEvenLinOp(), and oddOddLinOp().