CHROMA
|
Unpreconditioned domain-wall Dirac operator. More...
#include <unprec_nef_linop_array_w.h>
Public Types | |
typedef LatticeFermion | T |
typedef multi1d< LatticeColorMatrix > | P |
typedef multi1d< LatticeColorMatrix > | Q |
Public Member Functions | |
UnprecNEFDWLinOpArray (Handle< FermState< T, P, Q > > fs, const Real &WilsonMass_, const multi1d< Real > &b5_, const multi1d< Real > &c5_, const Real &m_q_, int N5_) | |
Full constructor. More... | |
void | create (Handle< FermState< T, P, Q > > fs, const Real &WilsonMass_, const multi1d< Real > &b5_, const multi1d< Real > &c5_, const Real &m_q_, int N5_) |
Creation routine. More... | |
int | size () const |
Length of DW flavor index/space. More... | |
~UnprecNEFDWLinOpArray () | |
Destructor is automatic. More... | |
const FermBC< T, P, Q > & | getFermBC () const |
Return the fermion BC object for this linear operator. More... | |
const Subset & | subset () const |
Only defined on the entire lattice. More... | |
void | operator() (multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign) const |
Apply the operator onto a source std::vector. More... | |
void | Dminus (LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign, int s5) const |
Apply the Dminus operator on a lattice fermion. See my notes ;-) More... | |
void | deriv (multi1d< LatticeColorMatrix > &ds_u, const multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign) const |
Derivative. More... | |
Public Member Functions inherited from Chroma::UnprecLinearOperatorArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > | |
virtual | ~UnprecLinearOperatorArray () |
Virtual destructor to help with cleanup;. More... | |
const Subset & | subset () const |
Only defined on the 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... | |
virtual unsigned long | nFlops () const |
Protected Member Functions | |
UnprecNEFDWLinOpArray () | |
Partial constructor. More... | |
void | operator= (const UnprecNEFDWLinOpArray &) |
Hide =. More... | |
Private Attributes | |
Real | WilsonMass |
multi1d< Real > | b5 |
multi1d< Real > | c5 |
Real | m_q |
int | N5 |
WilsonDslash | D |
Handle< FermBC< T, P, Q > > | fbc |
multi1d< Real > | fb5 |
multi1d< Real > | fc5 |
Unpreconditioned domain-wall Dirac operator.
This routine is specific to Wilson fermions!
Definition at line 22 of file unprec_nef_linop_array_w.h.
typedef multi1d<LatticeColorMatrix> Chroma::UnprecNEFDWLinOpArray::P |
Definition at line 28 of file unprec_nef_linop_array_w.h.
typedef multi1d<LatticeColorMatrix> Chroma::UnprecNEFDWLinOpArray::Q |
Definition at line 29 of file unprec_nef_linop_array_w.h.
typedef LatticeFermion Chroma::UnprecNEFDWLinOpArray::T |
Definition at line 27 of file unprec_nef_linop_array_w.h.
|
inline |
Full constructor.
Set b5 = 1.0 and c5=0.0 to get Shamir DWF with a5=1. Set b5 = 1.0 and c5=1.0 to get Borichi DWF.
Definition at line 36 of file unprec_nef_linop_array_w.h.
References create().
|
inline |
Destructor is automatic.
Definition at line 52 of file unprec_nef_linop_array_w.h.
|
inlineprotected |
Partial constructor.
Definition at line 78 of file unprec_nef_linop_array_w.h.
|
virtual |
Derivative.
Reimplemented from Chroma::DiffLinearOperatorArray< T, P, Q >.
Definition at line 150 of file unprec_nef_linop_array_w.cc.
References chi, END_CODE, Chroma::isign, m, Chroma::MINUS, n, N5, Nd, Chroma::PLUS, psi, START_CODE, tmp, and Chroma::zero.
|
virtual |
Apply the Dminus operator on a lattice fermion. See my notes ;-)
Definition at line 134 of file unprec_nef_linop_array_w.cc.
References chi, Chroma::isign, and psi.
Return the fermion BC object for this linear operator.
Implements Chroma::DiffLinearOperatorArray< T, P, Q >.
Definition at line 55 of file unprec_nef_linop_array_w.h.
References fbc.
|
inlineprotected |
Hide =.
Definition at line 80 of file unprec_nef_linop_array_w.h.
|
inlinevirtual |
Length of DW flavor index/space.
Definition at line 49 of file unprec_nef_linop_array_w.h.
References N5.
|
inlinevirtual |
Only defined on the entire lattice.
Implements Chroma::LinearOperatorArray< T >.
Definition at line 58 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 84 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 85 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 88 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 91 of file unprec_nef_linop_array_w.h.
Definition at line 89 of file unprec_nef_linop_array_w.h.
Referenced by getFermBC().
|
private |
Definition at line 92 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 86 of file unprec_nef_linop_array_w.h.
|
private |
Definition at line 87 of file unprec_nef_linop_array_w.h.
Referenced by size().
|
private |
Definition at line 83 of file unprec_nef_linop_array_w.h.