|
CHROMA
|
General Wilson-Dirac dslash of arrays. More...
#include <lwldslash_array_qdpopt_w.h>
Public Types | |
| typedef LatticeFermion | T |
| typedef multi1d< LatticeColorMatrix > | P |
| typedef multi1d< LatticeColorMatrix > | Q |
Public Types inherited from Chroma::WilsonDslashBaseArray | |
| typedef LatticeFermion | T |
| typedef multi1d< LatticeColorMatrix > | P |
| typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
| QDPWilsonDslashArrayOpt () | |
| Empty constructor. Must use create later. More... | |
| QDPWilsonDslashArrayOpt (Handle< FermState< T, P, Q > > state, int N5_) | |
| Full constructor. More... | |
| QDPWilsonDslashArrayOpt (Handle< FermState< T, P, Q > > state, int N5_, const AnisoParam_t &aniso_) | |
| Full constructor. More... | |
| void | create (Handle< FermState< T, P, Q > > state, int N5_) |
| Creation routine. More... | |
| void | create (Handle< FermState< T, P, Q > > state, int N5_, const AnisoParam_t &aniso_) |
| Creation routine. More... | |
| void | create (Handle< FermState< T, P, Q > > state, int N5_, const multi1d< Real > &coeffs_) |
| Creation routine. More... | |
| int | size () const |
| Expected length of array index. More... | |
| ~QDPWilsonDslashArrayOpt () | |
| No real need for cleanup here. More... | |
| void | apply (multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign, int cb) const |
| General Wilson-Dirac dslash. More... | |
| void | apply (LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign, int cb) const |
| General Wilson-Dirac dslash. More... | |
| const FermBC< T, P, Q > & | getFermBC () const |
| Return the fermion BC object for this linear operator. More... | |
Public Member Functions inherited from Chroma::WilsonDslashBaseArray | |
| virtual | ~WilsonDslashBaseArray () |
| No real need for cleanup here. More... | |
| const Subset & | subset () const |
| Subset is all here. More... | |
| virtual void | deriv (multi1d< LatticeColorMatrix > &ds_u, const multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign) const |
| Take deriv of D. More... | |
| virtual void | deriv (multi1d< LatticeColorMatrix > &ds_u, const multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign, int cb) const |
| Take deriv of D. More... | |
| virtual void | deriv (multi1d< LatticeColorMatrix > &ds_u, const LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign, int cb) const |
| Take deriv of D. More... | |
| unsigned long | nFlops () const |
| Return flops performed by the operator() More... | |
Public Member Functions inherited from Chroma::DslashLinearOperatorArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
| virtual | ~DslashLinearOperatorArray () |
| Virtual destructor to help in cleanup. More... | |
| virtual void | operator() (multi1d< LatticeFermion > &d, const multi1d< LatticeFermion > &psi, enum PlusMinus isign) const |
| Apply operator on both checkerboards (entire lattice) More... | |
Public Member Functions inherited from Chroma::DiffLinearOperatorArray< T, P, Q > | |
| virtual | ~DiffLinearOperatorArray () |
| Virtual destructor to help with cleanup;. More... | |
| virtual void | deriv (P &ds_u, const multi1d< T > &chi, const multi1d< T > &psi, enum PlusMinus isign, const Real &epsilon) const |
| Apply the derivative of the operator onto a source std::vector to some precision. More... | |
Public Member Functions inherited from Chroma::LinearOperatorArray< T > | |
| virtual | ~LinearOperatorArray () |
| Virtual destructor to help with cleanup;. More... | |
| virtual void | operator() (multi1d< T > &chi, const multi1d< T > &psi, enum PlusMinus isign, Real epsilon) const |
| Apply the operator onto a source std::vector to some precision. More... | |
Protected Member Functions | |
| const multi1d< Real > & | getCoeffs () const |
| Get the anisotropy parameters. More... | |
Private Attributes | |
| int | N5 |
| multi1d< Real > | coeffs |
| multi1d< LatticeColorMatrix > | u |
| Handle< FermBC< T, P, Q > > | fbc |
General Wilson-Dirac dslash of arrays.
DSLASH
This routine is specific to Wilson fermions!
Description:
This routine applies the operator D' to Psi, putting the result in Chi.
Nd-1
---
\
chi(x) := > U (x) (1 - isign gamma ) psi(x+mu)
mu=0
Nd-1 --- \ + + > U (x-mu) (1 + isign gamma ) psi(x-mu) / mu mu --- mu=0
Definition at line 45 of file lwldslash_array_qdpopt_w.h.
| typedef multi1d<LatticeColorMatrix> Chroma::QDPWilsonDslashArrayOpt::P |
Definition at line 50 of file lwldslash_array_qdpopt_w.h.
| typedef multi1d<LatticeColorMatrix> Chroma::QDPWilsonDslashArrayOpt::Q |
Definition at line 51 of file lwldslash_array_qdpopt_w.h.
| typedef LatticeFermion Chroma::QDPWilsonDslashArrayOpt::T |
Definition at line 49 of file lwldslash_array_qdpopt_w.h.
|
inline |
Empty constructor. Must use create later.
Definition at line 54 of file lwldslash_array_qdpopt_w.h.
|
inline |
Full constructor.
Definition at line 57 of file lwldslash_array_qdpopt_w.h.
References create(), and Chroma::state.
|
inline |
Full constructor.
Definition at line 62 of file lwldslash_array_qdpopt_w.h.
References create(), and Chroma::state.
|
inline |
No real need for cleanup here.
Definition at line 85 of file lwldslash_array_qdpopt_w.h.
| void Chroma::QDPWilsonDslashArrayOpt::create | ( | Handle< FermState< T, P, Q > > | state, |
| int | N5_, | ||
| const AnisoParam_t & | aniso_ | ||
| ) |
Creation routine.
Creation routine with anisotropy.
Definition at line 50 of file lwldslash_array_qdpopt_w.cc.
References create(), Chroma::END_CODE(), Chroma::makeFermCoeffs(), Chroma::START_CODE(), and Chroma::state.
| void Chroma::QDPWilsonDslashArrayOpt::create | ( | Handle< FermState< T, P, Q > > | state, |
| int | N5_, | ||
| const multi1d< Real > & | coeffs_ | ||
| ) |
Creation routine.
Definition at line 61 of file lwldslash_array_qdpopt_w.cc.
References coeffs, Chroma::END_CODE(), fbc, mu, N5, Chroma::START_CODE(), Chroma::state, and u.
|
inlineprotectedvirtual |
Get the anisotropy parameters.
Implements Chroma::WilsonDslashBaseArray.
Definition at line 120 of file lwldslash_array_qdpopt_w.h.
References coeffs.
Return the fermion BC object for this linear operator.
Implements Chroma::WilsonDslashBaseArray.
Definition at line 116 of file lwldslash_array_qdpopt_w.h.
References fbc.
Referenced by apply(), Chroma::EvenOddPrecDWLinOpArray::getFermBC(), Chroma::EvenOddPrecHtContFrac5DLinOpArray::getFermBC(), Chroma::EvenOddPrecGenNEFDWLinOpArray::getFermBC(), Chroma::EvenOddPrecNEFDWLinOpArray::getFermBC(), Chroma::EvenOddPrecOvlapContFrac5DLinOpBaseArray::getFermBC(), and Chroma::EvenOddPrecOvlapContFrac5DPVLinOpArray::getFermBC().
|
inlinevirtual |
Expected length of array index.
Definition at line 82 of file lwldslash_array_qdpopt_w.h.
References N5.
|
private |
Nd array of coefficients of terms in the action
Definition at line 124 of file lwldslash_array_qdpopt_w.h.
Referenced by create(), and getCoeffs().
Definition at line 126 of file lwldslash_array_qdpopt_w.h.
Referenced by create(), and getFermBC().
|
private |
Definition at line 123 of file lwldslash_array_qdpopt_w.h.
|
private |
Definition at line 125 of file lwldslash_array_qdpopt_w.h.