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

Multishift Conjugate Gradient solver. More...

#include <shiftsolver_CG.h>

Inheritance diagram for Shiftsolver_CG:
Shiftsolver

Public Member Functions

 Shiftsolver_CG (Fopr *fopr)
 
 Shiftsolver_CG (Fopr *fopr, int niter, double stop_cond)
 
 ~Shiftsolver_CG ()
 
void set_parameters (const Parameters &params)
 
void set_parameters (const int niter, const double stop_cond)
 
void solve (std::valarray< Field > &solution, std::valarray< double > shift, const Field &source, int &Nconv, double &diff)
 
- Public Member Functions inherited from Shiftsolver
 Shiftsolver ()
 
virtual ~Shiftsolver ()
 
void set_parameter_verboselevel (const Bridge::VerboseLevel vl)
 

Static Public Attributes

static const std::string class_name = "Shiftsolver_CG"
 

Private Member Functions

void solve_init (double &)
 
void solve_step (double &, const std::valarray< double > &)
 

Private Attributes

Foprm_fopr
 
int m_Niter
 
double m_Stop_cond
 
std::valarray< Fieldx
 
std::valarray< Fieldp
 
Field r
 
Field s
 
std::valarray< double > zeta1
 
std::valarray< double > zeta2
 
std::valarray< double > csh2
 
std::valarray< double > pp
 
double snorm
 
double alpha_p
 
double beta_p
 
int Nshift2
 

Additional Inherited Members

- Protected Attributes inherited from Shiftsolver
Bridge::VerboseLevel m_vl
 

Detailed Description

Multishift Conjugate Gradient solver.

[23 Dec 2011 H.Matsufuru]

Definition at line 36 of file shiftsolver_CG.h.

Constructor & Destructor Documentation

Shiftsolver_CG::Shiftsolver_CG ( Fopr fopr)
inline

Definition at line 55 of file shiftsolver_CG.h.

Shiftsolver_CG::Shiftsolver_CG ( Fopr fopr,
int  niter,
double  stop_cond 
)
inline

Definition at line 58 of file shiftsolver_CG.h.

Shiftsolver_CG::~Shiftsolver_CG ( )
inline

Definition at line 64 of file shiftsolver_CG.h.

Member Function Documentation

void Shiftsolver_CG::set_parameters ( const Parameters params)
virtual

Implements Shiftsolver.

Definition at line 35 of file shiftsolver_CG.cpp.

void Shiftsolver_CG::set_parameters ( const int  niter,
const double  stop_cond 
)

Definition at line 60 of file shiftsolver_CG.cpp.

void Shiftsolver_CG::solve ( std::valarray< Field > &  solution,
std::valarray< double >  shift,
const Field source,
int &  Nconv,
double &  diff 
)
virtual

Implements Shiftsolver.

Definition at line 31 of file shiftsolver_CG_alt.cpp.

void Shiftsolver_CG::solve_init ( double &  rr)
private

Definition at line 171 of file shiftsolver_CG.cpp.

void Shiftsolver_CG::solve_step ( double &  rr,
const std::valarray< double > &  sigma 
)
private

Definition at line 190 of file shiftsolver_CG.cpp.

Member Data Documentation

double Shiftsolver_CG::alpha_p
private

Definition at line 50 of file shiftsolver_CG.h.

double Shiftsolver_CG::beta_p
private

Definition at line 50 of file shiftsolver_CG.h.

const std::string Shiftsolver_CG::class_name = "Shiftsolver_CG"
static

Definition at line 39 of file shiftsolver_CG.h.

std::valarray<double> Shiftsolver_CG::csh2
private

Definition at line 49 of file shiftsolver_CG.h.

Fopr* Shiftsolver_CG::m_fopr
private

Definition at line 43 of file shiftsolver_CG.h.

int Shiftsolver_CG::m_Niter
private

Definition at line 44 of file shiftsolver_CG.h.

double Shiftsolver_CG::m_Stop_cond
private

Definition at line 45 of file shiftsolver_CG.h.

int Shiftsolver_CG::Nshift2
private

Definition at line 51 of file shiftsolver_CG.h.

std::valarray<Field> Shiftsolver_CG::p
private

Definition at line 47 of file shiftsolver_CG.h.

std::valarray<double> Shiftsolver_CG::pp
private

Definition at line 49 of file shiftsolver_CG.h.

Field Shiftsolver_CG::r
private

Definition at line 48 of file shiftsolver_CG.h.

Field Shiftsolver_CG::s
private

Definition at line 48 of file shiftsolver_CG.h.

double Shiftsolver_CG::snorm
private

Definition at line 50 of file shiftsolver_CG.h.

std::valarray<Field> Shiftsolver_CG::x
private

Definition at line 47 of file shiftsolver_CG.h.

std::valarray<double> Shiftsolver_CG::zeta1
private

Definition at line 49 of file shiftsolver_CG.h.

std::valarray<double> Shiftsolver_CG::zeta2
private

Definition at line 49 of file shiftsolver_CG.h.


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