Memosa-FVM  0.2
FloatVarDict< T > Class Template Reference

#include <FloatVarDict.h>

Inherits map< string, FloatVal< T > >.

Inherited by BatteryModelOptions< T >, BatteryPotentialBC< T >, BatteryPotentialVC< T >, BatterySpeciesBC< T >, BatterySpeciesVC< T >, BatteryThermalBC< T >, BatteryThermalVC< T >, COMETBC< T >, COMETBC< T >, COMETModelOptions< T >, COMETModelOptions< T >, COMETVC< T >, ContactModelConstants< T >, ElectricBC< T >, ElectricModelConstants< T >, ElectricModelOptions< T >, ElectricVC< T >, FlowBC< T >, FlowModelOptions< T >, FlowVC< T >, FractureBC< T >, FractureModelOptions< T >, FractureVC< T >, IdealGasVC< T >, KeBC< T >, KeModelOptions< T >, KeVC< T >, KineticBC< T >, KineticModelOptions< T >, KineticVC< T >, MovingMeshModelOptions< T >, PhononBC< T >, PhononModelOptions< T >, PlateBC< T >, PlateModelOptions< T >, PlateVC< T >, RosselandVC< T >, SpeciesBC< T >, SpeciesModelOptions< T >, SpeciesVC< T >, StructureBC< T >, StructureModelOptions< T >, StructureVC< T >, ThermalBC< T >, ThermalModelOptions< T >, ThermalVC< T >, VacancyBC< T >, VacancyModelOptions< T >, and VacancyVC< T >.

Collaboration diagram for FloatVarDict< T >:

Public Types

typedef map< string, FloatVal
< T > > 
T_Parent
 

Public Member Functions

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
 

Protected Member Functions

void defineVar (const string varName, const T defaultValue)
 

Detailed Description

template<typename T>
class FloatVarDict< T >

A dictionary for specifying floating point inputs – used for boundary conditions as well as model inputs. Derived classes define the keys and default values.

Definition at line 45 of file FloatVarDict.h.

Member Typedef Documentation

template<typename T>
typedef map<string,FloatVal<T> > FloatVarDict< T >::T_Parent

Definition at line 49 of file FloatVarDict.h.

Member Function Documentation

template<typename T>
void FloatVarDict< T >::defineVar ( const string  varName,
const T  defaultValue 
)
inlineprotected

Definition at line 94 of file FloatVarDict.h.

Referenced by BatteryModelOptions< T >::BatteryModelOptions(), BatteryPotentialBC< T >::BatteryPotentialBC(), BatteryPotentialVC< T >::BatteryPotentialVC(), BatterySpeciesBC< T >::BatterySpeciesBC(), BatterySpeciesVC< T >::BatterySpeciesVC(), BatteryThermalBC< T >::BatteryThermalBC(), BatteryThermalVC< T >::BatteryThermalVC(), COMETBC< T >::COMETBC(), COMETModelOptions< X >::COMETModelOptions(), COMETVC< T >::COMETVC(), ContactModelConstants< T >::ContactModelConstants(), ElectricBC< T >::ElectricBC(), ElectricModelConstants< T_Scalar >::ElectricModelConstants(), ElectricModelOptions< T >::ElectricModelOptions(), ElectricVC< T >::ElectricVC(), FlowBC< T >::FlowBC(), FlowModelOptions< double >::FlowModelOptions(), FlowVC< T >::FlowVC(), FractureBC< T >::FractureBC(), FractureModelOptions< T >::FractureModelOptions(), FractureVC< T >::FractureVC(), IdealGasVC< T >::IdealGasVC(), KeBC< T >::KeBC(), KeModelOptions< T_Scalar >::KeModelOptions(), KeVC< T >::KeVC(), KineticBC< T >::KineticBC(), KineticModelOptions< X >::KineticModelOptions(), KineticVC< T >::KineticVC(), MovingMeshModelOptions< T >::MovingMeshModelOptions(), PhononBC< T >::PhononBC(), PhononModelOptions< X >::PhononModelOptions(), PlateBC< T >::PlateBC(), PlateModelOptions< T >::PlateModelOptions(), PlateVC< T >::PlateVC(), RosselandVC< T >::RosselandVC(), SpeciesBC< T >::SpeciesBC(), SpeciesModelOptions< T >::SpeciesModelOptions(), SpeciesVC< T >::SpeciesVC(), StructureBC< T >::StructureBC(), StructureModelOptions< T >::StructureModelOptions(), StructureVC< T >::StructureVC(), ThermalBC< T >::ThermalBC(), ThermalModelOptions< T >::ThermalModelOptions(), ThermalVC< T >::ThermalVC(), VacancyBC< T >::VacancyBC(), VacancyModelOptions< T >::VacancyModelOptions(), and VacancyVC< T >::VacancyVC().

95  {
96  this->insert(make_pair(varName,defaultValue));
97  }
template<typename T>
Field& FloatVarDict< T >::getField ( const string  varName) const
inline

Definition at line 77 of file FloatVarDict.h.

78  {
79  typename T_Parent::const_iterator pos = this->find(varName);
80  if (pos != this->end())
81  return *(pos->second.field);
82  throw CException("uknown var " + varName);
83  }
template<typename T>
bool FloatVarDict< T >::hasVar ( const string  varName) const
inline

Definition at line 51 of file FloatVarDict.h.

52  {
53  typename T_Parent::const_iterator pos = this->find(varName);
54  return pos != this->end();
55  }
template<typename T>
bool FloatVarDict< T >::isField ( const string  varName) const
inline

Definition at line 69 of file FloatVarDict.h.

70  {
71  typename T_Parent::const_iterator pos = this->find(varName);
72  if (pos != this->end())
73  return (pos->second.field!=0);
74  throw CException("uknown var " + varName);
75  }
template<typename T>
T FloatVarDict< T >::operator[] ( const string  varName) const
inline

Definition at line 57 of file FloatVarDict.h.

58  {
59  typename T_Parent::const_iterator pos = this->find(varName);
60  if (pos != this->end())
61  {
62  if (pos->second.field)
63  throw CException(varName + " value is a Field");
64  return pos->second.constant;
65  }
66  throw CException("uknown var " + varName);
67  }

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