Memosa-FVM  0.2
VacancyModelOptions< T > Struct Template Reference

#include <VacancyBC.h>

Inheritance diagram for VacancyModelOptions< T >:
Collaboration diagram for VacancyModelOptions< T >:

Public Member Functions

 VacancyModelOptions ()
 
LinearSolvergetLinearSolver ()
 
- Public Member Functions inherited from FloatVarDict< T >
bool hasVar (const string varName) const
 
operator[] (const string varName) const
 
bool isField (const string varName) const
 
FieldgetField (const string varName) const
 
FloatVal< T > getVal (const string varName) const
 

Public Attributes

double relativeTolerance
 
double absoluteTolerance
 
bool useCentralDifference
 
LinearSolverlinearSolver
 
bool transient
 
int timeDiscretizationOrder
 

Additional Inherited Members

- Public Types inherited from FloatVarDict< T >
typedef map< string, FloatVal
< T > > 
T_Parent
 
- Protected Member Functions inherited from FloatVarDict< T >
void defineVar (const string varName, const T defaultValue)
 

Detailed Description

template<class T>
struct VacancyModelOptions< T >

Definition at line 35 of file VacancyBC.h.

Constructor & Destructor Documentation

template<class T>
VacancyModelOptions< T >::VacancyModelOptions ( )
inline

Definition at line 37 of file VacancyBC.h.

References VacancyModelOptions< T >::absoluteTolerance, FloatVarDict< T >::defineVar(), VacancyModelOptions< T >::linearSolver, VacancyModelOptions< T >::relativeTolerance, VacancyModelOptions< T >::timeDiscretizationOrder, and VacancyModelOptions< T >::useCentralDifference.

38  {
39  this->defineVar("initialConcentration",T(300.0));
40  this->defineVar("timeStep", T(1e-7));
41  this->relativeTolerance=1e-8;
42  this->absoluteTolerance=1e-16;
43  this->linearSolver = 0;
44  this->useCentralDifference=false;
45  this->transient=false;
46  this->timeDiscretizationOrder = 1;
47  }
double absoluteTolerance
Definition: VacancyBC.h:49
int timeDiscretizationOrder
Definition: VacancyBC.h:53
void defineVar(const string varName, const T defaultValue)
Definition: FloatVarDict.h:94
bool useCentralDifference
Definition: VacancyBC.h:50
LinearSolver * linearSolver
Definition: VacancyBC.h:51
double relativeTolerance
Definition: VacancyBC.h:48

Member Function Documentation

template<class T>
LinearSolver& VacancyModelOptions< T >::getLinearSolver ( )
inline

Definition at line 55 of file VacancyBC.h.

References VacancyModelOptions< T >::linearSolver, LinearSolver::nMaxIterations, LinearSolver::relativeTolerance, and LinearSolver::verbosity.

56  {
57  if (this->linearSolver == 0)
58  {
59  LinearSolver* ls(new AMG());
60  ls->relativeTolerance = 1e-1;
61  ls->nMaxIterations = 20;
62  ls->verbosity=0;
63  this->linearSolver = ls;
64  }
65  return *this->linearSolver ;
66  }
Definition: AMG.h:27
LinearSolver * linearSolver
Definition: VacancyBC.h:51

Member Data Documentation

template<class T>
double VacancyModelOptions< T >::absoluteTolerance

Definition at line 49 of file VacancyBC.h.

Referenced by VacancyModelOptions< T >::VacancyModelOptions().

template<class T>
LinearSolver* VacancyModelOptions< T >::linearSolver
template<class T>
double VacancyModelOptions< T >::relativeTolerance

Definition at line 48 of file VacancyBC.h.

Referenced by VacancyModelOptions< T >::VacancyModelOptions().

template<class T>
int VacancyModelOptions< T >::timeDiscretizationOrder

Definition at line 53 of file VacancyBC.h.

Referenced by VacancyModelOptions< T >::VacancyModelOptions().

template<class T>
bool VacancyModelOptions< T >::transient

Definition at line 52 of file VacancyBC.h.

template<class T>
bool VacancyModelOptions< T >::useCentralDifference

Definition at line 50 of file VacancyBC.h.

Referenced by VacancyModelOptions< T >::VacancyModelOptions().


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