Memosa-FVM  0.2
FlowModelOptions< T > Struct Template Reference

#include <FlowBC.h>

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

Public Member Functions

 FlowModelOptions ()
 
LinearSolvergetMomentumLinearSolver ()
 
LinearSolvergetPressureLinearSolver ()
 
- 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

bool printNormalizedResiduals
 
double momentumTolerance
 
double continuityTolerance
 
bool transient
 
bool turbulent
 
bool correctVelocity
 
int timeDiscretizationOrder
 
LinearSolvermomentumLinearSolver
 
LinearSolverpressureLinearSolver
 
LinearSolvercoupledLinearSolver
 
double cmu
 
double vk
 
double emp
 
bool incompressible
 

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 FlowModelOptions< T >

Definition at line 38 of file FlowBC.h.

Constructor & Destructor Documentation

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

Definition at line 40 of file FlowBC.h.

41  {
42  this->defineVar("initialXVelocity",T(0.0));
43  this->defineVar("initialYVelocity",T(0.0));
44  this->defineVar("initialZVelocity",T(0.0));
45  this->defineVar("initialPressure",T(0.0));
46  this->defineVar("momentumURF",T(0.7));
47  this->defineVar("velocityURF",T(1.0));
48  this->defineVar("pressureURF",T(0.3));
49  this->defineVar("timeStep",T(0.1));
50  this->defineVar("operatingPressure",T(101325.0));
51  this->defineVar("operatingTemperature",T(300.0));
52  this->defineVar("molecularWeight",T(28.966));
53 
54  this->momentumTolerance=1e-3;
55  this->continuityTolerance=1e-3;
56  this->printNormalizedResiduals = true;
57  this->transient = false;
58  this->correctVelocity = true;
60  this->momentumLinearSolver = 0;
61  this->pressureLinearSolver = 0;
62  this->coupledLinearSolver = 0;
63 
64  this->incompressible = true;
65  this->turbulent = false;
66  this->vk = 0.4187;
67  this->emp = 9.793;
68  this-> cmu = 0.09;
69 
70 
71  }
bool incompressible
Definition: FlowBC.h:86
double momentumTolerance
Definition: FlowBC.h:74
bool turbulent
Definition: FlowBC.h:77
double emp
Definition: FlowBC.h:85
LinearSolver * coupledLinearSolver
Definition: FlowBC.h:82
double cmu
Definition: FlowBC.h:83
void defineVar(const string varName, const T defaultValue)
Definition: FloatVarDict.h:94
LinearSolver * momentumLinearSolver
Definition: FlowBC.h:80
bool correctVelocity
Definition: FlowBC.h:78
int timeDiscretizationOrder
Definition: FlowBC.h:79
bool printNormalizedResiduals
Definition: FlowBC.h:73
double vk
Definition: FlowBC.h:84
double continuityTolerance
Definition: FlowBC.h:75
LinearSolver * pressureLinearSolver
Definition: FlowBC.h:81

Member Function Documentation

template<class T>
LinearSolver& FlowModelOptions< T >::getMomentumLinearSolver ( )
inline

Definition at line 88 of file FlowBC.h.

89  {
90  if (this->momentumLinearSolver == 0)
91  {
92  LinearSolver* ls(new AMG());
93  ls->relativeTolerance = 1e-1;
94  ls->nMaxIterations = 20;
95  ls->verbosity=0;
96  this->momentumLinearSolver = ls;
97  }
98  return *this->momentumLinearSolver ;
99  }
Definition: AMG.h:27
LinearSolver * momentumLinearSolver
Definition: FlowBC.h:80
template<class T>
LinearSolver& FlowModelOptions< T >::getPressureLinearSolver ( )
inline

Definition at line 101 of file FlowBC.h.

102  {
103  if (this->pressureLinearSolver == 0)
104  {
105  LinearSolver* ls(new AMG());
106  ls->relativeTolerance = 1e-1;
107  ls->nMaxIterations = 20;
108  ls->verbosity=0;
109  this->pressureLinearSolver = ls;
110  }
111  return *this->pressureLinearSolver ;
112  }
Definition: AMG.h:27
LinearSolver * pressureLinearSolver
Definition: FlowBC.h:81

Member Data Documentation

template<class T>
double FlowModelOptions< T >::cmu
template<class T>
double FlowModelOptions< T >::continuityTolerance

Definition at line 75 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
bool FlowModelOptions< T >::correctVelocity

Definition at line 78 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
LinearSolver* FlowModelOptions< T >::coupledLinearSolver

Definition at line 82 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
double FlowModelOptions< T >::emp
template<class T>
bool FlowModelOptions< T >::incompressible

Definition at line 86 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
LinearSolver* FlowModelOptions< T >::momentumLinearSolver
template<class T>
double FlowModelOptions< T >::momentumTolerance

Definition at line 74 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
LinearSolver* FlowModelOptions< T >::pressureLinearSolver
template<class T>
bool FlowModelOptions< T >::printNormalizedResiduals

Definition at line 73 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

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

Definition at line 79 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

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

Definition at line 76 of file FlowBC.h.

template<class T>
bool FlowModelOptions< T >::turbulent

Definition at line 77 of file FlowBC.h.

Referenced by FlowModelOptions< double >::FlowModelOptions().

template<class T>
double FlowModelOptions< T >::vk

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