#include <one_flavor_rat_monomial_w.h>
Inheritance diagram for Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >:

Public Member Functions | |
| ~OneFlavorRatExactWilsonTypeFermMonomial () | |
| virtual destructor: | |
| virtual Double | S (const AbsFieldState< P, Q > &s)=0 |
| Compute the total action. | |
| virtual void | dsdq (P &F, const AbsFieldState< P, Q > &s) |
| Compute dsdq for the system... | |
| virtual void | refreshInternalFields (const AbsFieldState< P, Q > &s) |
| Refresh pseudofermions. | |
| virtual void | setInternalFields (const Monomial< P, Q > &m) |
| Copy pseudofermions if any. | |
| virtual Double | S_subset (const AbsFieldState< P, Q > &s) const |
| Compute the action on the appropriate subset. | |
Protected Member Functions | |
| virtual const WilsonTypeFermAct< Phi, P, Q > & | getFermAct (void) const =0 |
| Get at fermion action. | |
| virtual const GroupXML_t & | getActionInvParams (void) const =0 |
| Get inverter params. | |
| virtual const GroupXML_t & | getForceInvParams (void) const =0 |
| Get inverter params. | |
| virtual int | getNPF () const =0 |
| Return number of roots in used. | |
| virtual const RemezCoeff_t & | getFPFE () const =0 |
| Return the partial fraction expansion for the force calc. | |
| virtual const RemezCoeff_t & | getSPFE () const =0 |
| Return the partial fraction expansion for the action calc. | |
| virtual const RemezCoeff_t & | getSIPFE () const =0 |
| Return the partial fraction expansion for the heat-bath. | |
| virtual const multi1d< Phi > & | getPhi (void) const =0 |
| Accessor for pseudofermion (read only). | |
| virtual multi1d< Phi > & | getPhi (void)=0 |
| mutator for pseudofermion | |
Exact 1 flavor fermact monomial using Rational Polynomial. Preconditioning is not specified yet. Can supply a default dsdq and pseudoferm refresh algorithm
Definition at line 29 of file one_flavor_rat_monomial_w.h.
| Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::~OneFlavorRatExactWilsonTypeFermMonomial | ( | ) | [inline] |
| virtual void Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::dsdq | ( | P & | F, | |
| const AbsFieldState< P, Q > & | s | |||
| ) | [inline, virtual] |
Compute dsdq for the system...
Actions of the form chi^dag*(M^dag*M)*chi
Implements Chroma::ExactWilsonTypeFermMonomial< P, Q, Phi >.
Definition at line 40 of file one_flavor_rat_monomial_w.h.
| virtual const GroupXML_t& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getActionInvParams | ( | void | ) | const [protected, pure virtual] |
Get inverter params.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S_subset().
| virtual const WilsonTypeFermAct<Phi,P,Q>& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getFermAct | ( | void | ) | const [protected, pure virtual] |
Get at fermion action.
Implements Chroma::ExactWilsonTypeFermMonomial< P, Q, Phi >.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecConstDetWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, and Chroma::OneFlavorRatExactEvenOddPrecConstDetWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S_subset().
| virtual const GroupXML_t& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getForceInvParams | ( | void | ) | const [protected, pure virtual] |
Get inverter params.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::dsdq().
| virtual const RemezCoeff_t& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getFPFE | ( | ) | const [protected, pure virtual] |
Return the partial fraction expansion for the force calc.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::dsdq().
| virtual int Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getNPF | ( | ) | const [protected, pure virtual] |
Return number of roots in used.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::refreshInternalFields(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S_subset().
| virtual multi1d<Phi>& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getPhi | ( | void | ) | [protected, pure virtual] |
mutator for pseudofermion
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
| virtual const multi1d<Phi>& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getPhi | ( | void | ) | const [protected, pure virtual] |
Accessor for pseudofermion (read only).
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
Referenced by Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::dsdq(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::refreshInternalFields(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S_subset(), and Chroma::OneFlavorRatExactWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::setInternalFields().
| virtual const RemezCoeff_t& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getSIPFE | ( | ) | const [protected, pure virtual] |
Return the partial fraction expansion for the heat-bath.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
| virtual const RemezCoeff_t& Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::getSPFE | ( | ) | const [protected, pure virtual] |
Return the partial fraction expansion for the action calc.
Implemented in Chroma::EvenOddPrecConstDetOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::UnprecOneFlavorWilsonTypeFermRatMonomial, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
| virtual void Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::refreshInternalFields | ( | const AbsFieldState< P, Q > & | s | ) | [inline, virtual] |
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 = HBRatDeg
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::ExactWilsonTypeFermMonomial< P, Q, Phi >.
Definition at line 154 of file one_flavor_rat_monomial_w.h.
| virtual Double Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::S | ( | const AbsFieldState< P, Q > & | s | ) | [pure virtual] |
Compute the total action.
Implements Chroma::ExactWilsonTypeFermMonomial< P, Q, Phi >.
Implemented in Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< P, Q, Phi >, Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >, Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, Phi >, and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >.
| virtual Double Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::S_subset | ( | const AbsFieldState< P, Q > & | s | ) | const [inline, virtual] |
Compute the action on the appropriate subset.
This 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 256 of file one_flavor_rat_monomial_w.h.
Referenced by Chroma::OneFlavorRatExactUnprecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S(), and Chroma::OneFlavorRatExactEvenOddPrecWilsonTypeFermMonomial< multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix >, LatticeFermion >::S_odd_odd().
| virtual void Chroma::OneFlavorRatExactWilsonTypeFermMonomial< P, Q, Phi >::setInternalFields | ( | const Monomial< P, Q > & | m | ) | [inline, virtual] |
Copy pseudofermions if any.
Implements Chroma::ExactWilsonTypeFermMonomial< P, Q, Phi >.
Definition at line 223 of file one_flavor_rat_monomial_w.h.
1.4.7