CHROMA
Files | Classes | Functions

Files

file  asqtad_qprop.h
 Asqtad propagator wrapper.
 
file  hisq_qprop.h
 Hisq propagator wrapper.
 

Classes

class  Chroma::HtContFrac5DQprop< T, P, Q >
 Propagator of an un-preconditioned Extended-Overlap linear operator. More...
 
class  Chroma::PrecOvExt5DQprop< T, P, Q >
 Propagator of an un-preconditioned Extended-Overlap linear operator. More...
 
class  Chroma::ContFrac5DQprop< T, P, Q >
 Propagator of an un-preconditioned Extended-Overlap linear operator. More...
 
class  Chroma::Ovlap4DQprop
 
class  Chroma::OvHTCFZ5DQprop< T >
 Propagator of unpreconditioned H_T kernel continued fraction (5D) operator. More...
 
class  Chroma::OvExt5DQprop< T >
 Propagator of an un-preconditioned Extended-Overlap linear operator. More...
 
class  Chroma::OvUnprecCF5DQprop< T >
 Propagator of an un-preconditioned Extended-Overlap linear operator. More...
 
class  Chroma::AsqtadCPSWrapperQprop
 QPROP for wrapping CPS asqtad QPROP. More...
 
class  Chroma::DWFQprop< T >
 Propagator DWF linear operator. More...
 
class  Chroma::CGDWFQpropT< SinglePrecSolver, DoublePrecSolver >
 SSE Propagator DWF qpropT. More...
 
class  Chroma::PrecFermActQprop< T, P, Q >
 Propagator of a generic even-odd preconditioned fermion linear operator. More...
 
class  Chroma::PrecFermAct5DQprop< T, P, Q >
 Propagator of a generic even-odd preconditioned 5D fermion linear operator. More...
 
class  Chroma::EvenOddFermActQprop< T, P, Q >
 Propagator of a generic even-odd fermion linear operator. More...
 
class  Chroma::FermActQprop< T >
 Propagator of a generic non-preconditioned fermion linear operator. More...
 
class  Chroma::FermAct5DQprop< T >
 
class  Chroma::MDWFQpropT
 AVP's DWF Solver interface. More...
 
class  Chroma::SymEvenOddPrecActQprop< T, P, Q >
 Propagator of a generic symmetric even-odd preconditioned fermion linear operator. More...
 

Functions

void Chroma::dwf_quarkProp4 (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, int t_src, int j_decay, Handle< SystemSolverArray< LatticeFermion > > qpropT, Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const Real &m_q, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
template<typename T , typename P , typename Q , template< class, class, class > class C>
void Chroma::nef_quarkProp_a (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, int t_src, int j_decay, const C< T, P, Q > &S_f, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::nef_quarkProp4 (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, int t_src, int j_decay, const UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &S_f, Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::nef_quarkProp4 (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, int t_src, int j_decay, const EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &S_f, Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
template<typename T , typename P , typename Q >
void Chroma::quarkProp_a (LatticeStaggeredPropagator &q_sol, XMLWriter &xml_out, const LatticeStaggeredPropagator &q_src, const StaggeredTypeFermAct< T, P, Q > &S_f, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::quarkProp4 (LatticeStaggeredPropagator &q_sol, XMLWriter &xml_out, const LatticeStaggeredPropagator &q_src, const StaggeredTypeFermAct< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &S_f, Handle< FermState< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
template<typename T >
void Chroma::quarkProp4_a (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, Handle< SystemSolver< T > > qprop, QuarkSpinType quarkSpinType, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::quarkProp4 (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, Handle< SystemSolver< LF > > qprop, QuarkSpinType quarkSpinType, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::quarkProp4 (LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, Handle< SystemSolver< LatticeFermion > > qprop, QuarkSpinType quarkSpinType, int &ncg_had)
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void Chroma::OverlapFermActBase::multiQuarkProp (multi1d< LatticePropagator > &q_sol, XMLWriter &xml_out, const LatticePropagator &q_src, Handle< FermState< T, P, Q > > state, const multi1d< Real > &masses, const GroupXML_t &invParam, const int n_soln, int &ncg_had)
 Define a multi mass qprop. More...
 

Detailed Description

Routines for computing a quark propagator with various fermion actions

Function Documentation

◆ dwf_quarkProp4()

void Chroma::dwf_quarkProp4 ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
int  t_src,
int  j_decay,
Handle< SystemSolverArray< LatticeFermion > >  qpropT,
Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > >  state,
const Real &  m_q,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
qpropT5D inverter ( Read )
ncg_hadnumber of CG iterations ( Write )

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 219 of file dwf_quarkprop4_w.cc.

References Chroma::check_dwf_ward_identity(), Chroma::chi(), Chroma::d, Chroma::dwf_conserved_axial_ps_corr(), Chroma::END_CODE(), Chroma::FermToProp(), Chroma::SftMom::getSet(), Chroma::i, j_decay, Chroma::InlinePropAndMatElemDistillation2Env::local::localInnerProduct(), N5, Chroma::SystemSolverResults_t::n_count, Chroma::SftMom::numSubsets(), Chroma::pop(), Chroma::PropToFerm(), Chroma::psi, Chroma::push(), Chroma::SystemSolverResults_t::resid, Chroma::s(), Chroma::START_CODE(), Chroma::state, t, Chroma::tmp, Chroma::write(), and Chroma::zero.

Referenced by Chroma::UnprecDWFermActArray::quarkProp(), and Chroma::EvenOddPrecDWFermActArray::quarkProp().

◆ multiQuarkProp()

void Chroma::OverlapFermActBase::multiQuarkProp ( multi1d< LatticePropagator > &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
Handle< FermState< T, P, Q > >  state,
const multi1d< Real > &  masses,
const GroupXML_t invParam,
const int  n_soln,
int &  ncg_had 
)

Define a multi mass qprop.

Given a complete propagator as a source, this does all the inversions needed.

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
invTypeinverter type ( Read (
RsdCGCG (or MR) residual used here ( Read )
MaxCGmaximum number of CG iterations ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 113 of file quarkprop4_multi_w.cc.

References Chroma::state.

Referenced by Chroma::InlineMultiPropagator::func().

◆ nef_quarkProp4() [1/2]

void Chroma::nef_quarkProp4 ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
int  t_src,
int  j_decay,
const EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &  S_f,
Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > >  state,
const GroupXML_t invParam,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter params ( Read )
ncg_hadnumber of CG iterations ( Write )

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 348 of file nef_quarkprop4_w.cc.

References j_decay, Chroma::S_f, and Chroma::state.

◆ nef_quarkProp4() [2/2]

void Chroma::nef_quarkProp4 ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
int  t_src,
int  j_decay,
const UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &  S_f,
Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > >  state,
const GroupXML_t invParam,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter params ( Read )
ncg_hadnumber of CG iterations ( Write )

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 311 of file nef_quarkprop4_w.cc.

References j_decay, Chroma::S_f, and Chroma::state.

Referenced by Chroma::EvenOddPrecKNOFermActArray::quarkProp(), Chroma::EvenOddPrecNEFFermActArray::quarkProp(), Chroma::EvenOddPrecZoloNEFFermActArray::quarkProp(), Chroma::UnprecNEFFermActArray::quarkProp(), and Chroma::UnprecZoloNEFFermActArray::quarkProp().

◆ nef_quarkProp_a()

template<typename T , typename P , typename Q , template< class, class, class > class C>
void Chroma::nef_quarkProp_a ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
int  t_src,
int  j_decay,
const C< T, P, Q > &  S_f,
Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to Domain Wall fermions (Array) fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
t_srctime slice of source ( Read )
j_decaydirection of decay ( Read )
invParaminverter params ( Read )
ncg_hadnumber of CG iterations ( Write )

constuct the conserved axial current correlator nef_conserved_axial_ps_corr(cfield,state->getLinks(),prop5d,j_decay);

   push(xml_out, "DWF_ConservedAxial");
   write(xml_out, "mesprop", mesprop); 
   pop(xml_out);

The local axial corruent pseudoscalar correlator int d(1<<j_decay); cfield = trace( adj(q_sol)*Gamma(d)*q_sol ) ; corr = sumMulti(cfield, trick.getSet()) ; for(int t(0);t<length; t++){ int t_eff( (t - t_src + length) % length ) ; mesprop[t_eff] = -real(corr[t]) ; // sign fix } push(xml_out, "DWF_LocalAxial"); write(xml_out, "mesprop", mesprop); pop(xml_out);

check_nef_ward_identity(state->getLinks(),prop5d,q_src, q_sol,q_mp,S_f.quark_mass(), j_decay);

Definition at line 113 of file nef_quarkprop4_w.cc.

References Chroma::chi(), Chroma::END_CODE(), Chroma::FermToProp(), Chroma::SftMom::getSet(), Chroma::i, j_decay, N5, Chroma::SystemSolverResults_t::n_count, Chroma::SftMom::numSubsets(), Chroma::PLUS, Chroma::pop(), Chroma::PropToFerm(), Chroma::psi, Chroma::push(), Chroma::SystemSolverResults_t::resid, Chroma::s(), Chroma::S_f, Chroma::START_CODE(), Chroma::state, t, Chroma::tmp, Chroma::write(), and Chroma::zero.

◆ quarkProp4() [1/3]

void Chroma::quarkProp4 ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
Handle< SystemSolver< LatticeFermion > >  qprop,
QuarkSpinType  quarkSpinType,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
qpropinverter ( Read )
ncg_hadnumber of CG iterations ( Write )

◆ quarkProp4() [2/3]

void Chroma::quarkProp4 ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
Handle< SystemSolver< LF > >  qprop,
QuarkSpinType  quarkSpinType,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 205 of file quarkprop4_w.cc.

◆ quarkProp4() [3/3]

void Chroma::quarkProp4 ( LatticeStaggeredPropagator &  q_sol,
XMLWriter &  xml_out,
const LatticeStaggeredPropagator &  q_src,
const StaggeredTypeFermAct< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > &  S_f,
Handle< FermState< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > >  state,
const GroupXML_t invParam,
QuarkSpinType  quarkSpinType,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
invParaminverter parameters ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 124 of file quarkprop4_s.cc.

References Chroma::quarkProp_a(), Chroma::S_f, and Chroma::state.

Referenced by main(), Chroma::EvenOddPrecKNOFermActArray::quarkProp(), Chroma::EvenOddPrecNEFFermActArray::quarkProp(), Chroma::EvenOddPrecZoloNEFFermActArray::quarkProp(), Chroma::UnprecDWFermActArray::quarkProp(), Chroma::UnprecNEFFermActArray::quarkProp(), Chroma::UnprecZoloNEFFermActArray::quarkProp(), Chroma::StaggeredTypeFermAct< T, P, Q >::quarkProp(), and Chroma::EvenOddPrecDWFermActArray::quarkProp().

◆ quarkProp4_a()

template<typename T >
void Chroma::quarkProp4_a ( LatticePropagator &  q_sol,
XMLWriter &  xml_out,
const LatticePropagator &  q_src,
Handle< SystemSolver< T > >  qprop,
QuarkSpinType  quarkSpinType,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
RsdCGCG (or MR) residual used here ( Read )
MaxCGmaximum number of CG iterations ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 32 of file quarkprop4_w.cc.

References Chroma::chi(), Chroma::END_CODE(), Chroma::FermToProp(), Chroma::SystemSolverResults_t::n_count, Chroma::pop(), Chroma::PropToFerm(), Chroma::psi, Chroma::push(), Chroma::QUARK_SPIN_TYPE_FULL, Chroma::QUARK_SPIN_TYPE_LOWER, Chroma::QUARK_SPIN_TYPE_UPPER, Chroma::SystemSolverResults_t::resid, Chroma::START_CODE(), Chroma::write(), and Chroma::zero.

◆ quarkProp_a()

template<typename T , typename P , typename Q >
void Chroma::quarkProp_a ( LatticeStaggeredPropagator &  q_sol,
XMLWriter &  xml_out,
const LatticeStaggeredPropagator &  q_src,
const StaggeredTypeFermAct< T, P, Q > &  S_f,
Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam,
QuarkSpinType  quarkSpinType,
int &  ncg_had 
)

Given a complete propagator as a source, this does all the inversions needed.

This routine is actually generic to all Wilson-like fermions

Parameters
q_solquark propagator ( Write )
q_srcsource ( Read )
invParaminverter parameters ( Read )
RsdCGCG (or MR) residual used here ( Read )
MaxCGmaximum number of CG iterations ( Read )
ncg_hadnumber of CG iterations ( Write )

Definition at line 34 of file quarkprop4_s.cc.

References Chroma::chi(), Chroma::END_CODE(), Chroma::FermToProp(), Chroma::SystemSolverResults_t::n_count, Chroma::pop(), Chroma::PropToFerm(), Chroma::psi, Chroma::push(), Chroma::SystemSolverResults_t::resid, Chroma::S_f, Chroma::START_CODE(), Chroma::state, Chroma::write(), and Chroma::zero.

Referenced by Chroma::quarkProp4().