PSCF v1.1
Public Member Functions | Protected Member Functions | List of all members
Pscf::Pspg::AmIteratorGrid< D > Class Template Reference

Pspg implementation of the Anderson Mixing iterator. More...

#include <AmIteratorGrid.h>

Inheritance diagram for Pscf::Pspg::AmIteratorGrid< D >:
Pscf::AmIteratorTmpl< Iterator< D >, FieldCUDA >

Public Member Functions

 AmIteratorGrid (System< D > &system)
 Constructor. More...
 
 ~AmIteratorGrid ()
 Destructor. More...
 
void readParameters (std::istream &in)
 Read all parameters and initialize. More...
 
- Public Member Functions inherited from Pscf::AmIteratorTmpl< Iterator< D >, FieldCUDA >
 AmIteratorTmpl ()
 Constructor. More...
 
 ~AmIteratorTmpl ()
 Destructor. More...
 
void readParameters (std::istream &in)
 Read all parameters and initialize. More...
 
int solve (bool isContinuation=false)
 Iterate to a solution. More...
 

Protected Member Functions

void setup (bool isContinuation)
 Setup iterator just before entering iteration loop. More...
 
template<typename Type >
ScalarParam< Type > & readOptional (std::istream &in, const char *label, Type &value)
 Add and read a new optional ScalarParam < Type > object. More...
 
- Protected Member Functions inherited from Pscf::AmIteratorTmpl< Iterator< D >, FieldCUDA >
void setMaxItr (int maxItr)
 Set value of maxItr. More...
 
void setMaxHist (int maxHist)
 Set value of maxHist (number of retained previous states) More...
 
void setErrorType (std::string errorType)
 Set and validate value of errorType string. More...
 
void readErrorType (std::istream &in)
 Read and validate the optional errorType string parameter. More...
 
virtual bool isValidErrorType ()
 Checks if a string is a valid error type. More...
 
virtual double norm (FieldCUDA const &hist)
 Find the L2 norm of a vector. More...
 
void allocateAM ()
 Allocate memory required by AM algorithm, if necessary. More...
 
virtual void clear ()
 Clear information about history. More...
 
virtual void setup (bool isContinuation)
 Initialize just before entry to iterative loop. More...
 
virtual double computeError (int verbose)
 Compute and return error used to test for convergence. More...
 
FieldCUDA const & residual () const
 Return the current residual vector by const reference. More...
 
FieldCUDA const & field () const
 Return the current field or state vector by const reference. More...
 
int verbose () const
 Verbosity level, allowed values 0, 1, or 2. More...
 
bool isAllocatedAM () const
 Have data structures required by the AM algorithm been allocated? More...
 
ScalarParam< Type > & read (std::istream &in, const char *label, Type &value)
 Add and read a new required ScalarParam < Type > object. More...
 
ScalarParam< Type > & readOptional (std::istream &in, const char *label, Type &value)
 Add and read a new optional ScalarParam < Type > object. More...
 

Additional Inherited Members

- Protected Attributes inherited from Pscf::AmIteratorTmpl< Iterator< D >, FieldCUDA >
std::string errorType_
 Type of error criterion used to test convergence. More...
 

Detailed Description

template<int D>
class Pscf::Pspg::AmIteratorGrid< D >

Pspg implementation of the Anderson Mixing iterator.

Definition at line 30 of file AmIteratorGrid.h.

Constructor & Destructor Documentation

◆ AmIteratorGrid()

template<int D>
Pscf::Pspg::AmIteratorGrid< D >::AmIteratorGrid ( System< D > &  system)

Constructor.

Parameters
systemparent system object

Definition at line 24 of file AmIteratorGrid.tpp.

◆ ~AmIteratorGrid()

Destructor.

Definition at line 30 of file AmIteratorGrid.tpp.

Member Function Documentation

◆ readParameters()

template<int D>
void Pscf::Pspg::AmIteratorGrid< D >::readParameters ( std::istream &  in)

Read all parameters and initialize.

Parameters
ininput filestream

Definition at line 35 of file AmIteratorGrid.tpp.

◆ setup()

template<int D>
void Pscf::Pspg::AmIteratorGrid< D >::setup ( bool  isContinuation)
protectedvirtual

Setup iterator just before entering iteration loop.

Parameters
isContinuationIs this a continuation within a sweep?

Reimplemented from Pscf::AmIteratorTmpl< Iterator< D >, FieldCUDA >.

Definition at line 57 of file AmIteratorGrid.tpp.

◆ readOptional()

template<int D>
template<typename Type >
ScalarParam< Type > & Util::ParamComposite::readOptional ( std::istream &  in,
const char *  label,
Type &  value 
)
inlineprotected

Add and read a new optional ScalarParam < Type > object.

This is equivalent to ScalarParam<Type>(in, label, value, false).

Parameters
ininput stream for reading
labelLabel string
valuereference to new ScalarParam< Type >

Definition at line 319 of file ParamComposite.h.


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