Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Solver_CGNE Class Reference

CGNE solver. More...

#include <solver_CGNE.h>

Inheritance diagram for Solver_CGNE:
Solver_CG Solver

Public Member Functions

 Solver_CGNE (Fopr *fopr)
 
 Solver_CGNE (unique_ptr< Fopr > &fopr)
 
 ~Solver_CGNE ()
 
void set_parameters (const Parameters &params)
 
void solve (Field &solution, const Field &source, int &Nconv, double &diff)
 
Foprget_fopr ()
 
double flop_count ()
 
- Public Member Functions inherited from Solver_CG
 Solver_CG (Fopr *fopr)
 
 Solver_CG (unique_ptr< Fopr > &fopr)
 
 ~Solver_CG ()
 
void set_parameters (const int Niter, const int Nrestart, const double Stop_cond)
 
void set_parameters (const int Niter, const int Nrestart, const double Stop_cond, const bool use_init_guess)
 
- Public Member Functions inherited from Solver
 Solver ()
 
virtual ~Solver ()
 
void set_parameter_verboselevel (const Bridge::VerboseLevel vl)
 

Static Public Attributes

static const std::string class_name = "Solver_CGNE"
 
- Static Public Attributes inherited from Solver_CG
static const std::string class_name = "Solver_CG"
 

Private Attributes

Field m_y
 

Additional Inherited Members

- Protected Attributes inherited from Solver
Bridge::VerboseLevel m_vl
 

Detailed Description

CGNE solver.

solve D x = b by (D Ddag) y = b and x = Ddag y.

delegate to base CG solver. NB. iter displayed by vout.detailed does not give #mult of D but #mult of DdagD

Introduce unique_ptr to avoid memory leaks. [21 Mar 2015 Y.Namekawa] Add flop_count. [ 8 Aug 2016 Y.Namekawa]

Definition at line 35 of file solver_CGNE.h.

Constructor & Destructor Documentation

Solver_CGNE::Solver_CGNE ( Fopr fopr)
inline

Definition at line 43 of file solver_CGNE.h.

Solver_CGNE::Solver_CGNE ( unique_ptr< Fopr > &  fopr)
inline

Definition at line 46 of file solver_CGNE.h.

Solver_CGNE::~Solver_CGNE ( )
inline

Definition at line 49 of file solver_CGNE.h.

Member Function Documentation

double Solver_CGNE::flop_count ( )
virtual

Reimplemented from Solver_CG.

Definition at line 83 of file solver_CGNE.cpp.

Fopr* Solver_CGNE::get_fopr ( )
inlinevirtual

Reimplemented from Solver_CG.

Definition at line 55 of file solver_CGNE.h.

void Solver_CGNE::set_parameters ( const Parameters params)
virtual

Reimplemented from Solver_CG.

Definition at line 26 of file solver_CGNE.cpp.

void Solver_CGNE::solve ( Field solution,
const Field source,
int &  Nconv,
double &  diff 
)
virtual

Reimplemented from Solver_CG.

Definition at line 33 of file solver_CGNE.cpp.

Member Data Documentation

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

Definition at line 41 of file solver_CGNE.h.

Field Solver_CGNE::m_y
private

Definition at line 38 of file solver_CGNE.h.


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