NAME
ConvMonitor_prm - parameters for the ConvMonitor hierarchy
INCLUDE
include "ConvMonitor_prm.h"
SYNTAX
//-----------------------------------------------------------------------------
class ConvMonitor_prm : public HandleId
//-----------------------------------------------------------------------------
{
protected:
StringList subclasses;
static Handle(ConvMonitor_prm) master;
virtual ConvMonitor_prm* clone () { return new ConvMonitor_prm(); }
ConvMonitor_prm ();
public:
static ConvMonitor_prm* construct ();
virtual ~ConvMonitor_prm () {}
String monitor_tp;
Residual_type residual_tp; // Which residual should be monitored ?
real conv_tolerance; // max value in convergence tests
Norm_type norm_tp; // type of norm (max, l2 etc)
bool monitor; // True if history plot is needed
bool runtime_plot; // True if run time history plot is needed
bool criterion; // True if convergence test is needed
bool append; // True if appended at end of list
ConvMon_Relop relop; // Relation operator for criterions
bool use_eig_info; // True if eigenvalue scaling is preferred
bool rel_to_rhs; // True if basevalue uses (prec.) rhs
int chunk_size; // size of history allocation block
real user_base; // user-defined base value (if appropriate)
Handle(LinEqVector) ref_sol; // reference solution
static void defineStatic (MenuSystem& menu, int level = MAIN);
static void defineStatic (MenuSystem& menu, int level, int index);
void scan (MenuSystem& menu);
void scan (MenuSystem& menu, int index);
void define (MenuSystem& menu, int level = MAIN)
{ defineStatic (menu, level); }
void define (MenuSystem& menu, int level, int index)
{ defineStatic (menu, level, index); }
void print (Os os) const;
bool ok () const { return monitor_tp.ok(); }
virtual ConvMonitor* create () const;
const StringList& hier () const { return subclasses; }
static const StringList& hierStatic () { return master->hier(); }
static void registerPrmSubclass (ConvMonitor_prm& sc)
{ master.rebind (sc); }
static void unregisterPrmSubclass ()
{ master.rebind (new ConvMonitor_prm()); }
};
KEYWORDS
linear systems, parameters, initialization
DESCRIPTION
The class contains all parameters needed for initialization of an
object derived from ConvMonitor.
SEE ALSO
class ConvMonitor.
DEVELOPED BY
SINTEF Applied Mathematics, Oslo, Norway, and University of Oslo,
Dept. of Mathematics, Norway
AUTHOR
Are Magnus Bruaset, SINTEF Applied Mathematics.