CHROMA
|
Exact 1 flavor fermact monomial in extra dimensions. More...
#include <one_flavor_rat_monomial5d_w.h>
Public Member Functions | |
~OneFlavorRatExactWilsonTypeFermMonomial5D () | |
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 (void) const =0 |
Get at fermion action. More... | |
virtual const GroupXML_t & | getActionInvParams (void) const =0 |
Get inverter params. More... | |
virtual const GroupXML_t & | getForceInvParams (void) const =0 |
Get inverter params. 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... | |
virtual const RemezCoeff_t & | getFPFE () const =0 |
Return the partial fraction expansion for the force calc. More... | |
virtual const RemezCoeff_t & | getSPFE () const =0 |
Return the partial fraction expansion for the action calc. More... | |
virtual const RemezCoeff_t & | getSIPFE () const =0 |
Return the partial fraction expansion for the heat-bath. 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_rat_monomial5d_w.h.
|
inline |
virtual destructor:
Definition at line 33 of file one_flavor_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_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), F, Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getFermAct(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getForceInvParams(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getFPFE(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< 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::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Get at fermion action.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D, Chroma::OneFlavorRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecConstDetWilsonTypeFermMonomial5D< P, Q, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Get inverter params.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq().
|
protectedpure virtual |
Return the partial fraction expansion for the force calc.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq().
|
protectedpure virtual |
Return number of pseudofermions.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
protectedpure virtual |
Accessor for pseudofermion (read only)
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::setInternalFields().
|
protectedpure virtual |
mutator for pseudofermion
Implemented in Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
|
protectedpure virtual |
Return the partial fraction expansion for the heat-bath.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields().
|
protectedpure virtual |
Return the partial fraction expansion for the action calc.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial5D, and Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial5D.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().
|
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 156 of file one_flavor_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), Chroma::eta, Chroma::gaussian(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getActionInvParams(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getFermAct(), Chroma::FermionAction< T, P, Q >::getFermBC(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getSIPFE(), 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::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >, and Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< 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 278 of file one_flavor_rat_monomial5d_w.h.
References Chroma::FermionAction< T, P, Q >::createState(), Chroma::END_CODE(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getActionInvParams(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getFermAct(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getNPF(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getSPFE(), 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::OneFlavorRatExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >::S(), and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >::S_odd_odd().
|
inlinevirtual |
Copy internal fields.
Implements Chroma::ExactWilsonTypeFermMonomial5D< P, Q, Phi >.
Definition at line 238 of file one_flavor_rat_monomial5d_w.h.
References Chroma::END_CODE(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::getPhi(), Chroma::i, m, and Chroma::START_CODE().