Memosa-FVM  0.2
KineticModelOptions< T > Struct Template Reference

#include <KineticBC.h>

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

Public Member Functions

 KineticModelOptions ()
 
LinearSolvergetKineticLinearSolver ()
 
- 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 Tolerance
 
bool transient
 
bool ibm_enable
 
double BoltzmannConstant
 
double Planck
 
double relativeTolerance
 
double absoluteTolerance
 
double epsilon_ES
 
double pi
 
int NewtonsMethod_ktrial
 
int timeDiscretizationOrder
 
bool CentralDifference
 
LinearSolverKineticLinearSolver
 
int printCellNumber
 
int fgamma
 
int Knq_direction
 
double Prandtl
 
double SpHeatRatio
 

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

Definition at line 48 of file KineticBC.h.

Constructor & Destructor Documentation

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

Definition at line 50 of file KineticBC.h.

51  {
52  this->defineVar("initialXVelocity",T(0.0));
53  this->defineVar("initialYVelocity",T(0.0));
54  this->defineVar("initialZVelocity",T(0.0));
55  this->defineVar("initialPressure",T(0.0));
56  this->defineVar("momentumURF",T(0.7));
57  this->defineVar("velocityURF",T(1.0));
58  this->defineVar("pressureURF",T(0.3));
59  this->defineVar("timeStep",T(1E-3));
60 
61  this->defineVar("rho_init",T(9.28E-6));
62  this->defineVar("T_init",T(273.15));
63  this->defineVar("nonDimLt",T(1.0));
64  this->defineVar("nonDimLx",T(1.0));
65  this->defineVar("nonDimLy",T(1.0));
66  this->defineVar("nonDimLz",T(1.0));
67 
68 
69  this->defineVar("operatingPressure",T(101325.0));
70  this->defineVar("operatingTemperature",T(300.0));
71 
72  this->defineVar("molecularWeight",T(40.0));
73  this ->defineVar("Tmuref",T(273.15));
74  this ->defineVar("muref",T(2.117e-5));
75  this ->defineVar("mu_w",T(0.81));
76  this->Prandtl=2.0/3.0;
77  this->SpHeatRatio=5.0/3.0;
78  // Argon 2.117e-5,0.81
79  // Helium 1.865e-5,0.66
80  // Air 1.7116e-5, 0.74
81  // Nitrogen 1.781e-5,
82 
83  // Argon, Helium Pr=2/3, gamma=5/3
84  // Air, Nitrogen Pr=3/4, gamma=7/5
85 
86  this->Tolerance=1e-4;
87  this->printNormalizedResiduals = true;
88  this->transient = false;
89  this->ibm_enable = false;
90 
91  this->fgamma=2;
92 
93 
95  this->CentralDifference=false;
96  this->KineticLinearSolver = 0;
97 
98  this-> printCellNumber=0;
99  this->defineVar("printDirectionNumber",545);
100 
101  this->NewtonsMethod_ktrial=50;
102  this->relativeTolerance=1e-14;
103  this->absoluteTolerance=1e-22;
104 
105  this->BoltzmannConstant=1.38e-23;
106  this->Planck=6.26068E-34;
107  this->epsilon_ES=1e-50;
108  this->pi=acos(-1.0);//3.14159;
109 
110  this->Knq_direction=0;
111  //used in Newton's Method for Equilibrium distribution function
112  this->defineVar("ToleranceX",T(1e-8));
113  this->defineVar("ToleranceF",T(1e-16));
114  }
double BoltzmannConstant
Definition: KineticBC.h:121
bool printNormalizedResiduals
Definition: KineticBC.h:116
double relativeTolerance
Definition: KineticBC.h:124
void defineVar(const string varName, const T defaultValue)
Definition: FloatVarDict.h:94
LinearSolver * KineticLinearSolver
Definition: KineticBC.h:134
double absoluteTolerance
Definition: KineticBC.h:125

Member Function Documentation

template<class T>
LinearSolver& KineticModelOptions< T >::getKineticLinearSolver ( )
inline

Definition at line 142 of file KineticBC.h.

143  {
144  if (this->KineticLinearSolver == 0)
145  {
146  LinearSolver* ls(new AMG());
147  ls->relativeTolerance = 1e-15;
148  ls->nMaxIterations = 100;
149  ls->verbosity=0;
150  this->KineticLinearSolver = ls;
151  }
152  return *this->KineticLinearSolver ;
153  }
Definition: AMG.h:27
LinearSolver * KineticLinearSolver
Definition: KineticBC.h:134

Member Data Documentation

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

Definition at line 125 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
double KineticModelOptions< T >::BoltzmannConstant

Definition at line 121 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
bool KineticModelOptions< T >::CentralDifference

Definition at line 132 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
int KineticModelOptions< T >::fgamma

Definition at line 136 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
bool KineticModelOptions< T >::ibm_enable

Definition at line 119 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
LinearSolver* KineticModelOptions< T >::KineticLinearSolver
template<class T>
int KineticModelOptions< T >::Knq_direction

Definition at line 137 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
int KineticModelOptions< T >::NewtonsMethod_ktrial

Definition at line 130 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
double KineticModelOptions< T >::Planck

Definition at line 122 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
double KineticModelOptions< T >::Prandtl

Definition at line 138 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
int KineticModelOptions< T >::printCellNumber

Definition at line 135 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
bool KineticModelOptions< T >::printNormalizedResiduals

Definition at line 116 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
double KineticModelOptions< T >::relativeTolerance

Definition at line 124 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

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

Definition at line 131 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

template<class T>
double KineticModelOptions< T >::Tolerance

Definition at line 117 of file KineticBC.h.

Referenced by KineticModelOptions< X >::KineticModelOptions().

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

Definition at line 118 of file KineticBC.h.


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