CHROMA
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members

Overlap connection state. More...

#include <overlap_state.h>

Inheritance diagram for Chroma::OverlapConnectState:
Chroma::FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::ConnectState< P, Q >

Public Types

typedef LatticeFermion T
 
typedef multi1d< LatticeColorMatrix > P
 
typedef multi1d< LatticeColorMatrix > Q
 
typedef Real WordBase_t
 

Public Member Functions

 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const WordBase_t &approxMin_, const WordBase_t &approxMax_)
 Constructor with no eigenvalues. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const multi1d< WordBase_t > &val_, const multi1d< LatticeFermion > &vec_, const WordBase_t &val_max_, const WordBase_t &approxMin_, const WordBase_t &approxMax_)
 Constructor with e-values and e-vectors. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_)
 Create a ConnectState with just the gauge fields. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const Real &approxMin_)
 Create a ConnectState with just the gauge fields, and a lower. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const multi1d< Real > &lambda_lo_, const multi1d< LatticeFermion > &evecs_lo_, const Real &lambda_hi_)
 Create OverlapConnectState with eigenvalues/vectors. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > u_, XMLReader &state_info_xml, const std::string &state_info_path, const LinearOperator< LatticeFermion > &H)
 Create a ConnectState out of XML. More...
 
 OverlapConnectState (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const OverlapStateInfo &state_info, const LinearOperator< LatticeFermion > &H)
 Create from OverlapStateInfo Structure. More...
 
 OverlapConnectState (const OverlapConnectState &a)
 Copy constructor. More...
 
 ~OverlapConnectState ()
 
const FermBC< T, P, Q > & getBC () const
 Return the ferm BC object for this state. More...
 
Handle< FermBC< T, P, Q > > getFermBC () const
 Return the ferm BC object for this state. More...
 
const multi1d< LatticeColorMatrix > & getLinks () const
 Return the link fields needed in constructing linear operators. More...
 
const multi1d< WordBase_t > & getEigVal () const
 Return the eigenvalues. More...
 
const multi1d< LatticeFermion > & getEigVec () const
 Return the eigenvectors. More...
 
const WordBase_tgetEigValMax () const
 Return the max eigenvalues. More...
 
const WordBase_tgetApproxMin () const
 
const WordBase_tgetApproxMax () const
 
- Public Member Functions inherited from Chroma::FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >
virtual ~FermState ()
 Virtual destructor to help with cleanup;. More...
 
- Public Member Functions inherited from Chroma::ConnectState< P, Q >
virtual ~ConnectState ()
 Virtual destructor to help with cleanup;. More...
 
virtual void deriv (P &F) const
 

Protected Member Functions

void init (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const WordBase_t &approxMin_, const WordBase_t &approxMax_)
 for now inherit the deriv operation More...
 
void init (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const multi1d< WordBase_t > &val_, const multi1d< LatticeFermion > &vec_, const WordBase_t &val_max_, const WordBase_t &approxMin_, const WordBase_t &approxMax_)
 Constructor with e-values and e-vectors. More...
 
void init (Handle< FermBC< T, P, Q > > fbc_, const multi1d< LatticeColorMatrix > &u_, const OverlapStateInfo &state_info, const LinearOperator< LatticeFermion > &H)
 Create from OverlapStateInfo Structure. More...
 

Private Member Functions

 OverlapConnectState ()
 
void operator= (const OverlapConnectState &)
 

Private Attributes

Handle< FermBC< T, P, Q > > fbc
 
multi1d< LatticeColorMatrix > u
 
multi1d< WordBase_teigVal
 
multi1d< LatticeFermion > eigVec
 
WordBase_t eigValMax
 
WordBase_t approxMin
 
WordBase_t approxMax
 

Detailed Description

Overlap connection state.

Definition at line 23 of file overlap_state.h.

Member Typedef Documentation

◆ P

typedef multi1d<LatticeColorMatrix> Chroma::OverlapConnectState::P

Definition at line 30 of file overlap_state.h.

◆ Q

typedef multi1d<LatticeColorMatrix> Chroma::OverlapConnectState::Q

Definition at line 31 of file overlap_state.h.

◆ T

typedef LatticeFermion Chroma::OverlapConnectState::T

Definition at line 29 of file overlap_state.h.

◆ WordBase_t

Definition at line 33 of file overlap_state.h.

Constructor & Destructor Documentation

◆ OverlapConnectState() [1/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const WordBase_t approxMin_,
const WordBase_t approxMax_ 
)

Constructor with no eigenvalues.

Definition at line 19 of file overlap_state.cc.

References init().

◆ OverlapConnectState() [2/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const multi1d< WordBase_t > &  val_,
const multi1d< LatticeFermion > &  vec_,
const WordBase_t val_max_,
const WordBase_t approxMin_,
const WordBase_t approxMax_ 
)

Constructor with e-values and e-vectors.

Definition at line 28 of file overlap_state.cc.

References init().

◆ OverlapConnectState() [3/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_ 
)

Create a ConnectState with just the gauge fields.

Assumes that approximation bounds are those of the free field WilsonOp - ie. ApproxMin=0, ApproxMax=2Nd

Definition at line 108 of file overlap_state.cc.

References init(), and Nd.

◆ OverlapConnectState() [4/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const Real &  approxMin_ 
)

Create a ConnectState with just the gauge fields, and a lower.

Create a ConnectState with just the gauge fields, and a lower approximation bound

Assumes that maximum approximation bounds are those of the free field WilsonOp - ie. ApproxMax=2Nd

Definition at line 121 of file overlap_state.cc.

References init(), and Nd.

◆ OverlapConnectState() [5/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const multi1d< Real > &  lambda_lo_,
const multi1d< LatticeFermion > &  evecs_lo_,
const Real &  lambda_hi_ 
)

Create OverlapConnectState with eigenvalues/vectors.

Definition at line 132 of file overlap_state.cc.

References fbc, and init().

◆ OverlapConnectState() [6/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix >  u_,
XMLReader &  state_info_xml,
const std::string &  state_info_path,
const LinearOperator< LatticeFermion > &  H 
)

Create a ConnectState out of XML.

Needs the auxiliary fermion action linear operator passed just in case it needs to check eigenvalues/vectors. The caller should be a fermact so it should be able to generate the linop easy enough

Definition at line 152 of file overlap_state.cc.

References init(), and Chroma::read().

◆ OverlapConnectState() [7/9]

Chroma::OverlapConnectState::OverlapConnectState ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const OverlapStateInfo state_info,
const LinearOperator< LatticeFermion > &  H 
)

Create from OverlapStateInfo Structure.

Needs the auxiliary fermion action linear operator passed just in case it needs to check eigenvalues/vectors. The caller should be a fermact so it should be able to generate the linop easy enough

Definition at line 170 of file overlap_state.cc.

References init().

◆ OverlapConnectState() [8/9]

Chroma::OverlapConnectState::OverlapConnectState ( const OverlapConnectState a)
inline

Copy constructor.

Definition at line 86 of file overlap_state.h.

◆ ~OverlapConnectState()

Chroma::OverlapConnectState::~OverlapConnectState ( )
inline

Definition at line 92 of file overlap_state.h.

◆ OverlapConnectState() [9/9]

Chroma::OverlapConnectState::OverlapConnectState ( )
inlineprivate

Definition at line 140 of file overlap_state.h.

Member Function Documentation

◆ getApproxMax()

const WordBase_t& Chroma::OverlapConnectState::getApproxMax ( ) const
inline

Definition at line 113 of file overlap_state.h.

References approxMax.

◆ getApproxMin()

const WordBase_t& Chroma::OverlapConnectState::getApproxMin ( ) const
inline

Definition at line 112 of file overlap_state.h.

References approxMin.

◆ getBC()

const FermBC<T,P,Q>& Chroma::OverlapConnectState::getBC ( ) const
inlinevirtual

Return the ferm BC object for this state.

Implements Chroma::FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

Definition at line 95 of file overlap_state.h.

References fbc.

◆ getEigVal()

const multi1d<WordBase_t>& Chroma::OverlapConnectState::getEigVal ( ) const
inline

Return the eigenvalues.

Definition at line 104 of file overlap_state.h.

References eigVal.

◆ getEigValMax()

const WordBase_t& Chroma::OverlapConnectState::getEigValMax ( ) const
inline

Return the max eigenvalues.

Definition at line 110 of file overlap_state.h.

References eigValMax.

◆ getEigVec()

const multi1d<LatticeFermion>& Chroma::OverlapConnectState::getEigVec ( ) const
inline

Return the eigenvectors.

Definition at line 107 of file overlap_state.h.

References eigVec.

◆ getFermBC()

Handle< FermBC<T,P,Q> > Chroma::OverlapConnectState::getFermBC ( ) const
inlinevirtual

Return the ferm BC object for this state.

Implements Chroma::FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

Definition at line 98 of file overlap_state.h.

References fbc.

◆ getLinks()

const multi1d<LatticeColorMatrix>& Chroma::OverlapConnectState::getLinks ( ) const
inlinevirtual

Return the link fields needed in constructing linear operators.

Implements Chroma::ConnectState< P, Q >.

Definition at line 101 of file overlap_state.h.

References u.

◆ init() [1/3]

void Chroma::OverlapConnectState::init ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const multi1d< WordBase_t > &  val_,
const multi1d< LatticeFermion > &  vec_,
const WordBase_t val_max_,
const WordBase_t approxMin_,
const WordBase_t approxMax_ 
)
protected

Constructor with e-values and e-vectors.

Definition at line 71 of file overlap_state.cc.

References approxMax, approxMin, eigVal, eigValMax, eigVec, fbc, and u.

◆ init() [2/3]

void Chroma::OverlapConnectState::init ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const OverlapStateInfo state_info,
const LinearOperator< LatticeFermion > &  H 
)
protected

Create from OverlapStateInfo Structure.

Needs the auxiliary fermion action linear operator passed just in case it needs to check eigenvalues/vectors. The caller should be a fermact so it should be able to generate the linop easy enough

Definition at line 184 of file overlap_state.cc.

References Chroma::OverlapStateInfo::computeEigVec(), Chroma::EigenIO_t::eigen_file, Chroma::EigenIO_t::eigen_filefmt, Chroma::EVEC_TYPE_SCIDAC, Chroma::OverlapStateInfo::getApproxMax(), Chroma::OverlapStateInfo::getApproxMin(), Chroma::OverlapStateInfo::getEigenIO(), Chroma::OverlapStateInfo::getNWilsVec(), Chroma::i, init(), Chroma::OverlapStateInfo::loadEigVec(), Chroma::PLUS, r_norm, and Chroma::readEigen().

◆ init() [3/3]

void Chroma::OverlapConnectState::init ( Handle< FermBC< T, P, Q > >  fbc_,
const multi1d< LatticeColorMatrix > &  u_,
const WordBase_t approxMin_,
const WordBase_t approxMax_ 
)
protected

for now inherit the deriv operation

Constructor with no eigenvalues.

Constructor with no eigenvalues

Definition at line 41 of file overlap_state.cc.

References approxMax, approxMin, eigVal, eigValMax, eigVec, fbc, and u.

Referenced by init(), and OverlapConnectState().

◆ operator=()

void Chroma::OverlapConnectState::operator= ( const OverlapConnectState )
inlineprivate

Definition at line 141 of file overlap_state.h.

Member Data Documentation

◆ approxMax

WordBase_t Chroma::OverlapConnectState::approxMax
private

Definition at line 150 of file overlap_state.h.

Referenced by getApproxMax(), and init().

◆ approxMin

WordBase_t Chroma::OverlapConnectState::approxMin
private

Definition at line 149 of file overlap_state.h.

Referenced by getApproxMin(), and init().

◆ eigVal

multi1d<WordBase_t> Chroma::OverlapConnectState::eigVal
private

Definition at line 146 of file overlap_state.h.

Referenced by getEigVal(), and init().

◆ eigValMax

WordBase_t Chroma::OverlapConnectState::eigValMax
private

Definition at line 148 of file overlap_state.h.

Referenced by getEigValMax(), and init().

◆ eigVec

multi1d<LatticeFermion> Chroma::OverlapConnectState::eigVec
private

Definition at line 147 of file overlap_state.h.

Referenced by getEigVec(), and init().

◆ fbc

Handle< FermBC<T,P,Q> > Chroma::OverlapConnectState::fbc
private

Definition at line 144 of file overlap_state.h.

Referenced by getBC(), getFermBC(), init(), and OverlapConnectState().

◆ u

multi1d<LatticeColorMatrix> Chroma::OverlapConnectState::u
private

Definition at line 145 of file overlap_state.h.

Referenced by getLinks(), and init().


The documentation for this class was generated from the following files: