Grid 0.7.0
ConjugateGradientReliableUpdate< FieldD, FieldF, type, type > Class Template Reference

#include <ConjugateGradientReliableUpdate.h>

Inheritance diagram for ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >:
LinearFunction< FieldD >

Public Member Functions

 ConjugateGradientReliableUpdate (RealD tol, Integer maxit, RealD _delta, GridBase *_sp_grid, LinearOperatorBase< FieldF > &_Linop_f, LinearOperatorBase< FieldD > &_Linop_d, bool err_on_no_conv=true)
void setFallbackLinop (LinearOperatorBase< FieldF > &_Linop_fallback, const RealD _fallback_transition_tol)
void operator() (const FieldD &src, FieldD &psi)

Data Fields

bool ErrorOnNoConverge
RealD Tolerance
Integer MaxIterations
Integer IterationsToComplete
Integer ReliableUpdatesPerformed
bool DoFinalCleanup
Integer IterationsToCleanup
LinearOperatorBase< FieldF > & Linop_f
LinearOperatorBase< FieldD > & Linop_d
GridBaseSinglePrecGrid
RealD Delta
LinearOperatorBase< FieldF > * Linop_fallback
RealD fallback_transition_tol

Detailed Description

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
class ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >

Definition at line 36 of file ConjugateGradientReliableUpdate.h.

Constructor & Destructor Documentation

◆ ConjugateGradientReliableUpdate()

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::ConjugateGradientReliableUpdate ( RealD tol,
Integer maxit,
RealD _delta,
GridBase * _sp_grid,
LinearOperatorBase< FieldF > & _Linop_f,
LinearOperatorBase< FieldD > & _Linop_d,
bool err_on_no_conv = true )
inline

Member Function Documentation

◆ setFallbackLinop()

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
void ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::setFallbackLinop ( LinearOperatorBase< FieldF > & _Linop_fallback,
const RealD _fallback_transition_tol )
inline

Definition at line 72 of file ConjugateGradientReliableUpdate.h.

References fallback_transition_tol, and Linop_fallback.

◆ operator()()

Field Documentation

◆ ErrorOnNoConverge

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
bool ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::ErrorOnNoConverge

◆ Tolerance

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
RealD ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::Tolerance

◆ MaxIterations

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
Integer ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::MaxIterations

◆ IterationsToComplete

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
Integer ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::IterationsToComplete

Definition at line 42 of file ConjugateGradientReliableUpdate.h.

Referenced by operator()().

◆ ReliableUpdatesPerformed

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
Integer ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::ReliableUpdatesPerformed

Definition at line 43 of file ConjugateGradientReliableUpdate.h.

Referenced by operator()().

◆ DoFinalCleanup

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
bool ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::DoFinalCleanup

◆ IterationsToCleanup

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
Integer ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::IterationsToCleanup

Definition at line 46 of file ConjugateGradientReliableUpdate.h.

Referenced by operator()().

◆ Linop_f

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
LinearOperatorBase<FieldF>& ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::Linop_f

◆ Linop_d

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
LinearOperatorBase<FieldD>& ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::Linop_d

◆ SinglePrecGrid

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
GridBase* ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::SinglePrecGrid

◆ Delta

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
RealD ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::Delta

◆ Linop_fallback

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
LinearOperatorBase<FieldF>* ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::Linop_fallback

◆ fallback_transition_tol

template<class FieldD, class FieldF, typename std::enable_if< getPrecision< FieldD >::value==2, int >::type = 0, typename std::enable_if< getPrecision< FieldF >::value==1, int >::type = 0>
RealD ConjugateGradientReliableUpdate< FieldD, FieldF, type, type >::fallback_transition_tol

Definition at line 55 of file ConjugateGradientReliableUpdate.h.

Referenced by operator()(), and setFallbackLinop().


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