Index

NAME

CMAbsTrueResidual  - absolute convergence monitor for true resid­
ual vectors


INCLUDE

include "ConvMonitor.h"

SYNTAX

 //-----------------------------------------------------------------------------
 class CMAbsTrueResidual : public ConvMonitor
 //-----------------------------------------------------------------------------
 {

   friend class ConvMonitorList;

 protected:

   Residual_type residual_tp;

 public:

   CMAbsTrueResidual (const ConvMonitor_prm& p)
     : ConvMonitor (p) { residual_tp = p.residual_tp; }

   CMAbsTrueResidual (const real conv_tolerance = 1.0e-4,
                      const Residual_type residual_tp = ORIGINAL_RES,
                      const Norm_type norm_tp = l2,
                      const int chunk_size = 100);

   ~CMAbsTrueResidual () {}

   virtual void init (Handle(LinEqCommBlk)& communication);
   virtual bool satisfied ();

   virtual void performance (ConvStatistics& convStat);

   virtual String description () const;

   virtual void print (Os os) const;

   CLASS_INFO
 };



KEYWORDS

iterative methods, absolute stopping criterion, convergence moni­
tor, true residual



DESCRIPTION

Monitors  the  behaviour  of  a  true  residual  obtained  from a
LinEqSystem procedure residual and possibly one of the  precondi­
tioning  operations  applyLeftPrec  or  applyPrec,  i.e. internal
storage is needed.  The convergence test  is  absolute,  ,  where
`$v^{k}$$$$r^{k}$$s^{k}$  or   and  S  is a scaling obtained from
spectral properties (if this information is available).



CONSTRUCTORS AND INITIALIZATION

Same as ConvMonitor.  Note that the parameter residual_tp  deter­
mines  whether  the  monitor uses the original residual, the left
preconditioned one or the pseudo-residual.



MEMBER FUNCTIONS

Same as ConvMonitor.


SEE ALSO

class ConvMonitor, class IterativeSolver, class  ConvMonitorList.


AUTHOR

Are Magnus Bruaset, SINTEF Applied Mathematics.