CHROMA
invcg2_prec_wilson.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Conjugate-Gradient algorithm for a generic Linear Operator
4  */
5 
6 #ifndef __invcg2_prec_wils_linop_h__
7 #define __invcg2_prec_wils_linop_h__
8 
9 #include "chromabase.h"
10 #include "linearop.h"
12 
13 //! Highly optimised Conjugate-Gradient (CGNE) algorithm for a Even Odd Preconditioned
14 
15 // Perversly theser are the types used in our axpys.
16 typedef OLattice< PSpinVector< PColorVector< RComplex< PScalar<REAL> >, Nc>, Ns> > LFerm;
17 
18 typedef OScalar< PScalar < PScalar < RScalar< PScalar < REAL > > > > > LScal;
19 typedef OScalar< PScalar < PScalar < RScalar< PScalar < DOUBLE > > > > > LDble;
20 // Get at the REAL embedded in an LScal
21 #define AT_REAL(a) (a.elem().elem().elem().elem().elem())
22 
23 // Get the first element of a std::vector over a subset
24 #define FIRST_ELEM(a,s) (&(a.elem(s.start()).elem(0).elem(0).real().elem()))
25 
27  const LFerm& chi,
28  LFerm& psi,
29  const LScal& mass,
30  const LScal& RsdCG,
31  int MaxCG,
32  int& n_count);
33 
34 
35 #endif
Primary include file for CHROMA library code.
EXTERN int MaxCG
Include possibly optimized Wilson dslash.
void InvCG2EvenOddPrecWilsLinOp(const WilsonDslash &D, const LFerm &chi, LFerm &psi, const LScal &mass, const LScal &RsdCG, int MaxCG, int &n_count)
Conjugate-Gradient (CGNE) algorithm for a generic Linear Operator.
OLattice< PSpinVector< PColorVector< RComplex< PScalar< REAL > >, Nc >, Ns > > LFerm
Highly optimised Conjugate-Gradient (CGNE) algorithm for a Even Odd Preconditioned.
OScalar< PScalar< PScalar< RScalar< PScalar< DOUBLE > > > > > LDble
OScalar< PScalar< PScalar< RScalar< PScalar< REAL > > > > > LScal
Linear Operators.
QDPWilsonDslash WilsonDslash
Definition: dslash_w.h:132
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > const multi1d< Real > enum InvType invType const multi1d< Real > & RsdCG
Definition: pbg5p_w.cc:30
Double mass
Definition: pbg5p_w.cc:54
chi
Definition: pade_trln_w.cc:24
psi
Definition: pade_trln_w.cc:191
int n_count
Definition: pade_trln_w.cc:69