Bridge++  Ver. 1.1.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Fopr_Overlap Class Reference

Overlap fermion operator. More...

#include <fopr_Overlap.h>

Inheritance diagram for Fopr_Overlap:
Fopr

Public Member Functions

 Fopr_Overlap (Fopr_Wilson *fopr)
 
 ~Fopr_Overlap ()
 
void set_parameters (const Parameters &params)
 
void set_parameters (const double mq, const double M0, const int Np, const double x_min, const double x_max, const int Niter, const double Stop_cond, const std::valarray< int > bc)
 
void set_config (Field *U)
 setting pointer to the gauge configuration. More...
 
void set_lowmodes (int Nsbt, std::valarray< double > *, std::valarray< Field > *)
 
const Field mult (const Field &f)
 multiplies fermion operator to a given field and returns the resultant field. More...
 
const Field mult_dag (const Field &f)
 hermitian conjugate of mult(const Field&). More...
 
void mult (Field &v, const Field &f)
 multiplies fermion operator to a given field (2nd argument) More...
 
void mult_dag (Field &v, const Field &f)
 hermitian conjugate of mult(Field&, const Field&). More...
 
void set_mode (std::string mode)
 setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call. More...
 
std::string get_mode () const
 
void H (Field &v, const Field &f)
 
void D (Field &v, const Field &f)
 
void Ddag (Field &v, const Field &f)
 
void DdagD (Field &v, const Field &f)
 
void mult_undef (Field &v, const Field &f)
 
int field_nvol ()
 returns the volume for which the fermion operator is defined. More...
 
int field_nin ()
 returns the on-site d.o.f. for which the fermion operator is defined. More...
 
int field_nex ()
 returns the external d.o.f. for which the fermion operator is defined. More...
 
- Public Member Functions inherited from Fopr
 Fopr ()
 
virtual ~Fopr ()
 
void set_parameter_verboselevel (const Bridge::VerboseLevel vl)
 
virtual void mult_up (int mu, Field &, const Field &)
 nearest neighbor hopping term: temporary entry [H.Matsufuru] More...
 
virtual void mult_dn (int mu, Field &, const Field &)
 

Private Attributes

double m_mq
 
double m_M0
 
int m_Np
 
double m_x_min
 
double m_x_max
 
int m_Niter
 
double m_Stop_cond
 
std::valarray< int > m_boundary
 
Fopr_Wilsonm_fopr_w
 
Fopr_Signm_sign
 
int m_Nsbt
 
std::valarray< double > * m_ev
 
std::valarray< Field > * m_vk
 
std::string m_mode
 
void(Fopr_Overlap::* m_mult )(Field &, const Field &)
 
void(Fopr_Overlap::* m_mult_dag )(Field &, const Field &)
 

Additional Inherited Members

- Protected Attributes inherited from Fopr
Bridge::VerboseLevel m_vl
 

Detailed Description

Overlap fermion operator.

This class defines the overlap fermion operator with a given kernel fermion operator that currently is assumed as the Wilson fermion operator. All the necessary parameters for kernel fermion operator must be set outside of the class, while the parameters for the sign function operator are set in this class. When eigenvalues and eigenvectors of the base fermion operator are given, these modes are used in the sign function to improve the approximation formula. 20 Dec 2011 H.Matsufuru YAML is implemented. [14 Nov 2012 Y.Namekawa]

Definition at line 49 of file fopr_Overlap.h.

Constructor & Destructor Documentation

Fopr_Overlap::Fopr_Overlap ( Fopr_Wilson fopr)
inline

Definition at line 77 of file fopr_Overlap.h.

Fopr_Overlap::~Fopr_Overlap ( )
inline

Definition at line 86 of file fopr_Overlap.h.

Member Function Documentation

void Fopr_Overlap::D ( Field v,
const Field f 
)

Definition at line 184 of file fopr_Overlap.cpp.

void Fopr_Overlap::Ddag ( Field v,
const Field f 
)

Definition at line 174 of file fopr_Overlap.cpp.

void Fopr_Overlap::DdagD ( Field v,
const Field f 
)

Definition at line 154 of file fopr_Overlap.cpp.

int Fopr_Overlap::field_nex ( )
inlinevirtual

returns the external d.o.f. for which the fermion operator is defined.

Implements Fopr.

Definition at line 171 of file fopr_Overlap.h.

int Fopr_Overlap::field_nin ( )
inlinevirtual

returns the on-site d.o.f. for which the fermion operator is defined.

Implements Fopr.

Definition at line 170 of file fopr_Overlap.h.

int Fopr_Overlap::field_nvol ( )
inlinevirtual

returns the volume for which the fermion operator is defined.

Implements Fopr.

Definition at line 169 of file fopr_Overlap.h.

std::string Fopr_Overlap::get_mode ( ) const
inlinevirtual

Reimplemented from Fopr.

Definition at line 153 of file fopr_Overlap.h.

void Fopr_Overlap::H ( Field v,
const Field f 
)

Definition at line 164 of file fopr_Overlap.cpp.

const Field Fopr_Overlap::mult ( const Field )
inlinevirtual

multiplies fermion operator to a given field and returns the resultant field.

Implements Fopr.

Definition at line 106 of file fopr_Overlap.h.

void Fopr_Overlap::mult ( Field ,
const Field  
)
inlinevirtual

multiplies fermion operator to a given field (2nd argument)

Reimplemented from Fopr.

Definition at line 122 of file fopr_Overlap.h.

const Field Fopr_Overlap::mult_dag ( const Field )
inlinevirtual

hermitian conjugate of mult(const Field&).

Reimplemented from Fopr.

Definition at line 114 of file fopr_Overlap.h.

void Fopr_Overlap::mult_dag ( Field ,
const Field  
)
inlinevirtual

hermitian conjugate of mult(Field&, const Field&).

Reimplemented from Fopr.

Definition at line 127 of file fopr_Overlap.h.

void Fopr_Overlap::mult_undef ( Field v,
const Field f 
)
inline

Definition at line 163 of file fopr_Overlap.h.

void Fopr_Overlap::set_config ( Field )
inlinevirtual

setting pointer to the gauge configuration.

Implements Fopr.

Definition at line 97 of file fopr_Overlap.h.

void Fopr_Overlap::set_lowmodes ( int  Nsbt,
std::valarray< double > *  ,
std::valarray< Field > *   
)

Definition at line 143 of file fopr_Overlap.cpp.

void Fopr_Overlap::set_mode ( std::string  mode)
inlinevirtual

setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call.

Reimplemented from Fopr.

Definition at line 132 of file fopr_Overlap.h.

void Fopr_Overlap::set_parameters ( const Parameters params)
virtual

Implements Fopr.

Definition at line 50 of file fopr_Overlap.cpp.

void Fopr_Overlap::set_parameters ( const double  mq,
const double  M0,
const int  Np,
const double  x_min,
const double  x_max,
const int  Niter,
const double  Stop_cond,
const std::valarray< int >  bc 
)

Definition at line 85 of file fopr_Overlap.cpp.

Member Data Documentation

std::valarray<int> Fopr_Overlap::m_boundary
private

Definition at line 59 of file fopr_Overlap.h.

std::valarray<double>* Fopr_Overlap::m_ev
private

Definition at line 67 of file fopr_Overlap.h.

Fopr_Wilson* Fopr_Overlap::m_fopr_w
private

Definition at line 62 of file fopr_Overlap.h.

double Fopr_Overlap::m_M0
private

Definition at line 54 of file fopr_Overlap.h.

std::string Fopr_Overlap::m_mode
private

Definition at line 71 of file fopr_Overlap.h.

double Fopr_Overlap::m_mq
private

Definition at line 53 of file fopr_Overlap.h.

void(Fopr_Overlap::* Fopr_Overlap::m_mult)(Field &, const Field &)
private

Definition at line 72 of file fopr_Overlap.h.

void(Fopr_Overlap::* Fopr_Overlap::m_mult_dag)(Field &, const Field &)
private

Definition at line 73 of file fopr_Overlap.h.

int Fopr_Overlap::m_Niter
private

Definition at line 57 of file fopr_Overlap.h.

int Fopr_Overlap::m_Np
private

Definition at line 55 of file fopr_Overlap.h.

int Fopr_Overlap::m_Nsbt
private

Definition at line 66 of file fopr_Overlap.h.

Fopr_Sign* Fopr_Overlap::m_sign
private

Definition at line 63 of file fopr_Overlap.h.

double Fopr_Overlap::m_Stop_cond
private

Definition at line 58 of file fopr_Overlap.h.

std::valarray<Field>* Fopr_Overlap::m_vk
private

Definition at line 68 of file fopr_Overlap.h.

double Fopr_Overlap::m_x_max
private

Definition at line 56 of file fopr_Overlap.h.

double Fopr_Overlap::m_x_min
private

Definition at line 56 of file fopr_Overlap.h.


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