CHROMA
|
Exact 1 flavor fermact monomial in extra dimensions. More...
#include <one_flavor_ratio_rat_rat_monomial5d_w.h>
Public Member Functions | |
~OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D () | |
virtual destructor: More... | |
virtual Double | S (const AbsFieldState< P, Q > &s)=0 |
Compute the total action. More... | |
virtual void | dsdq (P &F, const AbsFieldState< P, Q > &s) |
Compute dsdq for the system... More... | |
virtual void | refreshInternalFields (const AbsFieldState< P, Q > &s) |
Refresh pseudofermions. More... | |
virtual void | setInternalFields (const Monomial< P, Q > &m) |
Copy internal fields. More... | |
virtual Double | S_subset (const AbsFieldState< P, Q > &s) const |
Compute action on the appropriate subset. More... | |
Public Member Functions inherited from Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi > | |
~ExactWilsonTypeFermMonomial5D () | |
virtual destructor: More... | |
virtual void | resetPredictors (void) |
Reset predictors. More... | |
Public Member Functions inherited from Chroma::ExactFermMonomial5D< P, Q, Phi > | |
~ExactFermMonomial5D () | |
virtual destructor: More... | |
Public Member Functions inherited from Chroma::ExactFermMonomial< P, Q, Phi > | |
~ExactFermMonomial () | |
virtual destructor: More... | |
Public Member Functions inherited from Chroma::ExactMonomial< P, Q > | |
virtual | ~ExactMonomial () |
virtual destructor: More... | |
Public Member Functions inherited from Chroma::Monomial< P, Q > | |
virtual | ~Monomial () |
virtual destructor: More... | |
Protected Member Functions | |
virtual const WilsonTypeFermAct5D< Phi, P, Q > & | getFermAct () const |
Get at fermion action. More... | |
virtual const WilsonTypeFermAct5D< Phi, P, Q > & | getNumerFermAct () const =0 |
Get at fermion action. More... | |
virtual const WilsonTypeFermAct5D< Phi, P, Q > & | getDenomFermAct () const =0 |
Get at fermion action. More... | |
virtual const GroupXML_t & | getNumerActionInvParams (void) const =0 |
Get inverter params. More... | |
virtual const GroupXML_t & | getNumerForceInvParams (void) const =0 |
Get inverter params. More... | |
virtual const GroupXML_t & | getDenomActionInvParams (void) const =0 |
Get inverter params. More... | |
virtual const GroupXML_t & | getDenomForceInvParams (void) const =0 |
Get inverter params. More... | |
virtual const RemezCoeff_t & | getNumerFPFE () const =0 |
Return the partial fraction expansion for the force calc. More... | |
virtual const RemezCoeff_t & | getNumerSPFE () const =0 |
Return the partial fraction expansion for the action calc. More... | |
virtual const RemezCoeff_t & | getNumerSIPFE () const =0 |
Return the partial fraction expansion for the heat-bath. More... | |
virtual const RemezCoeff_t & | getDenomFPFE () const =0 |
Return the partial fraction expansion for the force calc. More... | |
virtual const RemezCoeff_t & | getDenomSPFE () const =0 |
Return the partial fraction expansion for the action calc. More... | |
virtual const RemezCoeff_t & | getDenomSIPFE () const =0 |
Return the partial fraction expansion for the heat-bath. More... | |
virtual const multi1d< multi1d< Phi > > & | getPhi (void) const =0 |
Accessor for pseudofermion (read only) More... | |
virtual multi1d< multi1d< Phi > > & | getPhi (void)=0 |
mutator for pseudofermion More... | |
virtual int | getNPF () const =0 |
Return number of pseudofermions. More... | |
Exact 1 flavor fermact monomial in extra dimensions.
Exact 1 flavor fermact monomial. Preconditioning is not specified yet. Can supply a default dsdq and pseudoferm refresh algorithm
Definition at line 29 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
|
inline |
virtual destructor:
Definition at line 33 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
|
inlinevirtual |
Compute dsdq for the system...
Monomial of the form chi^dag*(M^dag*M)*chi
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Definition at line 40 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), F, Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerFermAct(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerForceInvParams(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerFPFE(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::i, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), Chroma::DiffFermAct5D< T, P, Q >::linOp(), Chroma::MINUS, Chroma::WilsonTypeFermAct5D< T, P, Q >::mInvMdagM(), Chroma::monitorForces(), mu, n, Chroma::SystemSolverResults_t::n_count, Nd, Chroma::PLUS, Chroma::RemezCoeff_t::pole, Chroma::pop(), Chroma::push(), Chroma::RemezCoeff_t::res, Chroma::s(), Chroma::START_CODE(), Chroma::state, Chroma::write(), and Chroma::zero.
|
protectedpure virtual |
Get inverter params.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
protectedpure virtual |
Get at fermion action.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, Chroma::OneFlavorRatioRatRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatioRatRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatioRatRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
protectedpure virtual |
Get inverter params.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
protectedpure virtual |
Return the partial fraction expansion for the force calc.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
protectedpure virtual |
Return the partial fraction expansion for the heat-bath.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
protectedpure virtual |
Return the partial fraction expansion for the action calc.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
inlineprotectedvirtual |
Get at fermion action.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Definition at line 354 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
References Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerFermAct().
|
protectedpure virtual |
Return number of pseudofermions.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Get inverter params.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Get at fermion action.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, Chroma::OneFlavorRatioRatRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatioRatRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatioRatRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getFermAct(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Get inverter params.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq().
|
protectedpure virtual |
Return the partial fraction expansion for the force calc.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq().
|
protectedpure virtual |
Return the partial fraction expansion for the heat-bath.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields().
|
protectedpure virtual |
Return the partial fraction expansion for the action calc.
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Accessor for pseudofermion (read only)
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
Referenced by Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset(), and Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::setInternalFields().
|
protectedpure virtual |
mutator for pseudofermion
Implemented in Chroma::UnprecOneFlavorWilsonTypeFermRatioRatRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatioRatRatMonomial5D.
|
inlinevirtual |
Refresh pseudofermions.
This routine calculates the pseudofermion field (chi) for the case of rational evolution
chi = n(Q)*[d(Q)]^(-1) * eta
Where: Q = M^dag*M d(Q) = (Q+q_1)*(Q+q_2)*...*(Q+q_m) n(Q) = (Q+p_1)*(Q+p_2)*... *(Q+p_m) m = SIRatDeg
The rational function n(x)/d(x) is the optimal rational approximation to the inverse square root of N(x)/D(x) which in turn is the optimal rational approximation to x^(-alpha). Here, alpha = 1/2
To solve {n(Q)*[d(Q)]^(-1) * eta} the partial fraction expansion is used in combination with a multishift solver.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Definition at line 158 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), Chroma::eta, Chroma::gaussian(), Chroma::FermionAction< T, P, Q >::getFermBC(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerActionInvParams(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerFermAct(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerSIPFE(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::i, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), j, Chroma::DiffFermAct5D< T, P, Q >::linOp(), Chroma::WilsonTypeFermAct5D< T, P, Q >::mInvMdagM(), n, N5, Chroma::SystemSolverResults_t::n_count, Chroma::RemezCoeff_t::norm, Chroma::RemezCoeff_t::pole, Chroma::pop(), Chroma::push(), Chroma::QDP_error_exit(), Chroma::RemezCoeff_t::res, Chroma::s(), Chroma::FermAct5D< T, P, Q >::size(), Chroma::START_CODE(), Chroma::write(), and Chroma::zero.
|
pure virtual |
Compute the total action.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Implemented in Chroma::OneFlavorRatioRatRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, and Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
|
inlinevirtual |
Compute action on the appropriate subset.
This may only be a Piece Of The Action
This function measures the pseudofermion contribution to the Hamiltonian for the case of rational evolution (with polynomials n(x) and d(x), of degree SRatDeg
S_f = chi_dag * (n(A)*d(A)^(-1))^2* chi
where A is M^dag*M
The rational function n(x)/d(x) is the optimal rational approximation to the square root of N(x)/D(x) which in turn is the optimal rational approximation to x^(-alpha). Here, alpha = 1/2
Definition at line 280 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerActionInvParams(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerFermAct(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNumerSPFE(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::i, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), j, Chroma::DiffFermAct5D< T, P, Q >::linOp(), Chroma::WilsonTypeFermAct5D< T, P, Q >::mInvMdagM(), n, N5, Chroma::SystemSolverResults_t::n_count, Chroma::RemezCoeff_t::norm, Chroma::RemezCoeff_t::pole, Chroma::pop(), Chroma::push(), Chroma::QDP_error_exit(), Chroma::RemezCoeff_t::res, Chroma::s(), Chroma::FermAct5D< T, P, Q >::size(), Chroma::START_CODE(), Chroma::tmp, Chroma::write(), and Chroma::zero.
Referenced by Chroma::OneFlavorRatioRatRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >::S(), and Chroma::OneFlavorRatioRatRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >::S_odd_odd().
|
inlinevirtual |
Copy internal fields.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Definition at line 240 of file one_flavor_ratio_rat_rat_monomial5d_w.h.
References Chroma::END_CODE(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::i, m, and Chroma::START_CODE().