Chroma::PrecFermAct5DQprop< T, P, Q > Class Template Reference
[Quark propagator solution routines]

Propagator of a generic even-odd preconditioned 5D fermion linear operator. More...

#include <eoprec_fermact_qprop_array.h>

Inheritance diagram for Chroma::PrecFermAct5DQprop< T, P, Q >:

Chroma::SystemSolverArray< T > List of all members.

Public Member Functions

 PrecFermAct5DQprop (Handle< EvenOddPrecLinearOperatorArray< T, P, Q > > A_, Handle< LinOpSystemSolverArray< T > > invA_)
 Constructor.
 PrecFermAct5DQprop (Handle< EvenOddPrecLinearOperatorArray< T, P, Q > > A_, Handle< LinOpSystemSolverArray< T > > invA_, Handle< FermState< T, P, Q > > state_, const Real &OverMass_, const Real &Mass_, const AnisoParam_t &anisoParam_, const GroupXML_t &invParam_)
 Another constructor for compatibility.
 ~PrecFermAct5DQprop ()
 Destructor is automatic.
int size () const
 Expected length of array index.
const Subset & subset () const
 Return the subset on which the operator acts.
SystemSolverResults_t operator() (multi1d< T > &psi, const multi1d< T > &chi) const
 Solver the linear system.
template<>
SystemSolverResults_t operator() (multi1d< LatticeFermion > &psi, const multi1d< LatticeFermion > &chi) const

Protected Member Functions

 PrecFermAct5DQprop ()
 Hide default constructor.

Private Attributes

Handle< EvenOddPrecLinearOperatorArray<
T, P, Q > > 
A
Handle< LinOpSystemSolverArray<
T > > 
invA

Detailed Description

template<typename T, typename P, typename Q>
class Chroma::PrecFermAct5DQprop< T, P, Q >

Propagator of a generic even-odd preconditioned 5D fermion linear operator.

This routine is actually generic to all even-odd 5D preconditioned fermions

Definition at line 23 of file eoprec_fermact_qprop_array.h.


Constructor & Destructor Documentation

template<typename T, typename P, typename Q>
Chroma::PrecFermAct5DQprop< T, P, Q >::PrecFermAct5DQprop ( Handle< EvenOddPrecLinearOperatorArray< T, P, Q > >  A_,
Handle< LinOpSystemSolverArray< T > >  invA_ 
) [inline]

Constructor.

Parameters:
A_ Linear operator ( Read )
invParam_ inverter parameters ( Read )

Definition at line 31 of file eoprec_fermact_qprop_array.h.

template<typename T, typename P, typename Q>
Chroma::PrecFermAct5DQprop< T, P, Q >::PrecFermAct5DQprop ( Handle< EvenOddPrecLinearOperatorArray< T, P, Q > >  A_,
Handle< LinOpSystemSolverArray< T > >  invA_,
Handle< FermState< T, P, Q > >  state_,
const Real &  OverMass_,
const Real &  Mass_,
const AnisoParam_t anisoParam_,
const GroupXML_t invParam_ 
) [inline]

Another constructor for compatibility.

This constructor exists so this class can be compatible with optimized inverter constructors

Parameters:
A_ Linear operator ( Read )
invParam_ inverter parameters ( Read )

Definition at line 43 of file eoprec_fermact_qprop_array.h.

template<typename T, typename P, typename Q>
Chroma::PrecFermAct5DQprop< T, P, Q >::~PrecFermAct5DQprop (  )  [inline]

Destructor is automatic.

Definition at line 54 of file eoprec_fermact_qprop_array.h.

template<typename T, typename P, typename Q>
Chroma::PrecFermAct5DQprop< T, P, Q >::PrecFermAct5DQprop (  )  [inline, protected]

Hide default constructor.

Definition at line 72 of file eoprec_fermact_qprop_array.h.


Member Function Documentation

template<>
SystemSolverResults_t Chroma::PrecFermAct5DQprop< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >::operator() ( multi1d< LatticeFermion > &  psi,
const multi1d< LatticeFermion > &  chi 
) const

Parameters:
psi quark propagator ( Modify )
chi source ( Read )
Returns:
number of CG iterations

Definition at line 148 of file eoprec_fermact_qprop_array.cc.

References Chroma::PrecFermAct5DQprop< T, P, Q >::A, END_CODE, N5, Chroma::PLUS, Chroma::SystemSolverResults_t::resid, Chroma::PrecFermAct5DQprop< T, P, Q >::size(), and START_CODE.

template<typename T, typename P, typename Q>
SystemSolverResults_t Chroma::PrecFermAct5DQprop< T, P, Q >::operator() ( multi1d< T > &  psi,
const multi1d< T > &  chi 
) const [virtual]

Solver the linear system.

Parameters:
psi quark propagator ( Modify )
chi source ( Read )
Returns:
number of CG iterations

Implements Chroma::SystemSolverArray< T >.

template<typename T, typename P, typename Q>
int Chroma::PrecFermAct5DQprop< T, P, Q >::size ( void   )  const [inline, virtual]

Expected length of array index.

Implements Chroma::SystemSolverArray< T >.

Definition at line 57 of file eoprec_fermact_qprop_array.h.

References Chroma::PrecFermAct5DQprop< T, P, Q >::A.

Referenced by Chroma::PrecFermAct5DQprop< T, P, Q >::operator()().

template<typename T, typename P, typename Q>
const Subset& Chroma::PrecFermAct5DQprop< T, P, Q >::subset ( void   )  const [inline, virtual]

Return the subset on which the operator acts.

Implements Chroma::SystemSolverArray< T >.

Definition at line 60 of file eoprec_fermact_qprop_array.h.


Member Data Documentation

template<typename T, typename P, typename Q>
Handle< EvenOddPrecLinearOperatorArray<T,P,Q> > Chroma::PrecFermAct5DQprop< T, P, Q >::A [private]

Definition at line 75 of file eoprec_fermact_qprop_array.h.

Referenced by Chroma::PrecFermAct5DQprop< T, P, Q >::operator()(), and Chroma::PrecFermAct5DQprop< T, P, Q >::size().

template<typename T, typename P, typename Q>
Handle< LinOpSystemSolverArray<T> > Chroma::PrecFermAct5DQprop< T, P, Q >::invA [private]

Definition at line 76 of file eoprec_fermact_qprop_array.h.


The documentation for this class was generated from the following file:
Generated on Sun Nov 22 04:40:13 2009 for CHROMA by  doxygen 1.4.7