www.mooseframework.org
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
TabulatedFluidProperties Class Referenceabstract

Class for fluid properties read from a tabulation in a file. More...

#include <TabulatedFluidProperties.h>

Inheritance diagram for TabulatedFluidProperties:
[legend]

Public Types

typedef DataFileName DataFileParameterType
 

Public Member Functions

 TabulatedFluidProperties (const InputParameters &parameters)
 
virtual void initialSetup () override
 
virtual void constructInterpolation ()=0
 
virtual std::string fluidName () const override
 
virtual Real molarMass () const override
 Fluid name. More...
 
virtual Real rho_from_p_T (Real pressure, Real temperature) const override
 
virtual void rho_from_p_T (Real pressure, Real temperature, Real &rho, Real &drho_dp, Real &drho_dT) const override
 
virtual void rho_from_p_T (const ADReal &pressure, const ADReal &temperature, ADReal &rho, ADReal &drho_dp, ADReal &drho_dT) const override
 
virtual Real rho_from_p_s (Real p, Real s) const override
 
virtual void rho_from_p_s (Real p, Real s, Real &rho, Real &drho_dp, Real &drho_ds) const override
 
virtual Real v_from_p_T (Real pressure, Real temperature) const override
 
virtual void v_from_p_T (Real pressure, Real temperature, Real &v, Real &dv_dp, Real &dv_dT) const override
 
virtual Real e_from_p_T (Real pressure, Real temperature) const override
 
virtual void e_from_p_T (Real pressure, Real temperature, Real &e, Real &de_dp, Real &de_dT) const override
 
virtual Real e_from_p_rho (Real pressure, Real rho) const override
 
virtual void e_from_p_rho (Real pressure, Real rho, Real &e, Real &de_dp, Real &de_drho) const override
 
virtual Real T_from_p_rho (Real pressure, Real rho) const
 
virtual void T_from_p_rho (Real pressure, Real rho, Real &T, Real &dT_dp, Real &dT_drho) const
 
virtual Real h_from_p_T (Real p, Real T) const override
 
virtual void h_from_p_T (Real pressure, Real temperature, Real &h, Real &dh_dp, Real &dh_dT) const override
 
virtual Real mu_from_p_T (Real pressure, Real temperature) const override
 
virtual void mu_from_p_T (Real pressure, Real temperature, Real &mu, Real &dmu_dp, Real &dmu_dT) const override
 
virtual Real cp_from_p_T (Real pressure, Real temperature) const override
 
virtual void cp_from_p_T (Real pressure, Real temperature, Real &cp, Real &dcp_dp, Real &dcp_dT) const override
 
virtual Real cv_from_p_T (Real pressure, Real temperature) const override
 
virtual void cv_from_p_T (Real pressure, Real temperature, Real &cv, Real &dcv_dp, Real &dcv_dT) const override
 
virtual Real c_from_p_T (Real pressure, Real temperature) const override
 
virtual void c_from_p_T (Real pressure, Real temperature, Real &c, Real &dc_dp, Real &dc_dT) const override
 
virtual Real k_from_p_T (Real pressure, Real temperature) const override
 
virtual void k_from_p_T (Real pressure, Real temperature, Real &k, Real &dk_dp, Real &dk_dT) const override
 
virtual Real s_from_p_T (Real pressure, Real temperature) const override
 
virtual void s_from_p_T (Real p, Real T, Real &s, Real &ds_dp, Real &ds_dT) const override
 
virtual std::vector< RealhenryCoefficients () const override
 Henry's law coefficients for dissolution in water. More...
 
virtual Real vaporPressure (Real temperature) const override
 Vapor pressure. More...
 
virtual void vaporPressure (Real temperature, Real &psat, Real &dpsat_dT) const override
 
virtual Real p_from_v_e (Real v, Real e) const override
 Derivatives like dc_dv & dc_de are computed using the chain rule dy/dx(p,T) = dy/dp * dp/dx + dy/dT * dT/dx where y = c, cp, cv... More...
 
virtual void p_from_v_e (Real v, Real e, Real &p, Real &dp_dv, Real &dp_de) const override
 
virtual Real T_from_v_e (Real v, Real e) const override
 
virtual void T_from_v_e (Real v, Real e, Real &T, Real &dT_dv, Real &dT_de) const override
 
virtual Real c_from_v_e (Real v, Real e) const override
 
virtual void c_from_v_e (Real v, Real e, Real &c, Real &dc_dv, Real &dc_de) const override
 
virtual Real cp_from_v_e (Real v, Real e) const override
 
virtual void cp_from_v_e (Real v, Real e, Real &cp, Real &dcp_dv, Real &dcp_de) const override
 
virtual Real cv_from_v_e (Real v, Real e) const override
 
virtual void cv_from_v_e (Real v, Real e, Real &cv, Real &dcv_dv, Real &dcv_de) const override
 
virtual Real mu_from_v_e (Real v, Real e) const override
 
virtual void mu_from_v_e (Real v, Real e, Real &mu, Real &dmu_dv, Real &dmu_de) const override
 
virtual Real k_from_v_e (Real v, Real e) const override
 
virtual void k_from_v_e (Real v, Real e, Real &k, Real &dk_dv, Real &dk_de) const override
 
virtual Real g_from_v_e (Real v, Real e) const override
 
virtual Real e_from_v_h (Real v, Real h) const override
 
virtual void e_from_v_h (Real v, Real h, Real &e, Real &de_dv, Real &de_dh) const override
 
virtual Real T_from_h_s (Real h, Real s) const
 
virtual Real T_from_p_s (Real p, Real s) const
 
virtual void T_from_p_s (Real p, Real s, Real &T, Real &dT_dp, Real &dT_ds) const
 
virtual Real T_from_h_p (Real h, Real pressure) const override
 
virtual Real s_from_h_p (Real h, Real pressure) const override
 
virtual Real criticalPressure () const
 Critical pressure. More...
 
virtual Real criticalTemperature () const
 Critical temperature. More...
 
virtual Real criticalDensity () const
 Critical density. More...
 
virtual Real criticalInternalEnergy () const
 Critical specific internal energy. More...
 
virtual Real triplePointPressure () const
 Triple point pressure. More...
 
virtual Real triplePointTemperature () const
 Triple point temperature. More...
 
virtual Real e_spndl_from_v (Real v) const
 Specific internal energy from temperature and specific volume. More...
 
virtual void v_e_spndl_from_T (Real T, Real &v, Real &e) const
 Specific internal energy from temperature and specific volume. More...
 
DualReal vaporPressure (const DualReal &T) const
 
virtual Real vaporTemperature (Real p) const
 Vapor temperature. More...
 
virtual void vaporTemperature (Real p, Real &Tsat, Real &dTsat_dp) const
 
DualReal vaporTemperature (const DualReal &p) const
 
template<typename CppType >
void v_e_from_p_T (const CppType &p, const CppType &T, CppType &v, CppType &e) const
 
template<typename CppType >
void v_e_from_p_T (const CppType &p, const CppType &T, CppType &v, CppType &dv_dp, CppType &dv_dT, CppType &e, CppType &de_dp, CppType &de_dT) const
 
virtual void rho_mu_from_p_T (Real p, Real T, Real &rho, Real &mu) const
 Combined methods. More...
 
virtual void rho_mu_from_p_T (Real p, Real T, Real &rho, Real &drho_dp, Real &drho_dT, Real &mu, Real &dmu_dp, Real &dmu_dT) const
 
virtual void rho_mu_from_p_T (const DualReal &p, const DualReal &T, DualReal &rho, DualReal &mu) const
 
virtual void rho_e_from_p_T (Real p, Real T, Real &rho, Real &drho_dp, Real &drho_dT, Real &e, Real &de_dp, Real &de_dT) const
 
template<typename CppType >
void p_T_from_v_e (const CppType &v, const CppType &e, Real p0, Real T0, CppType &p, CppType &T, bool &conversion_succeeded) const
 Determines (p,T) from (v,e) using Newton Solve in 2D Useful for conversion between different sets of state variables. More...
 
template<typename T >
void p_T_from_v_h (const T &v, const T &h, Real p0, Real T0, T &pressure, T &temperature, bool &conversion_succeeded) const
 Determines (p,T) from (v,h) using Newton Solve in 2D Useful for conversion between different sets of state variables. More...
 
template<typename T >
void p_T_from_h_s (const T &h, const T &s, Real p0, Real T0, T &pressure, T &temperature, bool &conversion_succeeded) const
 Determines (p,T) from (h,s) using Newton Solve in 2D Useful for conversion between different sets of state variables. More...
 
template<>
std::pair< Real, RealmakeZeroAndOne (const Real &)
 
virtual void execute () final
 
virtual void initialize () final
 
virtual void finalize () final
 
virtual void threadJoin (const UserObject &) final
 
virtual void subdomainSetup () final
 
bool needThreadedCopy () const override final
 
SubProblemgetSubProblem () const
 
bool shouldDuplicateInitialExecution () const
 
virtual Real spatialValue (const Point &) const
 
virtual const std::vector< Point > spatialPoints () const
 
void gatherSum (T &value)
 
void gatherMax (T &value)
 
void gatherMin (T &value)
 
void gatherProxyValueMax (T1 &value, T2 &proxy)
 
void gatherProxyValueMin (T1 &value, T2 &proxy)
 
void setPrimaryThreadCopy (UserObject *primary)
 
UserObjectprimaryThreadCopy ()
 
std::set< UserObjectName > getDependObjects () const
 
const std::set< std::string > & getRequestedItems () override
 
const std::set< std::string > & getSuppliedItems () override
 
unsigned int systemNumber () const
 
virtual bool enabled () const
 
MooseAppgetMooseApp () const
 
const std::string & type () const
 
virtual const std::string & name () const
 
std::string typeAndName () const
 
std::string errorPrefix (const std::string &error_type) const
 
void callMooseError (std::string msg, const bool with_prefix) const
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 
const InputParametersparameters () const
 
MooseObjectName uniqueName () const
 
const TgetParam (const std::string &name) const
 
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 
const TgetRenamedParam (const std::string &old_name, const std::string &new_name) const
 
T getCheckedPointerParam (const std::string &name, const std::string &error_string="") const
 
bool isParamValid (const std::string &name) const
 
bool isParamSetByUser (const std::string &nm) const
 
void paramError (const std::string &param, Args... args) const
 
void paramWarning (const std::string &param, Args... args) const
 
void paramInfo (const std::string &param, Args... args) const
 
void connectControllableParams (const std::string &parameter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const
 
void mooseError (Args &&... args) const
 
void mooseErrorNonPrefixed (Args &&... args) const
 
void mooseWarning (Args &&... args) const
 
void mooseWarningNonPrefixed (Args &&... args) const
 
void mooseDeprecated (Args &&... args) const
 
void mooseInfo (Args &&... args) const
 
std::string getDataFileName (const std::string &param) const
 
std::string getDataFileNameByName (const std::string &name, const std::string *param=nullptr) const
 
virtual void timestepSetup ()
 
virtual void jacobianSetup ()
 
virtual void residualSetup ()
 
virtual void customSetup (const ExecFlagType &)
 
const ExecFlagEnumgetExecuteOnEnum () const
 
UserObjectName getUserObjectName (const std::string &param_name) const
 
const TgetUserObject (const std::string &param_name, bool is_dependency=true) const
 
const TgetUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const
 
const UserObjectgetUserObjectBase (const std::string &param_name, bool is_dependency=true) const
 
const UserObjectgetUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0)
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialProperty (const std::string &name, const unsigned int state=0)
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialProperty (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialProperty (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialProperty (const std::string &name, const unsigned int state=0)
 
const ADMaterialProperty< T > & getADMaterialProperty (const std::string &name, MaterialData &material_data)
 
const ADMaterialProperty< T > & getADMaterialProperty (const std::string &name)
 
const ADMaterialProperty< T > & getADMaterialProperty (const std::string &name)
 
const MaterialProperty< T > & getMaterialPropertyOld (const std::string &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOld (const std::string &name)
 
const MaterialProperty< T > & getMaterialPropertyOld (const std::string &name)
 
const MaterialProperty< T > & getMaterialPropertyOlder (const std::string &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOlder (const std::string &name)
 
const MaterialProperty< T > & getMaterialPropertyOlder (const std::string &name)
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state)
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 
const GenericMaterialProperty< T, is_ad > & getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 
const MaterialProperty< T > & getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data)
 
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name)
 
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name)
 
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > getBlockMaterialProperty (const MaterialPropertyName &name)
 
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialProperty (const std::string &name)
 
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialProperty ()
 
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialPropertyByName (const std::string &prop_name)
 
const MaterialProperty< T > & getZeroMaterialProperty (Ts... args)
 
std::set< SubdomainIDgetMaterialPropertyBlocks (const std::string &name)
 
std::vector< SubdomainName > getMaterialPropertyBlockNames (const std::string &name)
 
std::set< BoundaryIDgetMaterialPropertyBoundaryIDs (const std::string &name)
 
std::vector< BoundaryName > getMaterialPropertyBoundaryNames (const std::string &name)
 
void checkBlockAndBoundaryCompatibility (std::shared_ptr< MaterialBase > discrete)
 
std::unordered_map< SubdomainID, std::vector< MaterialBase *> > buildRequiredMaterials (bool allow_stateful=true)
 
void statefulPropertiesAllowed (bool)
 
bool getMaterialPropertyCalled () const
 
const std::unordered_set< unsigned int > & getMatPropDependencies () const
 
virtual void resolveOptionalProperties ()
 
const GenericMaterialProperty< T, is_ad > & getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state)
 
bool isImplicit ()
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
const GenericOptionalMaterialProperty< T, is_ad > & getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
const GenericOptionalMaterialProperty< T, is_ad > & getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
const OptionalMaterialProperty< T > & getOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
const OptionalMaterialProperty< T > & getOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
const OptionalADMaterialProperty< T > & getOptionalADMaterialProperty (const std::string &name)
 
const OptionalADMaterialProperty< T > & getOptionalADMaterialProperty (const std::string &name)
 
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOld (const std::string &name)
 
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOld (const std::string &name)
 
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOlder (const std::string &name)
 
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOlder (const std::string &name)
 
MaterialBasegetMaterial (const std::string &name)
 
MaterialBasegetMaterial (const std::string &name)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
bool hasMaterialProperty (const std::string &name)
 
bool hasMaterialProperty (const std::string &name)
 
bool hasMaterialPropertyByName (const std::string &name)
 
bool hasMaterialPropertyByName (const std::string &name)
 
bool hasADMaterialProperty (const std::string &name)
 
bool hasADMaterialProperty (const std::string &name)
 
bool hasADMaterialPropertyByName (const std::string &name)
 
bool hasADMaterialPropertyByName (const std::string &name)
 
bool hasGenericMaterialProperty (const std::string &name)
 
bool hasGenericMaterialProperty (const std::string &name)
 
bool hasGenericMaterialPropertyByName (const std::string &name)
 
bool hasGenericMaterialPropertyByName (const std::string &name)
 
const FunctiongetFunction (const std::string &name) const
 
const FunctiongetFunctionByName (const FunctionName &name) const
 
bool hasFunction (const std::string &param_name) const
 
bool hasFunctionByName (const FunctionName &name) const
 
bool isDefaultPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
bool hasPostprocessor (const std::string &param_name, const unsigned int index=0) const
 
bool hasPostprocessorByName (const PostprocessorName &name) const
 
std::size_t coupledPostprocessors (const std::string &param_name) const
 
const PostprocessorName & getPostprocessorName (const std::string &param_name, const unsigned int index=0) const
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
bool hasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 
bool hasVectorPostprocessor (const std::string &param_name) const
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name) const
 
const VectorPostprocessorName & getVectorPostprocessorName (const std::string &param_name) const
 
TgetSampler (const std::string &name)
 
SamplergetSampler (const std::string &name)
 
TgetSamplerByName (const SamplerName &name)
 
SamplergetSamplerByName (const SamplerName &name)
 
virtual void meshChanged ()
 
const std::vector< MooseVariableScalar *> & getCoupledMooseScalarVars ()
 
const std::set< TagID > & getScalarVariableCoupleableVectorTags () const
 
const std::set< TagID > & getScalarVariableCoupleableMatrixTags () const
 
PerfGraphperfGraph ()
 
const PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_name) const
 
bool isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const
 
bool isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const
 
const DistributiongetDistribution (const std::string &name) const
 
const TgetDistribution (const std::string &name) const
 
const DistributiongetDistribution (const std::string &name) const
 
const TgetDistribution (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const TgetDistributionByName (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const TgetDistributionByName (const std::string &name) const
 
const Parallel::Communicator & comm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 

Static Public Member Functions

static InputParameters validParams ()
 
static void sort (typename std::vector< T > &vector)
 
static void sortDFS (typename std::vector< T > &vector)
 
static void cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header)
 

Public Attributes

const ConsoleStream _console
 

Static Public Attributes

static const Real _R = 8.3144598
 Universal gas constant (J/mol/K) More...
 
static constexpr PropertyValue::id_type default_property_id
 
static constexpr PropertyValue::id_type zero_property_id
 
static constexpr auto SYSTEM
 
static constexpr auto NAME
 

Protected Member Functions

void writeTabulatedData (std::string file_name)
 Writes tabulated data to a file. More...
 
template<typename T >
void checkInputVariables (T &pressure, T &temperature) const
 Checks that the inputs are within the range of the tabulated data, and throws an error if they are not. More...
 
virtual void checkInitialGuess () const
 Checks initial guess for Newton Method. More...
 
virtual void generateTabulatedData ()
 Generates a table of fluid properties by looping over pressure and temperature and calculating properties using the FluidProperties UserObject _fp. More...
 
virtual void addPostprocessorDependencyHelper (const PostprocessorName &name) const override
 
virtual void addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &name) const override
 
virtual void addUserObjectDependencyHelper (const UserObject &uo) const override
 
void addReporterDependencyHelper (const ReporterName &reporter_name) override
 
const ReporterNamegetReporterName (const std::string &param_name) const
 
TdeclareRestartableData (const std::string &data_name, Args &&... args)
 
ManagedValue< TdeclareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
const TgetRestartableData (const std::string &data_name) const
 
TdeclareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
TdeclareRecoverableData (const std::string &data_name, Args &&... args)
 
TdeclareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args)
 
TdeclareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args)
 
std::string restartableName (const std::string &data_name) const
 
const TgetMeshProperty (const std::string &data_name, const std::string &prefix)
 
const TgetMeshProperty (const std::string &data_name)
 
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
bool hasMeshProperty (const std::string &data_name) const
 
bool hasMeshProperty (const std::string &data_name) const
 
std::string meshPropertyName (const std::string &data_name) const
 
bool isCoupledScalar (const std::string &var_name, unsigned int i=0) const
 
unsigned int coupledScalarComponents (const std::string &var_name) const
 
unsigned int coupledScalar (const std::string &var_name, unsigned int comp=0) const
 
Order coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 
const GenericVariableValue< is_ad > & coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const
 
const GenericVariableValue< false > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
const GenericVariableValue< true > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
const VariableValuecoupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 
const VariableValuecoupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 
const VariableValuecoupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const
 
const MooseVariableScalargetScalarVar (const std::string &var_name, unsigned int comp) const
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level) const
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const
 
std::string timedSectionName (const std::string &section_name) const
 
virtual void checkMaterialProperty (const std::string &name, const unsigned int state)
 
void markMatPropRequested (const std::string &)
 
MaterialPropertyName getMaterialPropertyName (const std::string &name) const
 
void checkExecutionStage ()
 
Moose::StateArg determineState () const
 
const TgetReporterValue (const std::string &param_name, const std::size_t time_index=0)
 
const TgetReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
const TgetReporterValue (const std::string &param_name, const std::size_t time_index=0)
 
const TgetReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
const TgetReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 
const TgetReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0)
 
const TgetReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 
const TgetReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0)
 
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
const GenericMaterialProperty< T, is_ad > * defaultGenericMaterialProperty (const std::string &name)
 
const GenericMaterialProperty< T, is_ad > * defaultGenericMaterialProperty (const std::string &name)
 
const MaterialProperty< T > * defaultMaterialProperty (const std::string &name)
 
const MaterialProperty< T > * defaultMaterialProperty (const std::string &name)
 
const ADMaterialProperty< T > * defaultADMaterialProperty (const std::string &name)
 
const ADMaterialProperty< T > * defaultADMaterialProperty (const std::string &name)
 
void flagInvalidSolutionInternal (InvalidSolutionID _invalid_solution_id) const
 
InvalidSolutionID registerInvalidSolutionInternal (const std::string &message) const
 

Static Protected Member Functions

template<typename T , typename Functor >
static void xyDerivatives (const T x, const T &y, T &z, T &dz_dx, T &dz_dy, const Functor &z_from_x_y)
 Computes the dependent variable z and its derivatives with respect to the independent variables x and y using the simple two parameter z_from_x_y functor. More...
 
template<typename T >
static std::pair< T, TmakeZeroAndOne (const T &)
 Given a type example, this method returns zero and unity reperesentations of that type (first and second members of returned pair respectively) More...
 
static std::string meshPropertyName (const std::string &data_name, const std::string &prefix)
 

Protected Attributes

FileName _file_name
 File name of tabulated data file. More...
 
std::vector< Real_pressure
 Pressure vector. More...
 
std::vector< Real_temperature
 Temperature vector. More...
 
std::vector< std::vector< Real > > _properties
 Tabulated fluid properties. More...
 
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
 Vector of bi-dimensional interpolation of fluid properties. More...
 
Real _temperature_min
 Minimum temperature in tabulated data. More...
 
Real _temperature_max
 Maximum temperature in tabulated data. More...
 
Real _pressure_min
 Minimum pressure in tabulated data. More...
 
Real _pressure_max
 Maximum pressure in tabulated data. More...
 
unsigned int _num_T
 Number of temperature points in the tabulated data. More...
 
unsigned int _num_p
 Number of pressure points in the tabulated data. More...
 
const bool _save_file
 Whether to save a generated fluid properties file to disk. More...
 
const SinglePhaseFluidProperties *const _fp
 SinglePhaseFluidPropertiesPT UserObject. More...
 
const std::vector< std::string > _required_columns {"pressure", "temperature"}
 List of required column names to be read. More...
 
const std::vector< std::string > _property_columns
 List of possible property column names to be read. More...
 
MultiMooseEnum _interpolated_properties_enum
 Properties to be interpolated entered in the input file. More...
 
std::vector< std::string > _interpolated_properties
 List of properties to be interpolated. More...
 
bool _interpolate_density
 Set of flags to note whether a property is to be interpolated. More...
 
bool _interpolate_enthalpy
 
bool _interpolate_internal_energy
 
bool _interpolate_viscosity
 
bool _interpolate_k
 
bool _interpolate_c
 
bool _interpolate_cp
 
bool _interpolate_cv
 
bool _interpolate_entropy
 
unsigned int _density_idx
 Index of each property. More...
 
unsigned int _enthalpy_idx
 
unsigned int _internal_energy_idx
 
unsigned int _viscosity_idx
 
unsigned int _k_idx
 
unsigned int _c_idx
 
unsigned int _cp_idx
 
unsigned int _cv_idx
 
unsigned int _entropy_idx
 
MooseUtils::DelimitedFileReader _csv_reader
 The MOOSE delimited file reader. More...
 
bool _construct_pT_from_ve
 if the lookup table p(v, e) and T(v, e) should be constructed More...
 
bool _construct_pT_from_vh
 if the lookup table p(v, h) and T(v, h) should be constructed More...
 
bool _initial_setup_done
 keeps track of whether initialSetup has been performed More...
 
unsigned int _num_v
 Number of specific volume points in the tabulated data. More...
 
unsigned int _num_e
 Number of internal energy points in tabulated data. More...
 
bool _error_on_out_of_bounds
 to error or not on out-of-bounds check More...
 
bool _log_space_v
 log-space the specific volume instead of linear More...
 
std::unique_ptr< BidimensionalInterpolation_T_from_v_e_ipol
 Bi-dimensional interpolation of temperature from (v,e) More...
 
std::unique_ptr< BidimensionalInterpolation_p_from_v_e_ipol
 Bi-dimensional interpolation of pressure from (v,e) More...
 
std::unique_ptr< BidimensionalInterpolation_T_from_v_h_ipol
 Bi-dimensional interpolation of temperature from (v,h) More...
 
std::unique_ptr< BidimensionalInterpolation_p_from_v_h_ipol
 Bidimensional interpolation of pressure from (v,h) More...
 
Real _e_min
 Minimum internal energy in tabulated data. More...
 
Real _e_max
 Maximum internal energy in tabulated data. More...
 
Real _v_min
 Minimum specific volume in tabulated data. More...
 
Real _v_max
 Maximum specific volume in tabulated data. More...
 
Real _h_min
 Minimum specific enthalpy in tabulated data. More...
 
Real _h_max
 Maximum specific enthalpy in tabulated data. More...
 
std::vector< Real_specific_volume
 specific volume vector More...
 
std::vector< Real_internal_energy
 internal energy vector More...
 
std::vector< Real_enthalpy
 enthalpy vector More...
 
const Real _tolerance
 Newton's method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves. More...
 
const Real _T_initial_guess
 
const Real _p_initial_guess
 
const Real _T_c2k
 Conversion of temperature from Celsius to Kelvin. More...
 
const bool _allow_imperfect_jacobians
 Flag to set unimplemented Jacobian entries to zero. More...
 
SubProblem_subproblem
 
FEProblemBase_fe_problem
 
SystemBase_sys
 
const THREAD_ID _tid
 
Assembly_assembly
 
const Moose::CoordinateSystemType_coord_sys
 
const bool _duplicate_initial_execution
 
std::set< std::string > _depend_uo
 
const bool & _enabled
 
MooseApp_app
 
const std::string _type
 
const std::string _name
 
const InputParameters_pars
 
Factory_factory
 
ActionFactory_action_factory
 
const ExecFlagEnum_execute_enum
 
const ExecFlagType_current_execute_flag
 
MooseApp_restartable_app
 
const std::string _restartable_system_name
 
const THREAD_ID _restartable_tid
 
const bool _restartable_read_only
 
FEProblemBase_mci_feproblem
 
FEProblemBase_sc_fe_problem
 
const THREAD_ID _sc_tid
 
const Real_real_zero
 
const VariableValue_scalar_zero
 
const Point & _point_zero
 
MooseApp_pg_moose_app
 
const std::string _prefix
 
const InputParameters_mi_params
 
const std::string _mi_name
 
const MooseObjectName _mi_moose_object_name
 
FEProblemBase_mi_feproblem
 
SubProblem_mi_subproblem
 
const THREAD_ID _mi_tid
 
const Moose::MaterialDataType _material_data_type
 
MaterialData_material_data
 
bool _stateful_allowed
 
bool _get_material_property_called
 
std::vector< std::unique_ptr< PropertyValue > > _default_properties
 
std::unordered_set< unsigned int_material_property_dependencies
 
const MaterialPropertyName _get_suffix
 
const bool _use_interpolated_state
 
const InputParameters_ti_params
 
FEProblemBase_ti_feproblem
 
bool _is_implicit
 
Real_t
 
int_t_step
 
Real_dt
 
Real_dt_old
 
bool _is_transient
 
const Parallel::Communicator & _communicator
 

Static Protected Attributes

static const std::string _interpolated_old
 
static const std::string _interpolated_older
 
e e e e s T T T propfuncWithDefault (cp, p, T) propfuncWithDefault(cv
 
e e e e s T T T T propfuncWithDefault (mu, p, T) propfuncWithDefault(k
 
e e e e s T T T T T rho v v T s h propfuncWithDefault (beta, p, T) propfuncWithDefault(v
 
e e e e s T T T T T rho v v T s h T propfuncWithDefault (e, p, T) propfuncWithDefault(gamma
 
 propfunc (p, v, e) propfunc(T
 Compute a fluid property given for the state defined by two given properties. More...
 
propfunc (c, v, e) propfunc(cp
 
e e propfunc (cv, v, e) propfunc(mu
 
e e e propfunc (k, v, e) propfuncWithDefault(s
 
e e e e propfunc (s, h, p) propfunc(rho
 
e e e e s propfunc (e, v, h) propfuncWithDefault(s
 
e e e e s T propfunc (pp_sat, p, T) propfunc(mu
 
e e e e s T T propfunc (k, rho, T) propfuncWithDefault(c
 
e e e e s T T T T T propfunc (rho, p, T) propfunc(e
 
e e e e s T T T T T rho propfunc (e, T, v) propfunc(p
 
e e e e s T T T T T rho v propfunc (h, T, v) propfunc(s
 
e e e e s T T T T T rho v v propfunc (cv, T, v) propfunc(h
 
e e e e s T T T T T rho v v T propfunc (g, v, e) propfuncWithDefault(p
 
e e e e s T T T T T rho v v Tpropfunc (T, h, p) propfuncWithDefault(T
 
 v
 
v
 
e e v
 
e e e v
 
e e e e s T T T T T rho v v T s h T v
 
e e e e p
 
e e e e s p
 
e e e e s T T p
 
e e e e s T T T p
 
e e e e s T T T T p
 
e e e e s T T T T T p
 
e e e e s T T T T T rho v v p
 
e e e e s T T T T T rho v v Tp
 
e e e e s T T T T T rho v v T s h p
 
e e e e s T rho
 
e e e e s T T T T T rho T
 
e e e e s T T T T T rho v T
 
e e e e s T T T T T rho v v T h
 
e e e e s T T T T T rho v v T s h TpropfuncWithDefault (gamma, p, T)
 

Detailed Description

Class for fluid properties read from a tabulation in a file.

Definition at line 26 of file TabulatedFluidProperties.h.

Constructor & Destructor Documentation

◆ TabulatedFluidProperties()

TabulatedFluidProperties::TabulatedFluidProperties ( const InputParameters parameters)

Definition at line 92 of file TabulatedFluidProperties.C.

94  _file_name(getParam<FileName>("fluid_property_file")),
95  _temperature_min(getParam<Real>("temperature_min")),
96  _temperature_max(getParam<Real>("temperature_max")),
97  _pressure_min(getParam<Real>("pressure_min")),
98  _pressure_max(getParam<Real>("pressure_max")),
99  _num_T(getParam<unsigned int>("num_T")),
100  _num_p(getParam<unsigned int>("num_p")),
101  _save_file(getParam<bool>("save_file")),
102  _fp(isParamValid("fp") ? &getUserObject<SinglePhaseFluidProperties>("fp") : nullptr),
103  _interpolated_properties_enum(getParam<MultiMooseEnum>("interpolated_properties")),
105  _interpolate_density(false),
106  _interpolate_enthalpy(false),
108  _interpolate_viscosity(false),
109  _interpolate_k(false),
110  _interpolate_c(false),
111  _interpolate_cp(false),
112  _interpolate_cv(false),
113  _interpolate_entropy(false),
114  _density_idx(0),
115  _enthalpy_idx(0),
117  _viscosity_idx(0),
118  _k_idx(0),
119  _c_idx(0),
120  _cp_idx(0),
121  _cv_idx(0),
122  _entropy_idx(0),
124  _construct_pT_from_ve(getParam<bool>("construct_pT_from_ve")),
125  _construct_pT_from_vh(getParam<bool>("construct_pT_from_vh")),
126  _initial_setup_done(false),
127  _num_v(getParam<unsigned int>("num_v")),
128  _num_e(getParam<unsigned int>("num_e")),
129  _error_on_out_of_bounds(getParam<bool>("error_on_out_of_bounds")),
130  _log_space_v(getParam<bool>("use_log_grid_v"))
131 {
132  // Check that initial guess (used in Newton Method) is within min and max values
134  // Sanity check on minimum and maximum temperatures and pressures
136  mooseError("temperature_max must be greater than temperature_min");
138  mooseError("pressure_max must be greater than pressure_min");
139 
140  // Lines starting with # in the data file are treated as comments
141  _csv_reader.setComment("#");
142 }
bool _log_space_v
log-space the specific volume instead of linear
Real _temperature_max
Maximum temperature in tabulated data.
bool _error_on_out_of_bounds
to error or not on out-of-bounds check
void setComment(const std::string &value)
virtual void checkInitialGuess() const
Checks initial guess for Newton Method.
Real _pressure_max
Maximum pressure in tabulated data.
MooseUtils::DelimitedFileReader _csv_reader
The MOOSE delimited file reader.
SinglePhaseFluidProperties(const InputParameters &parameters)
const Parallel::Communicator & _communicator
MultiMooseEnum _interpolated_properties_enum
Properties to be interpolated entered in the input file.
bool isParamValid(const std::string &name) const
unsigned int _num_v
Number of specific volume points in the tabulated data.
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
Real _temperature_min
Minimum temperature in tabulated data.
bool _construct_pT_from_vh
if the lookup table p(v, h) and T(v, h) should be constructed
std::vector< std::string > _interpolated_properties
List of properties to be interpolated.
unsigned int _num_T
Number of temperature points in the tabulated data.
bool _initial_setup_done
keeps track of whether initialSetup has been performed
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
Real _pressure_min
Minimum pressure in tabulated data.
unsigned int _num_p
Number of pressure points in the tabulated data.
void mooseError(Args &&... args) const
unsigned int _density_idx
Index of each property.
const InputParameters & parameters() const
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
const bool _save_file
Whether to save a generated fluid properties file to disk.
unsigned int _num_e
Number of internal energy points in tabulated data.
FileName _file_name
File name of tabulated data file.

Member Function Documentation

◆ c_from_p_T() [1/2]

Real TabulatedFluidProperties::c_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 668 of file TabulatedFluidProperties.C.

Referenced by c_from_v_e().

669 {
670  if (_interpolate_c)
671  {
673  return _property_ipol[_c_idx]->sample(pressure, temperature);
674  }
675  else
676  {
677  if (_fp)
678  return _fp->c_from_p_T(pressure, temperature);
679  else
680  paramError("interpolated_properties", "No data to interpolate for speed of sound.");
681  }
682 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ c_from_p_T() [2/2]

void TabulatedFluidProperties::c_from_p_T ( Real  pressure,
Real  temperature,
Real c,
Real dc_dp,
Real dc_dT 
) const
overridevirtual

Definition at line 685 of file TabulatedFluidProperties.C.

687 {
688  if (_interpolate_c)
689  {
691  _property_ipol[_c_idx]->sampleValueAndDerivatives(pressure, temperature, c, dc_dp, dc_dT);
692  }
693  else
694  {
695  if (_fp)
696  _fp->c_from_p_T(pressure, temperature, c, dc_dp, dc_dT);
697  else
698  paramError("interpolated_properties", "No data to interpolate for speed of sound.");
699  }
700 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ c_from_v_e() [1/2]

Real TabulatedFluidProperties::c_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 931 of file TabulatedFluidProperties.C.

932 {
934  mooseError("You must construct pT from ve tables when calling c_from_v_e.");
935  Real p = _p_from_v_e_ipol->sample(v, e);
936  Real T = _T_from_v_e_ipol->sample(v, e);
937  return c_from_p_T(p, T);
938 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
virtual Real c_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ c_from_v_e() [2/2]

void TabulatedFluidProperties::c_from_v_e ( Real  v,
Real  e,
Real c,
Real dc_dv,
Real dc_de 
) const
overridevirtual

Definition at line 941 of file TabulatedFluidProperties.C.

942 {
944  mooseError("You must construct pT from ve tables when calling c_from_v_e.");
945  Real p, dp_dv, dp_de;
946  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
947  Real T, dT_dv, dT_de;
948  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
949  Real dc_dp, dc_dT;
950  c_from_p_T(p, T, c, dc_dp, dc_dT);
951  dc_dv = dc_dp * dp_dv + dc_dT * dT_dv;
952  dc_de = dc_dp * dp_de + dc_dT * dT_de;
953 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
virtual Real c_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ checkInitialGuess()

void TabulatedFluidProperties::checkInitialGuess ( ) const
protectedvirtual

Checks initial guess for Newton Method.

Definition at line 1296 of file TabulatedFluidProperties.C.

Referenced by TabulatedFluidProperties().

1297 {
1299  {
1300  if (_p_initial_guess < _pressure_min || _p_initial_guess > _pressure_max)
1301  mooseWarning("Pressure initial guess for (p,T), (v,e) conversions " +
1303  " is outside the range of tabulated "
1304  "pressure (" +
1306 
1307  if (_T_initial_guess < _temperature_min || _T_initial_guess > _temperature_max)
1308  mooseWarning("Temperature initial guess for (p,T), (v,e) conversions " +
1310  " is outside the range of tabulated "
1311  "temperature (" +
1313  ").");
1314  }
1315 }
Real _temperature_max
Maximum temperature in tabulated data.
Real _pressure_max
Maximum pressure in tabulated data.
void mooseWarning(Args &&... args) const
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
Real _temperature_min
Minimum temperature in tabulated data.
bool _construct_pT_from_vh
if the lookup table p(v, h) and T(v, h) should be constructed
std::string stringify(const T &t)
Real _pressure_min
Minimum pressure in tabulated data.

◆ checkInputVariables()

template<typename T >
template void TabulatedFluidProperties::checkInputVariables ( T pressure,
T temperature 
) const
protected

Checks that the inputs are within the range of the tabulated data, and throws an error if they are not.

Parameters
pressureinput pressure (Pa)
temperatureinput temperature (K)

Definition at line 1270 of file TabulatedFluidProperties.C.

Referenced by c_from_p_T(), cp_from_p_T(), cv_from_p_T(), e_from_p_T(), h_from_p_T(), k_from_p_T(), mu_from_p_T(), rho_from_p_T(), s_from_p_T(), and v_from_p_T().

1271 {
1272  if (pressure < _pressure_min || pressure > _pressure_max)
1273  {
1275  throw MooseException("Pressure " + Moose::stringify(pressure) +
1276  " is outside the range of tabulated pressure (" +
1279  else
1280  pressure = std::max(_pressure_min, std::min(pressure, _pressure_max));
1281  }
1282 
1283  if (temperature < _temperature_min || temperature > _temperature_max)
1284  {
1286  mooseError("Temperature " + Moose::stringify(temperature) +
1287  " is outside the range of tabulated temperature (" +
1289  ").");
1290  else
1291  temperature = std::max(T(_temperature_min), std::min(temperature, T(_temperature_max)));
1292  }
1293 }
Real _temperature_max
Maximum temperature in tabulated data.
bool _error_on_out_of_bounds
to error or not on out-of-bounds check
Real _pressure_max
Maximum pressure in tabulated data.
static const std::string temperature
Definition: NS.h:57
Real _temperature_min
Minimum temperature in tabulated data.
std::string stringify(const T &t)
Real _pressure_min
Minimum pressure in tabulated data.
static const std::string pressure
Definition: NS.h:56
void mooseError(Args &&... args) const

◆ constructInterpolation()

virtual void TabulatedFluidProperties::constructInterpolation ( )
pure virtual

Implemented in TabulatedBicubicFluidProperties.

Referenced by initialSetup().

◆ cp_from_p_T() [1/2]

Real TabulatedFluidProperties::cp_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 703 of file TabulatedFluidProperties.C.

Referenced by cp_from_v_e().

704 {
705  if (_interpolate_cp)
706  {
708  return _property_ipol[_cp_idx]->sample(pressure, temperature);
709  }
710  else
711  {
712  if (_fp)
713  return _fp->cp_from_p_T(pressure, temperature);
714  else
715  paramError("interpolated_properties",
716  "No data to interpolate for specific heat capacity at constant pressure.");
717  }
718 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ cp_from_p_T() [2/2]

void TabulatedFluidProperties::cp_from_p_T ( Real  pressure,
Real  temperature,
Real cp,
Real dcp_dp,
Real dcp_dT 
) const
overridevirtual

Definition at line 721 of file TabulatedFluidProperties.C.

723 {
724  if (_interpolate_cp)
725  {
727  _property_ipol[_cp_idx]->sampleValueAndDerivatives(pressure, temperature, cp, dcp_dp, dcp_dT);
728  }
729  else
730  {
731  if (_fp)
732  _fp->cp_from_p_T(pressure, temperature, cp, dcp_dp, dcp_dT);
733  else
734  paramError("interpolated_properties",
735  "No data to interpolate for specific heat capacity at constant pressure.");
736  }
737 }
static const std::string temperature
Definition: NS.h:57
static const std::string cp
Definition: NS.h:120
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ cp_from_v_e() [1/2]

Real TabulatedFluidProperties::cp_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 956 of file TabulatedFluidProperties.C.

957 {
959  mooseError("You must construct pT from ve tables when calling cp_from_v_e.");
960  Real p = _p_from_v_e_ipol->sample(v, e);
961  Real T = _T_from_v_e_ipol->sample(v, e);
962  return cp_from_p_T(p, T);
963 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
virtual Real cp_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ cp_from_v_e() [2/2]

void TabulatedFluidProperties::cp_from_v_e ( Real  v,
Real  e,
Real cp,
Real dcp_dv,
Real dcp_de 
) const
overridevirtual

Definition at line 966 of file TabulatedFluidProperties.C.

967 {
969  mooseError("You must construct pT from ve tables when calling cp_from_v_e.");
970  Real p, dp_dv, dp_de;
971  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
972  Real T, dT_dv, dT_de;
973  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
974  Real dcp_dp, dcp_dT;
975  cp_from_p_T(p, T, cp, dcp_dp, dcp_dT);
976  dcp_dv = dcp_dp * dp_dv + dcp_dT * dT_dv;
977  dcp_de = dcp_dp * dp_de + dcp_dT * dT_de;
978 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
static const std::string cp
Definition: NS.h:120
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
virtual Real cp_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ criticalDensity()

Real SinglePhaseFluidProperties::criticalDensity ( ) const
virtualinherited

◆ criticalInternalEnergy()

Real SinglePhaseFluidProperties::criticalInternalEnergy ( ) const
virtualinherited

Critical specific internal energy.

Returns
specific internal energy (J/kg)

Reimplemented in IdealGasFluidProperties, CaloricallyImperfectGas, and StiffenedGasFluidProperties.

Definition at line 297 of file SinglePhaseFluidProperties.C.

Referenced by IdealRealGasMixtureFluidProperties::p_T_from_v_e(), and IdealRealGasMixtureFluidProperties::T_from_p_v().

298 {
299  mooseError(__PRETTY_FUNCTION__, " not implemented.");
300 }
void mooseError(Args &&... args) const

◆ criticalPressure()

Real SinglePhaseFluidProperties::criticalPressure ( ) const
virtualinherited

Critical pressure.

Returns
critical pressure (Pa)

Reimplemented in CO2FluidProperties, HydrogenFluidProperties, NitrogenFluidProperties, MethaneFluidProperties, NaClFluidProperties, and Water97FluidProperties.

Definition at line 279 of file SinglePhaseFluidProperties.C.

280 {
281  mooseError(__PRETTY_FUNCTION__, " not implemented.");
282 }
void mooseError(Args &&... args) const

◆ criticalTemperature()

Real SinglePhaseFluidProperties::criticalTemperature ( ) const
virtualinherited

◆ cv_from_p_T() [1/2]

Real TabulatedFluidProperties::cv_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 740 of file TabulatedFluidProperties.C.

Referenced by cv_from_v_e().

741 {
742  if (_interpolate_cv)
743  {
745  return _property_ipol[_cv_idx]->sample(pressure, temperature);
746  }
747  else
748  {
749  if (_fp)
750  return _fp->cv_from_p_T(pressure, temperature);
751  else
752  paramError("interpolated_properties",
753  "No data to interpolate for specific heat capacity at constant volume.");
754  }
755 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ cv_from_p_T() [2/2]

void TabulatedFluidProperties::cv_from_p_T ( Real  pressure,
Real  temperature,
Real cv,
Real dcv_dp,
Real dcv_dT 
) const
overridevirtual

Definition at line 758 of file TabulatedFluidProperties.C.

760 {
761  if (_interpolate_cv)
762  {
764  _property_ipol[_cv_idx]->sampleValueAndDerivatives(pressure, temperature, cv, dcv_dp, dcv_dT);
765  }
766  else
767  {
768  if (_fp)
769  _fp->cv_from_p_T(pressure, temperature, cv, dcv_dp, dcv_dT);
770  else
771  paramError("interpolated_properties",
772  "No data to interpolate for specific heat capacity at constant volume.");
773  }
774 }
static const std::string cv
Definition: NS.h:121
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ cv_from_v_e() [1/2]

Real TabulatedFluidProperties::cv_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 981 of file TabulatedFluidProperties.C.

982 {
984  mooseError("You must construct pT from ve tables when calling cv_from_v_e.");
985  Real p = _p_from_v_e_ipol->sample(v, e);
986  Real T = _T_from_v_e_ipol->sample(v, e);
987  return cv_from_p_T(p, T);
988 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real cv_from_p_T(Real pressure, Real temperature) const override
void mooseError(Args &&... args) const

◆ cv_from_v_e() [2/2]

void TabulatedFluidProperties::cv_from_v_e ( Real  v,
Real  e,
Real cv,
Real dcv_dv,
Real dcv_de 
) const
overridevirtual

Definition at line 991 of file TabulatedFluidProperties.C.

992 {
994  mooseError("You must construct pT from ve tables when calling cv_from_v_e.");
995  Real p, dp_dv, dp_de;
996  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
997  Real T, dT_dv, dT_de;
998  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
999  Real dcv_dp, dcv_dT;
1000  cv_from_p_T(p, T, cv, dcv_dp, dcv_dT);
1001  dcv_dv = dcv_dp * dp_dv + dcv_dT * dT_dv;
1002  dcv_de = dcv_dp * dp_de + dcv_dT * dT_de;
1003 }
static const std::string cv
Definition: NS.h:121
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real cv_from_p_T(Real pressure, Real temperature) const override
void mooseError(Args &&... args) const

◆ e_from_p_rho() [1/2]

Real TabulatedFluidProperties::e_from_p_rho ( Real  pressure,
Real  rho 
) const
overridevirtual

Definition at line 511 of file TabulatedFluidProperties.C.

512 {
514  Real e = e_from_p_T(pressure, T);
515  return e;
516 }
virtual Real e_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
virtual Real T_from_p_rho(Real pressure, Real rho) const

◆ e_from_p_rho() [2/2]

void TabulatedFluidProperties::e_from_p_rho ( Real  pressure,
Real  rho,
Real e,
Real de_dp,
Real de_drho 
) const
overridevirtual

Definition at line 519 of file TabulatedFluidProperties.C.

521 {
522  // get derivatives of T wrt to pressure and density
523  Real T, dT_dp, dT_drho;
524  T_from_p_rho(pressure, rho, T, dT_dp, dT_drho);
525 
526  // Get e, then derivatives of e wrt pressure and temperature
527  Real de_dp_at_const_T, de_dT;
528  e_from_p_T(pressure, T, e, de_dp_at_const_T, de_dT);
529 
530  // Get the derivatives of density wrt pressure and temperature
531  Real rho_pT, drho_dp, drho_dT;
532  rho_from_p_T(pressure, T, rho_pT, drho_dp, drho_dT);
533 
534  // derivatives of e wrt pressure and rho (what we want from e_from_p_rho)
535  de_drho = de_dT * dT_drho;
536  de_dp = de_dp_at_const_T - (de_drho * drho_dp);
537 }
virtual Real e_from_p_T(Real pressure, Real temperature) const override
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
virtual Real T_from_p_rho(Real pressure, Real rho) const

◆ e_from_p_T() [1/2]

Real TabulatedFluidProperties::e_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 475 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), e_from_p_rho(), and e_from_v_h().

476 {
478  {
481  }
482  else
483  {
484  if (_fp)
485  return _fp->e_from_p_T(pressure, temperature);
486  else
487  paramError("fp", "No fluid properties or csv data provided for internal energy.");
488  }
489 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ e_from_p_T() [2/2]

void TabulatedFluidProperties::e_from_p_T ( Real  pressure,
Real  temperature,
Real e,
Real de_dp,
Real de_dT 
) const
overridevirtual

Definition at line 492 of file TabulatedFluidProperties.C.

494 {
496  {
498  _property_ipol[_internal_energy_idx]->sampleValueAndDerivatives(
499  pressure, temperature, e, de_dp, de_dT);
500  }
501  else
502  {
503  if (_fp)
504  _fp->e_from_p_T(pressure, temperature, e, de_dp, de_dT);
505  else
506  paramError("fp", "No fluid properties or csv data provided for internal energy.");
507  }
508 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ e_from_v_h() [1/2]

Real TabulatedFluidProperties::e_from_v_h ( Real  v,
Real  h 
) const
overridevirtual

Definition at line 847 of file TabulatedFluidProperties.C.

848 {
850  mooseError("You must construct pT from vh tables when calling e_from_v_h.");
851  const Real p = _p_from_v_h_ipol->sample(v, h);
852  const Real T = _T_from_v_h_ipol->sample(v, h);
853  return e_from_p_T(p, T);
854 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_h_ipol
Bidimensional interpolation of pressure from (v,h)
bool _construct_pT_from_vh
if the lookup table p(v, h) and T(v, h) should be constructed
e e e e s T T T T T rho v v T h
virtual Real e_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
std::unique_ptr< BidimensionalInterpolation > _T_from_v_h_ipol
Bi-dimensional interpolation of temperature from (v,h)

◆ e_from_v_h() [2/2]

void TabulatedFluidProperties::e_from_v_h ( Real  v,
Real  h,
Real e,
Real de_dv,
Real de_dh 
) const
overridevirtual

Definition at line 857 of file TabulatedFluidProperties.C.

858 {
860  mooseError("You must construct pT from vh tables when calling e_from_v_h.");
861  Real p = 0, dp_dv = 0, dp_dh = 0;
862  _p_from_v_h_ipol->sampleValueAndDerivatives(v, h, p, dp_dv, dp_dh);
863  Real T = 0, dT_dv = 0, dT_dh = 0;
864  _T_from_v_h_ipol->sampleValueAndDerivatives(v, h, T, dT_dv, dT_dh);
865  Real de_dp, de_dT;
866  e_from_p_T(p, T, e, de_dp, de_dT);
867  de_dv = de_dp * dp_dv + de_dT * dT_dv;
868  de_dh = de_dp * dp_dh + de_dT * dT_dh;
869 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_h_ipol
Bidimensional interpolation of pressure from (v,h)
bool _construct_pT_from_vh
if the lookup table p(v, h) and T(v, h) should be constructed
e e e e s T T T T T rho v v T h
virtual Real e_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
std::unique_ptr< BidimensionalInterpolation > _T_from_v_h_ipol
Bi-dimensional interpolation of temperature from (v,h)

◆ e_spndl_from_v()

Real SinglePhaseFluidProperties::e_spndl_from_v ( Real  v) const
virtualinherited

Specific internal energy from temperature and specific volume.

Parameters
[in]Ttemperature
[in]vspecific volume

Reimplemented in IdealGasFluidProperties, CaloricallyImperfectGas, and StiffenedGasFluidProperties.

Definition at line 457 of file SinglePhaseFluidProperties.C.

Referenced by IdealRealGasMixtureFluidProperties::p_T_from_v_e(), and IdealRealGasMixtureFluidProperties::T_from_p_v().

458 {
459  mooseError(__PRETTY_FUNCTION__, " not implemented.");
460 }
void mooseError(Args &&... args) const

◆ execute()

virtual void FluidProperties::execute ( )
inlinefinalvirtualinherited

Implements ThreadedGeneralUserObject.

Definition at line 33 of file FluidProperties.h.

33 {}

◆ finalize()

virtual void FluidProperties::finalize ( )
inlinefinalvirtualinherited

Implements ThreadedGeneralUserObject.

Definition at line 35 of file FluidProperties.h.

35 {}

◆ fluidName()

std::string TabulatedFluidProperties::fluidName ( ) const
overridevirtual

Definition at line 339 of file TabulatedFluidProperties.C.

340 {
341  if (_fp)
342  return _fp->fluidName();
343  else
344  return "TabulationFromFile";
345 }
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.

◆ g_from_v_e()

Real TabulatedFluidProperties::g_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 1056 of file TabulatedFluidProperties.C.

1057 {
1058  Real p0 = _p_initial_guess;
1059  Real T0 = _T_initial_guess;
1060  Real p, T;
1061  bool conversion_succeeded;
1062  p_T_from_v_e(v, e, p0, T0, p, T, conversion_succeeded);
1063  const Real s = s_from_p_T(p, T);
1064  const Real h = h_from_p_T(p, T);
1065  return h - T * s;
1066 }
virtual Real s_from_p_T(Real pressure, Real temperature) const override
void p_T_from_v_e(const CppType &v, const CppType &e, Real p0, Real T0, CppType &p, CppType &T, bool &conversion_succeeded) const
Determines (p,T) from (v,e) using Newton Solve in 2D Useful for conversion between different sets of ...
virtual Real h_from_p_T(Real p, Real T) const override
e e e e s T T T T T rho v v T h
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ generateTabulatedData()

void TabulatedFluidProperties::generateTabulatedData ( )
protectedvirtual

Generates a table of fluid properties by looping over pressure and temperature and calculating properties using the FluidProperties UserObject _fp.

Definition at line 1143 of file TabulatedFluidProperties.C.

Referenced by initialSetup().

1144 {
1145  _pressure.resize(_num_p);
1146  _temperature.resize(_num_T);
1147 
1148  // Generate data for all properties entered in input file
1151 
1152  for (std::size_t i = 0; i < _interpolated_properties_enum.size(); ++i)
1154 
1155  for (std::size_t i = 0; i < _properties.size(); ++i)
1156  _properties[i].resize(_num_p * _num_T);
1157 
1158  // Temperature is divided equally into _num_T segments
1159  Real delta_T = (_temperature_max - _temperature_min) / static_cast<Real>(_num_T - 1);
1160 
1161  for (unsigned int j = 0; j < _num_T; ++j)
1162  _temperature[j] = _temperature_min + j * delta_T;
1163 
1164  // Divide the pressure into _num_p equal segments
1165  Real delta_p = (_pressure_max - _pressure_min) / static_cast<Real>(_num_p - 1);
1166 
1167  for (unsigned int i = 0; i < _num_p; ++i)
1168  _pressure[i] = _pressure_min + i * delta_p;
1169 
1170  // Generate the tabulated data at the pressure and temperature points
1171  for (std::size_t i = 0; i < _properties.size(); ++i)
1172  {
1173  if (_interpolated_properties[i] == "density")
1174  for (unsigned int p = 0; p < _num_p; ++p)
1175  for (unsigned int t = 0; t < _num_T; ++t)
1176  {
1177  if (_fp)
1178  _properties[i][p * _num_T + t] = _fp->rho_from_p_T(_pressure[p], _temperature[t]);
1179  else
1180  paramError("fp", "No fluid properties or csv data provided for density.");
1181  }
1182 
1183  if (_interpolated_properties[i] == "enthalpy")
1184  for (unsigned int p = 0; p < _num_p; ++p)
1185  for (unsigned int t = 0; t < _num_T; ++t)
1186  {
1187  if (_fp)
1188  _properties[i][p * _num_T + t] = _fp->h_from_p_T(_pressure[p], _temperature[t]);
1189  else
1190  paramError("fp", "No fluid properties or csv data provided for enthalpy.");
1191  }
1192 
1193  if (_interpolated_properties[i] == "internal_energy")
1194  for (unsigned int p = 0; p < _num_p; ++p)
1195  for (unsigned int t = 0; t < _num_T; ++t)
1196  {
1197  if (_fp)
1198  _properties[i][p * _num_T + t] = _fp->e_from_p_T(_pressure[p], _temperature[t]);
1199  else
1200  paramError("fp", "No fluid properties or csv data provided for internal energy.");
1201  }
1202 
1203  if (_interpolated_properties[i] == "viscosity")
1204  for (unsigned int p = 0; p < _num_p; ++p)
1205  for (unsigned int t = 0; t < _num_T; ++t)
1206  {
1207  if (_fp)
1208  _properties[i][p * _num_T + t] = _fp->mu_from_p_T(_pressure[p], _temperature[t]);
1209  else
1210  paramError("fp", "No fluid properties or csv data provided for viscosity.");
1211  }
1212 
1213  if (_interpolated_properties[i] == "k")
1214  for (unsigned int p = 0; p < _num_p; ++p)
1215  for (unsigned int t = 0; t < _num_T; ++t)
1216  {
1217  if (_fp)
1218  _properties[i][p * _num_T + t] = _fp->k_from_p_T(_pressure[p], _temperature[t]);
1219  else
1220  paramError("interpolated_properties",
1221  "No data to interpolate for thermal conductivity.");
1222  }
1223 
1224  if (_interpolated_properties[i] == "c")
1225  for (unsigned int p = 0; p < _num_p; ++p)
1226  for (unsigned int t = 0; t < _num_T; ++t)
1227  {
1228  if (_fp)
1229  _properties[i][p * _num_T + t] = _fp->c_from_p_T(_pressure[p], _temperature[t]);
1230  else
1231  paramError("interpolated_properties", "No data to interpolate for speed of sound.");
1232  }
1233 
1234  if (_interpolated_properties[i] == "cv")
1235  for (unsigned int p = 0; p < _num_p; ++p)
1236  for (unsigned int t = 0; t < _num_T; ++t)
1237  {
1238  if (_fp)
1239  _properties[i][p * _num_T + t] = _fp->cv_from_p_T(_pressure[p], _temperature[t]);
1240  else
1241  paramError("interpolated_properties",
1242  "No data to interpolate for specific heat capacity at constant volume.");
1243  }
1244 
1245  if (_interpolated_properties[i] == "cp")
1246  for (unsigned int p = 0; p < _num_p; ++p)
1247  for (unsigned int t = 0; t < _num_T; ++t)
1248  {
1249  if (_fp)
1250  _properties[i][p * _num_T + t] = _fp->cp_from_p_T(_pressure[p], _temperature[t]);
1251  else
1252  paramError("interpolated_properties",
1253  "No data to interpolate for specific heat capacity at constant pressure.");
1254  }
1255 
1256  if (_interpolated_properties[i] == "entropy")
1257  for (unsigned int p = 0; p < _num_p; ++p)
1258  for (unsigned int t = 0; t < _num_T; ++t)
1259  {
1260  if (_fp)
1261  _properties[i][p * _num_T + t] = _fp->s_from_p_T(_pressure[p], _temperature[t]);
1262  else
1263  paramError("interpolated_properties", "No data to interpolate for entropy.");
1264  }
1265  }
1266 }
Real _temperature_max
Maximum temperature in tabulated data.
Real _pressure_max
Maximum pressure in tabulated data.
unsigned int size() const
MultiMooseEnum _interpolated_properties_enum
Properties to be interpolated entered in the input file.
Real _temperature_min
Minimum temperature in tabulated data.
std::vector< std::string > _interpolated_properties
List of properties to be interpolated.
void paramError(const std::string &param, Args... args) const
std::vector< Real > _pressure
Pressure vector.
std::vector< Real > _temperature
Temperature vector.
unsigned int _num_T
Number of temperature points in the tabulated data.
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
Real _pressure_min
Minimum pressure in tabulated data.
std::vector< std::vector< Real > > _properties
Tabulated fluid properties.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
unsigned int _num_p
Number of pressure points in the tabulated data.
static const std::complex< double > j(0, 1)
Complex number "j" (also known as "i")

◆ h_from_p_T() [1/2]

Real TabulatedFluidProperties::h_from_p_T ( Real  p,
Real  T 
) const
overridevirtual

Definition at line 596 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), g_from_v_e(), and T_from_h_p().

597 {
599  {
602  }
603  else
604  {
605  if (_fp)
606  return _fp->h_from_p_T(pressure, temperature);
607  else
608  paramError("fp", "No fluid properties or csv data provided for enthalpy.");
609  }
610 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ h_from_p_T() [2/2]

void TabulatedFluidProperties::h_from_p_T ( Real  pressure,
Real  temperature,
Real h,
Real dh_dp,
Real dh_dT 
) const
overridevirtual

Definition at line 613 of file TabulatedFluidProperties.C.

615 {
617  {
619  _property_ipol[_enthalpy_idx]->sampleValueAndDerivatives(
620  pressure, temperature, h, dh_dp, dh_dT);
621  }
622  else
623  {
624  if (_fp)
625  _fp->h_from_p_T(pressure, temperature, h, dh_dp, dh_dT);
626  else
627  paramError("fp", "No fluid properties or csv data provided for enthalpy.");
628  }
629 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
e e e e s T T T T T rho v v T h
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ henryCoefficients()

std::vector< Real > TabulatedFluidProperties::henryCoefficients ( ) const
overridevirtual

Henry's law coefficients for dissolution in water.

Returns
Henry's constant coefficients

Reimplemented from SinglePhaseFluidProperties.

Definition at line 872 of file TabulatedFluidProperties.C.

873 {
874  if (_fp)
875  return _fp->henryCoefficients();
876  else
877  mooseError("henryCoefficients not specified.");
878 }
virtual std::vector< Real > henryCoefficients() const
Henry&#39;s law coefficients for dissolution in water.
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
void mooseError(Args &&... args) const

◆ initialize()

virtual void FluidProperties::initialize ( )
inlinefinalvirtualinherited

Implements ThreadedGeneralUserObject.

Definition at line 34 of file FluidProperties.h.

34 {}

◆ initialSetup()

void TabulatedFluidProperties::initialSetup ( )
overridevirtual

Reimplemented from ThreadedGeneralUserObject.

Definition at line 145 of file TabulatedFluidProperties.C.

146 {
148  return;
149  _initial_setup_done = true;
150 
151  // Check to see if _file_name supplied exists. If it does, that data
152  // will be used. If it does not exist, data will be generated and then
153  // written to _file_name.
154  std::ifstream file(_file_name.c_str());
155  if (file.good())
156  {
157  _console << name() + ": Reading tabulated properties from " << _file_name << std::endl;
158  _csv_reader.read();
159 
160  const std::vector<std::string> & column_names = _csv_reader.getNames();
161 
162  // Check that all required columns are present
163  for (std::size_t i = 0; i < _required_columns.size(); ++i)
164  {
165  if (std::find(column_names.begin(), column_names.end(), _required_columns[i]) ==
166  column_names.end())
167  mooseError("No ",
169  " data read in ",
170  _file_name,
171  ". A column named ",
173  " must be present");
174  }
175 
176  // Check that any property names read from the file are present in the list of possible
177  // properties, and if they are, add them to the list of read properties
178  for (std::size_t i = 0; i < column_names.size(); ++i)
179  {
180  // Only check properties not in _required_columns
181  if (std::find(_required_columns.begin(), _required_columns.end(), column_names[i]) ==
182  _required_columns.end())
183  {
184  if (std::find(_property_columns.begin(), _property_columns.end(), column_names[i]) ==
185  _property_columns.end())
186  mooseError(column_names[i],
187  " read in ",
188  _file_name,
189  " is not one of the properties that TabulatedFluidProperties understands");
190  else
191  _interpolated_properties.push_back(column_names[i]);
192  }
193  }
194 
195  std::map<std::string, unsigned int> data_index;
196  for (std::size_t i = 0; i < column_names.size(); ++i)
197  {
198  auto it = std::find(column_names.begin(), column_names.end(), column_names[i]);
199  data_index[column_names[i]] = std::distance(column_names.begin(), it);
200  }
201 
202  const std::vector<std::vector<Real>> & column_data = _csv_reader.getData();
203 
204  // Extract the pressure and temperature data vectors
205  _pressure = column_data[data_index.find("pressure")->second];
206  _temperature = column_data[data_index.find("temperature")->second];
207 
208  // Pressure and temperature data contains duplicates due to the csv format.
209  // First, check that pressure is monotonically increasing
210  if (!std::is_sorted(_pressure.begin(), _pressure.end()))
211  mooseError("The column data for pressure is not monotonically increasing in ", _file_name);
212 
213  // The first pressure value is repeated for each temperature value. Counting the
214  // number of repeats provides the number of temperature values
215  auto num_T = std::count(_pressure.begin(), _pressure.end(), _pressure.front());
216 
217  // Now remove the duplicates in the pressure vector
218  auto last_unique = std::unique(_pressure.begin(), _pressure.end());
219  _pressure.erase(last_unique, _pressure.end());
220  _num_p = _pressure.size();
221 
222  // Check that the number of rows in the csv file is equal to _num_p * _num_T
223  if (column_data[0].size() != _num_p * static_cast<unsigned int>(num_T))
224  mooseError("The number of rows in ",
225  _file_name,
226  " is not equal to the number of unique pressure values ",
227  _num_p,
228  " multiplied by the number of unique temperature values ",
229  num_T);
230 
231  // Need to make sure that the temperature values are provided in ascending order
232  // as well as duplicated for each pressure value
233  std::vector<Real> temp0(_temperature.begin(), _temperature.begin() + num_T);
234  if (!std::is_sorted(temp0.begin(), temp0.end()))
235  mooseError("The column data for temperature is not monotonically increasing in ", _file_name);
236 
237  auto it_temp = _temperature.begin() + num_T;
238  for (std::size_t i = 1; i < _pressure.size(); ++i)
239  {
240  std::vector<Real> temp(it_temp, it_temp + num_T);
241  if (temp != temp0)
242  mooseError("Temperature values for pressure ",
243  _pressure[i],
244  " are not identical to values for ",
245  _pressure[0]);
246 
247  std::advance(it_temp, num_T);
248  }
249 
250  // At this point, all temperature data has been provided in ascending order
251  // identically for each pressure value, so we can just keep the first range
252  _temperature.erase(_temperature.begin() + num_T, _temperature.end());
253  _num_T = _temperature.size();
254 
255  // Minimum and maximum pressure and temperature. Note that _pressure and
256  // _temperature are sorted
257  _pressure_min = _pressure.front();
258  _pressure_max = _pressure.back();
259  _temperature_min = _temperature.front();
261 
262  // Extract the fluid property data from the file
263  for (std::size_t i = 0; i < _interpolated_properties.size(); ++i)
264  _properties.push_back(column_data[data_index.find(_interpolated_properties[i])->second]);
265  }
266  else
267  {
268  if (!_fp)
269  mooseError("No csv file or fp object exist.");
270  _console << name() + ": No tabulated properties file named " << _file_name << " exists.\n";
271  _console << name() + ": Generating tabulated data\n";
272  if (_save_file)
273  _console << name() + ": Writing tabulated data to " << _file_name << "\n";
274 
275  _console << std::flush;
276 
278 
279  // Write tabulated data to file
280  if (_save_file)
282  }
283 
284  // At this point, all properties read or generated are able to be used by
285  // TabulatedFluidProperties. Now set flags and indexes for each property in
286  //_interpolated_properties to use in property calculations
287  for (std::size_t i = 0; i < _interpolated_properties.size(); ++i)
288  {
289  if (_interpolated_properties[i] == "density")
290  {
291  _interpolate_density = true;
292  _density_idx = i;
293  }
294  if (_interpolated_properties[i] == "enthalpy")
295  {
296  _interpolate_enthalpy = true;
297  _enthalpy_idx = i;
298  }
299  if (_interpolated_properties[i] == "internal_energy")
300  {
303  }
304  if (_interpolated_properties[i] == "viscosity")
305  {
306  _interpolate_viscosity = true;
307  _viscosity_idx = i;
308  }
309  if (_interpolated_properties[i] == "k")
310  {
311  _interpolate_k = true;
312  _k_idx = i;
313  }
314  if (_interpolated_properties[i] == "c")
315  {
316  _interpolate_c = true;
317  _c_idx = i;
318  }
319  if (_interpolated_properties[i] == "cp")
320  {
321  _interpolate_cp = true;
322  _cp_idx = i;
323  }
324  if (_interpolated_properties[i] == "cv")
325  {
326  _interpolate_cv = true;
327  _cv_idx = i;
328  }
329  if (_interpolated_properties[i] == "entropy")
330  {
331  _interpolate_entropy = true;
332  _entropy_idx = i;
333  }
334  }
336 }
const std::vector< std::vector< double > > & getData() const
Real _temperature_max
Maximum temperature in tabulated data.
const std::vector< std::string > _required_columns
List of required column names to be read.
Real _pressure_max
Maximum pressure in tabulated data.
MooseUtils::DelimitedFileReader _csv_reader
The MOOSE delimited file reader.
virtual const std::string & name() const
Real _temperature_min
Minimum temperature in tabulated data.
std::vector< std::string > _interpolated_properties
List of properties to be interpolated.
const std::vector< std::string > & getNames() const
std::vector< Real > _pressure
Pressure vector.
std::vector< Real > _temperature
Temperature vector.
unsigned int _num_T
Number of temperature points in the tabulated data.
bool _initial_setup_done
keeps track of whether initialSetup has been performed
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
Real _pressure_min
Minimum pressure in tabulated data.
std::vector< std::vector< Real > > _properties
Tabulated fluid properties.
unsigned int _num_p
Number of pressure points in the tabulated data.
const std::vector< std::string > _property_columns
List of possible property column names to be read.
void mooseError(Args &&... args) const
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
const ConsoleStream _console
const bool _save_file
Whether to save a generated fluid properties file to disk.
virtual void generateTabulatedData()
Generates a table of fluid properties by looping over pressure and temperature and calculating proper...
virtual void constructInterpolation()=0
void writeTabulatedData(std::string file_name)
Writes tabulated data to a file.
FileName _file_name
File name of tabulated data file.

◆ k_from_p_T() [1/2]

Real TabulatedFluidProperties::k_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 777 of file TabulatedFluidProperties.C.

Referenced by k_from_v_e().

778 {
779  if (_interpolate_k)
780  {
782  return _property_ipol[_k_idx]->sample(pressure, temperature);
783  }
784  else
785  {
786  if (_fp)
787  return _fp->k_from_p_T(pressure, temperature);
788  else
789  paramError("interpolated_properties", "No data to interpolate for thermal conductivity.");
790  }
791 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ k_from_p_T() [2/2]

void TabulatedFluidProperties::k_from_p_T ( Real  pressure,
Real  temperature,
Real k,
Real dk_dp,
Real dk_dT 
) const
overridevirtual

Definition at line 794 of file TabulatedFluidProperties.C.

796 {
797  if (_interpolate_k)
798  {
800  return _property_ipol[_k_idx]->sampleValueAndDerivatives(
801  pressure, temperature, k, dk_dp, dk_dT);
802  }
803  else
804  {
805  if (_fp)
806  return _fp->k_from_p_T(pressure, temperature, k, dk_dp, dk_dT);
807  else
808  paramError("interpolated_properties", "No data to interpolate for thermal conductivity.");
809  }
810 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.
static const std::string k
Definition: NS.h:124

◆ k_from_v_e() [1/2]

Real TabulatedFluidProperties::k_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 1031 of file TabulatedFluidProperties.C.

1032 {
1033  if (!_construct_pT_from_ve)
1034  mooseError("You must construct pT from ve tables when calling k_from_v_e.");
1035  Real T = _T_from_v_e_ipol->sample(v, e);
1036  Real p = _p_from_v_e_ipol->sample(v, e);
1037  return k_from_p_T(p, T);
1038 }
virtual Real k_from_p_T(Real pressure, Real temperature) const override
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ k_from_v_e() [2/2]

void TabulatedFluidProperties::k_from_v_e ( Real  v,
Real  e,
Real k,
Real dk_dv,
Real dk_de 
) const
overridevirtual

Definition at line 1041 of file TabulatedFluidProperties.C.

1042 {
1043  if (!_construct_pT_from_ve)
1044  mooseError("You must construct pT from ve tables when calling k_from_v_e.");
1045  Real p, dp_dv, dp_de;
1046  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
1047  Real T, dT_dv, dT_de;
1048  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
1049  Real dk_dp, dk_dT;
1050  k_from_p_T(p, T, k, dk_dp, dk_dT);
1051  dk_dv = dk_dp * dp_dv + dk_dT * dT_dv;
1052  dk_de = dk_dp * dp_de + dk_dT * dT_de;
1053 }
virtual Real k_from_p_T(Real pressure, Real temperature) const override
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
static const std::string k
Definition: NS.h:124

◆ makeZeroAndOne() [1/2]

template<typename T >
std::pair< T, T > SinglePhaseFluidProperties::makeZeroAndOne ( const T )
staticprotectedinherited

Given a type example, this method returns zero and unity reperesentations of that type (first and second members of returned pair respectively)

Definition at line 458 of file SinglePhaseFluidProperties.h.

Referenced by SinglePhaseFluidProperties::xyDerivatives().

459 {
460  return {T{0, 0}, T{1, 0}};
461 }

◆ makeZeroAndOne() [2/2]

template<>
std::pair<Real, Real> SinglePhaseFluidProperties::makeZeroAndOne ( const Real )
inlineinherited

Definition at line 465 of file SinglePhaseFluidProperties.h.

466 {
467  return {Real{0}, Real{1}};
468 }
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ molarMass()

Real TabulatedFluidProperties::molarMass ( ) const
overridevirtual

Fluid name.

Returns
string representing fluid name Molar mass [kg/mol]
molar mass

Reimplemented from SinglePhaseFluidProperties.

Definition at line 348 of file TabulatedFluidProperties.C.

349 {
350  if (_fp)
351  return _fp->molarMass();
352  else
353  mooseError("Molar Mass not specified.");
354 }
virtual virtual std Real molarMass() const
Fluid name.
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
void mooseError(Args &&... args) const

◆ mu_from_p_T() [1/2]

Real TabulatedFluidProperties::mu_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 632 of file TabulatedFluidProperties.C.

Referenced by mu_from_v_e().

633 {
635  {
638  }
639  else
640  {
641  if (_fp)
642  return _fp->mu_from_p_T(pressure, temperature);
643  else
644  paramError("fp", "No fluid properties or csv data provided for viscosity.");
645  }
646 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ mu_from_p_T() [2/2]

void TabulatedFluidProperties::mu_from_p_T ( Real  pressure,
Real  temperature,
Real mu,
Real dmu_dp,
Real dmu_dT 
) const
overridevirtual

Definition at line 649 of file TabulatedFluidProperties.C.

651 {
653  {
655  _property_ipol[_viscosity_idx]->sampleValueAndDerivatives(
656  pressure, temperature, mu, dmu_dp, dmu_dT);
657  }
658  else
659  {
660  if (_fp)
661  _fp->mu_from_p_T(pressure, temperature, mu, dmu_dp, dmu_dT);
662  else
663  paramError("fp", "No fluid properties or csv data provided for viscosity.");
664  }
665 }
static const std::string temperature
Definition: NS.h:57
static const std::string mu
Definition: NS.h:122
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ mu_from_v_e() [1/2]

Real TabulatedFluidProperties::mu_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 1006 of file TabulatedFluidProperties.C.

1007 {
1008  if (!_construct_pT_from_ve)
1009  mooseError("You must construct pT from ve tables when calling mu_from_v_e.");
1010  Real p = _p_from_v_e_ipol->sample(v, e);
1011  Real T = _T_from_v_e_ipol->sample(v, e);
1012  return mu_from_p_T(p, T);
1013 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
virtual Real mu_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ mu_from_v_e() [2/2]

void TabulatedFluidProperties::mu_from_v_e ( Real  v,
Real  e,
Real mu,
Real dmu_dv,
Real dmu_de 
) const
overridevirtual

Definition at line 1016 of file TabulatedFluidProperties.C.

1017 {
1018  if (!_construct_pT_from_ve)
1019  mooseError("You must construct pT from ve tables when calling mu_from_v_e.");
1020  Real p, dp_dv, dp_de;
1021  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
1022  Real T, dT_dv, dT_de;
1023  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
1024  Real dmu_dp, dmu_dT;
1025  mu_from_p_T(p, T, mu, dmu_dp, dmu_dT);
1026  dmu_dv = dmu_dp * dp_dv + dmu_dT * dT_dv;
1027  dmu_de = dmu_dp * dp_de + dmu_dT * dT_de;
1028 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
static const std::string mu
Definition: NS.h:122
virtual Real mu_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const

◆ p_from_v_e() [1/2]

Real TabulatedFluidProperties::p_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Derivatives like dc_dv & dc_de are computed using the chain rule dy/dx(p,T) = dy/dp * dp/dx + dy/dT * dT/dx where y = c, cp, cv...

& x = v, e

Definition at line 899 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

900 {
902  mooseError("You must construct pT from ve tables when calling p_from_v_e.");
903  return _p_from_v_e_ipol->sample(v, e);
904 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
void mooseError(Args &&... args) const

◆ p_from_v_e() [2/2]

void TabulatedFluidProperties::p_from_v_e ( Real  v,
Real  e,
Real p,
Real dp_dv,
Real dp_de 
) const
overridevirtual

Definition at line 907 of file TabulatedFluidProperties.C.

908 {
910  mooseError("You must construct pT from ve tables when calling p_from_v_e.");
911  _p_from_v_e_ipol->sampleValueAndDerivatives(v, e, p, dp_dv, dp_de);
912 }
std::unique_ptr< BidimensionalInterpolation > _p_from_v_e_ipol
Bi-dimensional interpolation of pressure from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
void mooseError(Args &&... args) const

◆ p_T_from_h_s()

template<typename T >
void SinglePhaseFluidProperties::p_T_from_h_s ( const T h,
const T s,
Real  p0,
Real  T0,
T pressure,
T temperature,
bool &  conversion_succeeded 
) const
inherited

Determines (p,T) from (h,s) using Newton Solve in 2D Useful for conversion between different sets of state variables.

Parameters
[in]hspecific enthalpy (J / kg)
[in]sspecific entropy (J/K*kg)
[in]p0initial guess for pressure (Pa / kg)
[in]T0initial guess for temperature (K)
[out]fluidpressure (Pa / kg)
[out]Temperature(K)

Definition at line 557 of file SinglePhaseFluidProperties.h.

Referenced by T_from_h_s().

564 {
565  auto h_lambda = [&](const T & pressure, const T & temperature, T & new_h, T & dh_dp, T & dh_dT)
566  { h_from_p_T(pressure, temperature, new_h, dh_dp, dh_dT); };
567  auto s_lambda = [&](const T & pressure, const T & temperature, T & new_s, T & ds_dp, T & ds_dT)
568  { s_from_p_T(pressure, temperature, new_s, ds_dp, ds_dT); };
569  try
570  {
572  h, s, p0, T0, pressure, temperature, _tolerance, _tolerance, h_lambda, s_lambda);
573  conversion_succeeded = true;
574  }
575  catch (MooseException &)
576  {
577  conversion_succeeded = false;
578  }
579 
580  if (!conversion_succeeded)
581  mooseDoOnce(mooseWarning("Conversion from (h, s)=(", h, ", ", s, ") to (p, T) failed"));
582 }
static const std::string temperature
Definition: NS.h:57
void mooseWarning(Args &&... args) const
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
void NewtonSolve2D(const T &f, const T &g, const Real x0, const Real y0, T &x_final, T &y_final, const Real f_tol, const Real g_tol, const Functor1 &func1, const Functor2 &func2, const unsigned int max_its=100)
NewtonSolve2D does a 2D Newton Solve to solve for the x and y such that: f = func1(x, y) and g = func2(x, y).
e e e e s T T T T T rho v v T h
static const std::string pressure
Definition: NS.h:56

◆ p_T_from_v_e()

template<typename CppType >
void SinglePhaseFluidProperties::p_T_from_v_e ( const CppType &  v,
const CppType &  e,
Real  p0,
Real  T0,
CppType &  p,
CppType &  T,
bool &  conversion_succeeded 
) const
inherited

Determines (p,T) from (v,e) using Newton Solve in 2D Useful for conversion between different sets of state variables.

Parameters
[in]vspecific volume (m^3 / kg)
[in]especific internal energy (J / kg)
[in]p0initial guess for pressure (Pa / kg)
[in]T0initial guess for temperature (K)
[out]fluidpressure (Pa / kg)
[out]Temperature(K)

Definition at line 493 of file SinglePhaseFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), and g_from_v_e().

500 {
501  auto v_lambda = [&](const CppType & pressure,
502  const CppType & temperature,
503  CppType & new_v,
504  CppType & dv_dp,
505  CppType & dv_dT) { v_from_p_T(pressure, temperature, new_v, dv_dp, dv_dT); };
506  auto e_lambda = [&](const CppType & pressure,
507  const CppType & temperature,
508  CppType & new_e,
509  CppType & de_dp,
510  CppType & de_dT) { e_from_p_T(pressure, temperature, new_e, de_dp, de_dT); };
511  try
512  {
514  v, e, p0, T0, p, T, _tolerance, _tolerance, v_lambda, e_lambda);
515  conversion_succeeded = true;
516  }
517  catch (MooseException &)
518  {
519  conversion_succeeded = false;
520  }
521 
522  if (!conversion_succeeded)
523  mooseDoOnce(mooseWarning("Conversion from (v, e)=(", v, ", ", e, ") to (p, T) failed"));
524 }
static const std::string temperature
Definition: NS.h:57
void mooseWarning(Args &&... args) const
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
void NewtonSolve2D(const T &f, const T &g, const Real x0, const Real y0, T &x_final, T &y_final, const Real f_tol, const Real g_tol, const Functor1 &func1, const Functor2 &func2, const unsigned int max_its=100)
NewtonSolve2D does a 2D Newton Solve to solve for the x and y such that: f = func1(x, y) and g = func2(x, y).
static const std::string pressure
Definition: NS.h:56

◆ p_T_from_v_h()

template<typename T >
void SinglePhaseFluidProperties::p_T_from_v_h ( const T v,
const T h,
Real  p0,
Real  T0,
T pressure,
T temperature,
bool &  conversion_succeeded 
) const
inherited

Determines (p,T) from (v,h) using Newton Solve in 2D Useful for conversion between different sets of state variables.

Parameters
[in]vspecific volume (m^3 / kg)
[in]hspecific enthalpy (J / kg)
[in]p0initial guess for pressure (Pa / kg)
[in]T0initial guess for temperature (K)
[out]fluidpressure (Pa / kg)
[out]Temperature(K)

Definition at line 528 of file SinglePhaseFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

535 {
536  auto v_lambda = [&](const T & pressure, const T & temperature, T & new_v, T & dv_dp, T & dv_dT)
537  { v_from_p_T(pressure, temperature, new_v, dv_dp, dv_dT); };
538  auto h_lambda = [&](const T & pressure, const T & temperature, T & new_h, T & dh_dp, T & dh_dT)
539  { h_from_p_T(pressure, temperature, new_h, dh_dp, dh_dT); };
540  try
541  {
543  v, h, p0, T0, pressure, temperature, _tolerance, _tolerance, v_lambda, h_lambda);
544  conversion_succeeded = true;
545  }
546  catch (MooseException &)
547  {
548  conversion_succeeded = false;
549  }
550 
551  if (!conversion_succeeded)
552  mooseDoOnce(mooseWarning("Conversion from (v, h)=(", v, ", ", h, ") to (p, T) failed"));
553 }
static const std::string temperature
Definition: NS.h:57
void mooseWarning(Args &&... args) const
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
void NewtonSolve2D(const T &f, const T &g, const Real x0, const Real y0, T &x_final, T &y_final, const Real f_tol, const Real g_tol, const Functor1 &func1, const Functor2 &func2, const unsigned int max_its=100)
NewtonSolve2D does a 2D Newton Solve to solve for the x and y such that: f = func1(x, y) and g = func2(x, y).
e e e e s T T T T T rho v v T h
static const std::string pressure
Definition: NS.h:56

◆ propfunc() [1/14]

SinglePhaseFluidProperties::propfunc ( p  ,
v  ,
 
)
inherited

Compute a fluid property given for the state defined by two given properties.

For all functions, the first two arguments are the given properties that define the fluid state. For the two-argument variants, the desired property is the return value. The five-argument variants also provide partial derivatives dx/da and dx/db where x is the desired property being computed, a is the first given property, and b is the second given property. The desired property, dx/da, and dx/db are stored into the 3rd, 4th, and 5th arguments respectively.

Properties/parameters used in these function are listed below with their units:

p pressure [Pa] T temperature [K] e specific internal energy [J/kg] v specific volume [m^3/kg] rho density [kg/m^3] h specific enthalpy [J/kg] s specific entropy [J/(kg*K)] mu viscosity [Pa*s] k thermal conductivity [W/(m*K)] c speed of sound [m/s] cp constant-pressure specific heat [J/K] cv constant-volume specific heat [J/K] beta volumetric thermal expansion coefficient [1/K] g Gibbs free energy [J] pp_sat partial pressure at saturation [Pa] gamma Adiabatic ratio (cp/cv) [-]

As an example:

// calculate pressure given specific vol and energy: auto pressure = your_fluid_properties_object.p_from_v_e(specific_vol, specific_energy);

// or use the derivative variant: Real dp_dv = 0; // derivative will be stored into here Real dp_de = 0; // derivative will be stored into here your_fluid_properties_object.p_from_v_e(specific_vol, specific_energy, pressure, dp_dv, dp_de);

Automatic differentiation (AD) support is provided through x_from_a_b(DualReal a, DualReal b) and x_from_a_b(DualReal a, DualReal b, DualReal x, DualReal dx_da, DualReal dx_db) versions of the functions where a and b must be ADReal/DualNumber's calculated using all AD-supporting values:

auto v = 1/rho; // rho must be an AD non-linear variable. auto e = rhoE/rho - vel_energy; // rhoE and vel_energy must be AD variables/numbers also. auto pressure = your_fluid_properties_object.p_from_v_e(v, e); // pressure now contains partial derivatives w.r.t. all degrees of freedom

◆ propfunc() [2/14]

e SinglePhaseFluidProperties::propfunc ( c  ,
v  ,
 
)
inherited

◆ propfunc() [3/14]

e e SinglePhaseFluidProperties::propfunc ( cv  ,
v  ,
 
)
inherited

◆ propfunc() [4/14]

e e e SinglePhaseFluidProperties::propfunc ( ,
v  ,
 
)
inherited

◆ propfunc() [5/14]

e e e e SinglePhaseFluidProperties::propfunc ( ,
h  ,
p   
)
inherited

◆ propfunc() [6/14]

e e e e s SinglePhaseFluidProperties::propfunc ( ,
v  ,
h   
)
inherited

◆ propfunc() [7/14]

e e e e s T SinglePhaseFluidProperties::propfunc ( pp_sat  ,
p  ,
T   
)
inherited

◆ propfunc() [8/14]

e e e e s T T SinglePhaseFluidProperties::propfunc ( ,
rho  ,
T   
)
inherited

◆ propfunc() [9/14]

e e e e s T T T T T SinglePhaseFluidProperties::propfunc ( rho  ,
p  ,
T   
)
inherited

◆ propfunc() [10/14]

e e e e s T T T T T rho SinglePhaseFluidProperties::propfunc ( ,
T  ,
v   
)
inherited

◆ propfunc() [11/14]

e e e e s T T T T T rho v SinglePhaseFluidProperties::propfunc ( h  ,
T  ,
v   
)
inherited

◆ propfunc() [12/14]

e e e e s T T T T T rho v v SinglePhaseFluidProperties::propfunc ( cv  ,
T  ,
v   
)
inherited

◆ propfunc() [13/14]

e e e e s T T T T T rho v v T SinglePhaseFluidProperties::propfunc ( ,
v  ,
 
)
inherited

◆ propfunc() [14/14]

e e e e s T T T T T rho v v T s SinglePhaseFluidProperties::propfunc ( T  ,
h  ,
p   
)
inherited

◆ propfuncWithDefault() [1/4]

e e e e s T T T SinglePhaseFluidProperties::propfuncWithDefault ( cp  ,
p  ,
T   
)
inherited

◆ propfuncWithDefault() [2/4]

e e e e s T T T T SinglePhaseFluidProperties::propfuncWithDefault ( mu  ,
p  ,
T   
)
inherited

◆ propfuncWithDefault() [3/4]

e e e e s T T T T T rho v v T s h SinglePhaseFluidProperties::propfuncWithDefault ( beta  ,
p  ,
T   
)
inherited

◆ propfuncWithDefault() [4/4]

e e e e s T T T T T rho v v T s h T SinglePhaseFluidProperties::propfuncWithDefault ( ,
p  ,
T   
)
inherited

◆ rho_e_from_p_T()

void SinglePhaseFluidProperties::rho_e_from_p_T ( Real  p,
Real  T,
Real rho,
Real drho_dp,
Real drho_dT,
Real e,
Real de_dp,
Real de_dT 
) const
virtualinherited

Definition at line 413 of file SinglePhaseFluidProperties.C.

421 {
422  rho_from_p_T(p, T, rho, drho_dp, drho_dT);
423  e_from_p_T(p, T, e, de_dp, de_dT);
424 }

◆ rho_from_p_s() [1/2]

Real TabulatedFluidProperties::rho_from_p_s ( Real  p,
Real  s 
) const
overridevirtual

Definition at line 456 of file TabulatedFluidProperties.C.

457 {
458  Real T = T_from_p_s(p, s);
459  return rho_from_p_T(p, T);
460 }
virtual Real T_from_p_s(Real p, Real s) const
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ rho_from_p_s() [2/2]

void TabulatedFluidProperties::rho_from_p_s ( Real  p,
Real  s,
Real rho,
Real drho_dp,
Real drho_ds 
) const
overridevirtual

Definition at line 463 of file TabulatedFluidProperties.C.

465 {
466  Real T, dT_dp, dT_ds;
467  T_from_p_s(p, s, T, dT_dp, dT_ds);
468  Real drho_dp_T, drho_dT;
469  rho_from_p_T(p, T, rho, drho_dp_T, drho_dT);
470  drho_dp = drho_dT * dT_dp + drho_dp_T;
471  drho_ds = drho_dT * dT_ds;
472 }
virtual Real T_from_p_s(Real p, Real s) const
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ rho_from_p_T() [1/3]

Real TabulatedFluidProperties::rho_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 398 of file TabulatedFluidProperties.C.

Referenced by e_from_p_rho(), rho_from_p_s(), and T_from_p_rho().

399 {
401  {
404  }
405  else
406  {
407  if (_fp)
408  return _fp->rho_from_p_T(pressure, temperature);
409  else
410  paramError("fp", "No fluid properties or csv data provided for density.");
411  }
412 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ rho_from_p_T() [2/3]

void TabulatedFluidProperties::rho_from_p_T ( Real  pressure,
Real  temperature,
Real rho,
Real drho_dp,
Real drho_dT 
) const
overridevirtual

Definition at line 415 of file TabulatedFluidProperties.C.

417 {
419  {
421  _property_ipol[_density_idx]->sampleValueAndDerivatives(
422  pressure, temperature, rho, drho_dp, drho_dT);
423  }
424  else
425  {
426  if (_fp)
427  _fp->rho_from_p_T(pressure, temperature, rho, drho_dp, drho_dT);
428  else
429  paramError("fp", "No fluid properties or csv data provided for density.");
430  }
431 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ rho_from_p_T() [3/3]

void TabulatedFluidProperties::rho_from_p_T ( const ADReal pressure,
const ADReal temperature,
ADReal rho,
ADReal drho_dp,
ADReal drho_dT 
) const
overridevirtual

Definition at line 434 of file TabulatedFluidProperties.C.

439 {
441  {
444  _property_ipol[_density_idx]->sampleValueAndDerivatives(p, T, rho, drho_dp, drho_dT);
445  }
446  else
447  {
448  if (_fp)
449  _fp->rho_from_p_T(pressure, temperature, rho, drho_dp, drho_dT);
450  else
451  paramError("fp", "No fluid properties or csv data provided for density.");
452  }
453 }
static const std::string temperature
Definition: NS.h:57
DualReal ADReal
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ rho_mu_from_p_T() [1/3]

void SinglePhaseFluidProperties::rho_mu_from_p_T ( Real  p,
Real  T,
Real rho,
Real mu 
) const
virtualinherited

Combined methods.

These methods are particularly useful for the PorousFlow module, where density and viscosity are typically both computed everywhere. The combined methods allow the most efficient means of calculating both properties, especially where rho(p, T) and mu(rho, T). In this case, an extra density calculation would be required to calculate mu(p, T). All property names are described above.

Reimplemented in Water97FluidProperties, CO2FluidProperties, HydrogenFluidProperties, and NitrogenFluidProperties.

Definition at line 427 of file SinglePhaseFluidProperties.C.

Referenced by PorousFlowWaterNCG::gasProperties(), PorousFlowBrineCO2::gasProperties(), and PorousFlowWaterNCG::liquidProperties().

428 {
429  rho = rho_from_p_T(p, T);
430  mu = mu_from_p_T(p, T);
431 }
static const std::string mu
Definition: NS.h:122

◆ rho_mu_from_p_T() [2/3]

void SinglePhaseFluidProperties::rho_mu_from_p_T ( Real  p,
Real  T,
Real rho,
Real drho_dp,
Real drho_dT,
Real mu,
Real dmu_dp,
Real dmu_dT 
) const
virtualinherited

Reimplemented in Water97FluidProperties, CO2FluidProperties, HydrogenFluidProperties, and NitrogenFluidProperties.

Definition at line 434 of file SinglePhaseFluidProperties.C.

442 {
443  rho_from_p_T(p, T, rho, drho_dp, drho_dT);
444  mu_from_p_T(p, T, mu, dmu_dp, dmu_dT);
445 }
static const std::string mu
Definition: NS.h:122

◆ rho_mu_from_p_T() [3/3]

void SinglePhaseFluidProperties::rho_mu_from_p_T ( const DualReal p,
const DualReal T,
DualReal rho,
DualReal mu 
) const
virtualinherited

Definition at line 448 of file SinglePhaseFluidProperties.C.

452 {
453  rho = rho_from_p_T(p, T);
454  mu = mu_from_p_T(p, T);
455 }
static const std::string mu
Definition: NS.h:122

◆ s_from_h_p()

Real TabulatedFluidProperties::s_from_h_p ( Real  h,
Real  pressure 
) const
overridevirtual

Definition at line 1098 of file TabulatedFluidProperties.C.

1099 {
1100  Real T = T_from_h_p(h, pressure);
1101  return s_from_p_T(pressure, T);
1102 }
virtual Real s_from_p_T(Real pressure, Real temperature) const override
virtual Real T_from_h_p(Real h, Real pressure) const override
e e e e s T T T T T rho v v T h
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56

◆ s_from_p_T() [1/2]

Real TabulatedFluidProperties::s_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 813 of file TabulatedFluidProperties.C.

Referenced by g_from_v_e(), s_from_h_p(), and T_from_p_s().

814 {
816  {
819  }
820  else
821  {
822  if (_fp)
823  return _fp->s_from_p_T(pressure, temperature);
824  else
825  paramError("interpolated_properties", "No data to interpolate for entropy.");
826  }
827 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ s_from_p_T() [2/2]

void TabulatedFluidProperties::s_from_p_T ( Real  p,
Real  T,
Real s,
Real ds_dp,
Real ds_dT 
) const
overridevirtual

Definition at line 830 of file TabulatedFluidProperties.C.

831 {
833  {
835  _property_ipol[_entropy_idx]->sampleValueAndDerivatives(p, T, s, ds_dp, ds_dT);
836  }
837  else
838  {
839  if (_fp)
840  _fp->s_from_p_T(p, T, s, ds_dp, ds_dT);
841  else
842  paramError("interpolated_properties", "No data to interpolate for entropy.");
843  }
844 }
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ subdomainSetup()

virtual void FluidProperties::subdomainSetup ( )
inlinefinalvirtualinherited

Reimplemented from ThreadedGeneralUserObject.

Definition at line 38 of file FluidProperties.h.

38 {}

◆ T_from_h_p()

Real TabulatedFluidProperties::T_from_h_p ( Real  h,
Real  pressure 
) const
overridevirtual

Definition at line 1080 of file TabulatedFluidProperties.C.

Referenced by s_from_h_p().

1081 {
1082  auto lambda = [&](Real pressure, Real current_T, Real & new_h, Real & dh_dp, Real & dh_dT)
1083  { h_from_p_T(pressure, current_T, new_h, dh_dp, dh_dT); };
1085  pressure, h, _T_initial_guess, _tolerance, lambda, name() + "::T_from_h_p")
1086  .first;
1087  // check for nans
1088  if (std::isnan(T))
1089  mooseError("Conversion from enthalpy (h = ",
1090  h,
1091  ") and pressure (p = ",
1092  pressure,
1093  ") to temperature failed to converge.");
1094  return T;
1095 }
virtual const std::string & name() const
std::pair< T, T > NewtonSolve(const T &x, const T &y, const Real z_initial_guess, const Real tolerance, const Functor &func, const std::string &caller_name, const unsigned int max_its=100)
NewtonSolve does a 1D Newton Solve to solve the equation y = f(x, z) for variable z...
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
virtual Real h_from_p_T(Real p, Real T) const override
e e e e s T T T T T rho v v T h
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
void mooseError(Args &&... args) const

◆ T_from_h_s()

Real TabulatedFluidProperties::T_from_h_s ( Real  h,
Real  s 
) const
virtual

Definition at line 1069 of file TabulatedFluidProperties.C.

1070 {
1071  Real p0 = _p_initial_guess;
1072  Real T0 = _T_initial_guess;
1073  Real p, T;
1074  bool conversion_succeeded;
1075  p_T_from_h_s(h, s, p0, T0, p, T, conversion_succeeded);
1076  return T;
1077 }
e e e e s T T T T T rho v v T h
void p_T_from_h_s(const T &h, const T &s, Real p0, Real T0, T &pressure, T &temperature, bool &conversion_succeeded) const
Determines (p,T) from (h,s) using Newton Solve in 2D Useful for conversion between different sets of ...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ T_from_p_rho() [1/2]

Real TabulatedFluidProperties::T_from_p_rho ( Real  pressure,
Real  rho 
) const
virtual

Definition at line 540 of file TabulatedFluidProperties.C.

Referenced by e_from_p_rho(), and T_from_p_rho().

541 {
542  auto lambda = [&](Real p, Real current_T, Real & new_rho, Real & drho_dp, Real & drho_dT)
543  { rho_from_p_T(p, current_T, new_rho, drho_dp, drho_dT); };
545  pressure, rho, _T_initial_guess, _tolerance, lambda, name() + "::T_from_p_rho")
546  .first;
547  // check for nans
548  if (std::isnan(T))
549  mooseError("Conversion from pressure (p = ",
550  pressure,
551  ") and density (rho = ",
552  rho,
553  ") to temperature failed to converge.");
554  return T;
555 }
virtual const std::string & name() const
std::pair< T, T > NewtonSolve(const T &x, const T &y, const Real z_initial_guess, const Real tolerance, const Functor &func, const std::string &caller_name, const unsigned int max_its=100)
NewtonSolve does a 1D Newton Solve to solve the equation y = f(x, z) for variable z...
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
void mooseError(Args &&... args) const

◆ T_from_p_rho() [2/2]

void TabulatedFluidProperties::T_from_p_rho ( Real  pressure,
Real  rho,
Real T,
Real dT_dp,
Real dT_drho 
) const
virtual

Definition at line 558 of file TabulatedFluidProperties.C.

560 {
562  Real eps = 1e-8;
563  dT_dp = (T_from_p_rho(pressure * (1 + eps), rho) - T) / (eps * pressure);
564  dT_drho = (T_from_p_rho(pressure, rho * (1 + eps)) - T) / (eps * rho);
565 }
const Real eps
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
virtual Real T_from_p_rho(Real pressure, Real rho) const

◆ T_from_p_s() [1/2]

Real TabulatedFluidProperties::T_from_p_s ( Real  p,
Real  s 
) const
virtual

Definition at line 568 of file TabulatedFluidProperties.C.

Referenced by rho_from_p_s(), and T_from_p_s().

569 {
570  auto lambda = [&](Real p, Real current_T, Real & new_s, Real & ds_dp, Real & ds_dT)
571  { s_from_p_T(p, current_T, new_s, ds_dp, ds_dT); };
573  pressure, s, _T_initial_guess, _tolerance, lambda, name() + "::T_from_p_s")
574  .first;
575  // check for nans
576  if (std::isnan(T))
577  mooseError("Conversion from pressure (p = ",
578  pressure,
579  ") and entropy (s = ",
580  s,
581  ") to temperature failed to converge.");
582  return T;
583 }
virtual Real s_from_p_T(Real pressure, Real temperature) const override
virtual const std::string & name() const
std::pair< T, T > NewtonSolve(const T &x, const T &y, const Real z_initial_guess, const Real tolerance, const Functor &func, const std::string &caller_name, const unsigned int max_its=100)
NewtonSolve does a 1D Newton Solve to solve the equation y = f(x, z) for variable z...
const Real _tolerance
Newton&#39;s method may be used to convert between variable sets _tolerance, _T_initial_guess, and _p_initial_guess are the parameters for these iterative solves.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
void mooseError(Args &&... args) const

◆ T_from_p_s() [2/2]

void TabulatedFluidProperties::T_from_p_s ( Real  p,
Real  s,
Real T,
Real dT_dp,
Real dT_ds 
) const
virtual

Definition at line 586 of file TabulatedFluidProperties.C.

588 {
589  T = T_from_p_s(pressure, s);
590  Real eps = 1e-8;
591  dT_dp = (T_from_p_s(pressure * (1 + eps), s) - T) / (eps * pressure);
592  dT_ds = (T_from_p_s(pressure, s * (1 + eps)) - T) / (eps * s);
593 }
const Real eps
virtual Real T_from_p_s(Real p, Real s) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56

◆ T_from_v_e() [1/2]

Real TabulatedFluidProperties::T_from_v_e ( Real  v,
Real  e 
) const
overridevirtual

Definition at line 915 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

916 {
918  mooseError("You must construct pT from ve tables when calling T_from_v_e.");
919  return _T_from_v_e_ipol->sample(v, e);
920 }
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
void mooseError(Args &&... args) const

◆ T_from_v_e() [2/2]

void TabulatedFluidProperties::T_from_v_e ( Real  v,
Real  e,
Real T,
Real dT_dv,
Real dT_de 
) const
overridevirtual

Definition at line 923 of file TabulatedFluidProperties.C.

924 {
926  mooseError("You must construct pT from ve tables when calling T_from_v_e.");
927  _T_from_v_e_ipol->sampleValueAndDerivatives(v, e, T, dT_dv, dT_de);
928 }
std::unique_ptr< BidimensionalInterpolation > _T_from_v_e_ipol
Bi-dimensional interpolation of temperature from (v,e)
bool _construct_pT_from_ve
if the lookup table p(v, e) and T(v, e) should be constructed
void mooseError(Args &&... args) const

◆ threadJoin()

virtual void FluidProperties::threadJoin ( const UserObject )
inlinefinalvirtualinherited

Reimplemented from ThreadedGeneralUserObject.

Definition at line 37 of file FluidProperties.h.

37 {}

◆ triplePointPressure()

Real SinglePhaseFluidProperties::triplePointPressure ( ) const
virtualinherited

Triple point pressure.

Returns
triple point pressure (Pa)

Reimplemented in CO2FluidProperties, HydrogenFluidProperties, NitrogenFluidProperties, MethaneFluidProperties, NaClFluidProperties, and Water97FluidProperties.

Definition at line 303 of file SinglePhaseFluidProperties.C.

304 {
305  mooseError(__PRETTY_FUNCTION__, " not implemented.");
306 }
void mooseError(Args &&... args) const

◆ triplePointTemperature()

Real SinglePhaseFluidProperties::triplePointTemperature ( ) const
virtualinherited

Triple point temperature.

Returns
triple point temperature (K)

Reimplemented in CO2FluidProperties, HydrogenFluidProperties, NitrogenFluidProperties, MethaneFluidProperties, NaClFluidProperties, and Water97FluidProperties.

Definition at line 309 of file SinglePhaseFluidProperties.C.

310 {
311  mooseError(__PRETTY_FUNCTION__, " not implemented.");
312 }
void mooseError(Args &&... args) const

◆ v_e_from_p_T() [1/2]

template<typename CppType >
void SinglePhaseFluidProperties::v_e_from_p_T ( const CppType &  p,
const CppType &  T,
CppType &  v,
CppType &  e 
) const
inherited

Definition at line 586 of file SinglePhaseFluidProperties.h.

590 {
591  const CppType rho = rho_from_p_T(p, T);
592  v = 1.0 / rho;
593  try
594  {
595  // more likely to not involve a Newton search
596  e = e_from_p_T(p, T);
597  }
598  catch (...)
599  {
600  e = e_from_p_rho(p, rho);
601  }
602 }

◆ v_e_from_p_T() [2/2]

template<typename CppType >
void SinglePhaseFluidProperties::v_e_from_p_T ( const CppType &  p,
const CppType &  T,
CppType &  v,
CppType &  dv_dp,
CppType &  dv_dT,
CppType &  e,
CppType &  de_dp,
CppType &  de_dT 
) const
inherited

Definition at line 606 of file SinglePhaseFluidProperties.h.

614 {
615  CppType rho, drho_dp, drho_dT;
616  rho_from_p_T(p, T, rho, drho_dp, drho_dT);
617 
618  v = 1.0 / rho;
619  const CppType dv_drho = -1.0 / (rho * rho);
620  dv_dp = dv_drho * drho_dp;
621  dv_dT = dv_drho * drho_dT;
622 
623  CppType de_dp_partial, de_drho;
624  e_from_p_rho(p, rho, e, de_dp_partial, de_drho);
625  de_dp = de_dp_partial + de_drho * drho_dp;
626  de_dT = de_drho * drho_dT;
627 }

◆ v_e_spndl_from_T()

void SinglePhaseFluidProperties::v_e_spndl_from_T ( Real  T,
Real v,
Real e 
) const
virtualinherited

Specific internal energy from temperature and specific volume.

Parameters
[in]Ttemperature
[in]vspecific volume

Reimplemented in IdealGasFluidProperties, CaloricallyImperfectGas, and StiffenedGasFluidProperties.

Definition at line 463 of file SinglePhaseFluidProperties.C.

Referenced by IdealRealGasMixtureFluidProperties::v_from_p_T().

464 {
465  mooseError(__PRETTY_FUNCTION__, " not implemented.");
466 }
void mooseError(Args &&... args) const

◆ v_from_p_T() [1/2]

Real TabulatedFluidProperties::v_from_p_T ( Real  pressure,
Real  temperature 
) const
overridevirtual

Definition at line 357 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

358 {
360  {
362  return 1.0 / _property_ipol[_density_idx]->sample(pressure, temperature);
363  }
364  else
365  {
366  if (_fp)
367  return 1.0 / _fp->rho_from_p_T(pressure, temperature);
368  else
369  paramError("fp", "No fluid properties or csv data provided for density.");
370  }
371 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
static const std::string pressure
Definition: NS.h:56
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ v_from_p_T() [2/2]

void TabulatedFluidProperties::v_from_p_T ( Real  pressure,
Real  temperature,
Real v,
Real dv_dp,
Real dv_dT 
) const
overridevirtual

Definition at line 374 of file TabulatedFluidProperties.C.

376 {
377  Real rho = 0, drho_dp = 0, drho_dT = 0;
379  {
381  _property_ipol[_density_idx]->sampleValueAndDerivatives(
382  pressure, temperature, rho, drho_dp, drho_dT);
383  }
384  else
385  {
386  if (_fp)
387  _fp->rho_from_p_T(pressure, temperature, rho, drho_dp, drho_dT);
388  else
389  paramError("fp", "No fluid properties or csv data provided for density.");
390  }
391  // convert from rho to v
392  v = 1.0 / rho;
393  dv_dp = -drho_dp / (rho * rho);
394  dv_dT = -drho_dT / (rho * rho);
395 }
static const std::string temperature
Definition: NS.h:57
void paramError(const std::string &param, Args... args) const
void checkInputVariables(T &pressure, T &temperature) const
Checks that the inputs are within the range of the tabulated data, and throws an error if they are no...
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56
unsigned int _density_idx
Index of each property.
bool _interpolate_density
Set of flags to note whether a property is to be interpolated.
std::vector< std::unique_ptr< BidimensionalInterpolation > > _property_ipol
Vector of bi-dimensional interpolation of fluid properties.

◆ validParams()

InputParameters TabulatedFluidProperties::validParams ( )
static

Definition at line 23 of file TabulatedFluidProperties.C.

Referenced by TabulatedBicubicFluidProperties::validParams().

24 {
26  params.addClassDescription(
27  "Single phase fluid properties computed using bi-dimensional interpolation of tabulated "
28  "values.");
29 
30  params.addParam<FileName>(
31  "fluid_property_file",
32  "fluid_properties.csv",
33  "Name of the csv file containing the tabulated fluid property data. If "
34  "no file exists and save_file = true, then one will be written to "
35  "fluid_properties.csv using the temperature and pressure range specified.");
36  params.addRangeCheckedParam<Real>(
37  "temperature_min", 300, "temperature_min > 0", "Minimum temperature for tabulated data.");
38  params.addParam<Real>("temperature_max", 500, "Maximum temperature for tabulated data.");
39  params.addRangeCheckedParam<Real>(
40  "pressure_min", 1e5, "pressure_min > 0", "Minimum pressure for tabulated data.");
41  params.addParam<Real>("pressure_max", 50.0e6, "Maximum pressure for tabulated data.");
42  params.addRangeCheckedParam<unsigned int>(
43  "num_T", 100, "num_T > 0", "Number of points to divide temperature range.");
44  params.addRangeCheckedParam<unsigned int>(
45  "num_p", 100, "num_p > 0", "Number of points to divide pressure range.");
46  params.addParam<UserObjectName>("fp", "The name of the FluidProperties UserObject");
47  MultiMooseEnum properties("density enthalpy internal_energy viscosity k c cv cp entropy",
48  "density enthalpy internal_energy viscosity");
49  params.addParam<MultiMooseEnum>("interpolated_properties",
50  properties,
51  "Properties to interpolate if no data file is provided");
52  params.addParam<bool>("save_file", true, "Whether to save the csv fluid properties file");
53  params.addParam<bool>("construct_pT_from_ve",
54  false,
55  "If the lookup table (p, T) as functions of (v, e) should be constructed.");
56  params.addParam<bool>("construct_pT_from_vh",
57  false,
58  "If the lookup table (p, T) as functions of (v, h) should be constructed.");
59  params.addRangeCheckedParam<unsigned int>(
60  "num_v",
61  100,
62  "num_v > 0",
63  "Number of points to divide specific volume range for (v,e) lookups.");
64  params.addRangeCheckedParam<unsigned int>("num_e",
65  100,
66  "num_e > 0",
67  "Number of points to divide specific internal energy "
68  "range for (v,e) lookups.");
69  params.addParam<bool>(
70  "error_on_out_of_bounds",
71  true,
72  "Whether pressure or temperature from tabulation exceeding user-specified bounds leads to "
73  "an error.");
74  params.addParam<bool>(
75  "use_log_grid_v",
76  false,
77  "Option to use a base-10 logarithmically-spaced grid for specific volume instead of a "
78  "linearly-spaced grid.");
79 
80  params.addParamNamesToGroup("fluid_property_file save_file", "Tabulation file read/write");
81  params.addParamNamesToGroup("construct_pT_from_ve construct_pT_from_vh",
82  "Variable set conversion");
83  params.addParamNamesToGroup(
84  "temperature_min temperature_max pressure_min pressure_max error_on_out_of_bounds",
85  "Tabulation and interpolation bounds");
86  params.addParamNamesToGroup("num_T num_p num_v num_e use_log_grid_v",
87  "Tabulation and interpolation discretization");
88 
89  return params;
90 }
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
static InputParameters validParams()
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
void addRangeCheckedParam(const std::string &name, const T &value, const std::string &parsed_function, const std::string &doc_string)
void addParamNamesToGroup(const std::string &space_delim_names, const std::string group_name)

◆ vaporPressure() [1/3]

Real TabulatedFluidProperties::vaporPressure ( Real  T) const
overridevirtual

Vapor pressure.

Used to delineate liquid and gas phases. Valid for temperatures between the triple point temperature and the critical temperature

Parameters
Tfluid temperature (K)
[out]saturationpressure (Pa)
[out]derivativeof saturation pressure wrt temperature (Pa/K)

Reimplemented from SinglePhaseFluidProperties.

Definition at line 881 of file TabulatedFluidProperties.C.

882 {
883  if (_fp)
884  return _fp->vaporPressure(temperature);
885  else
886  mooseError("vaporPres not specified.");
887 }
static const std::string temperature
Definition: NS.h:57
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
void mooseError(Args &&... args) const
virtual Real vaporPressure(Real T) const
Vapor pressure.

◆ vaporPressure() [2/3]

void TabulatedFluidProperties::vaporPressure ( Real  temperature,
Real psat,
Real dpsat_dT 
) const
overridevirtual

Reimplemented from SinglePhaseFluidProperties.

Definition at line 890 of file TabulatedFluidProperties.C.

891 {
892  if (_fp)
893  _fp->vaporPressure(temperature, psat, dpsat_dT);
894  else
895  mooseError("vaporPressure not specified.");
896 }
static const std::string temperature
Definition: NS.h:57
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
void mooseError(Args &&... args) const
virtual Real vaporPressure(Real T) const
Vapor pressure.

◆ vaporPressure() [3/3]

DualReal SinglePhaseFluidProperties::vaporPressure ( const DualReal T) const
inherited

Definition at line 369 of file SinglePhaseFluidProperties.C.

370 {
371  Real p = 0.0;
372  Real temperature = T.value();
373  Real dpdT = 0.0;
374 
375  vaporPressure(temperature, p, dpdT);
376 
377  DualReal result = p;
378  result.derivatives() = T.derivatives() * dpdT;
379 
380  return result;
381 }
static const std::string temperature
Definition: NS.h:57
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real vaporPressure(Real T) const
Vapor pressure.

◆ vaporTemperature() [1/3]

Real SinglePhaseFluidProperties::vaporTemperature ( Real  p) const
virtualinherited

Vapor temperature.

Used to delineate liquid and gas phases. Valid for pressures between the triple point pressure and the critical pressure

Parameters
pfluid pressure (Pa)
[out]saturationtemperature (K)
[out]derivativeof saturation temperature wrt pressure

Reimplemented in Water97FluidProperties.

Definition at line 383 of file SinglePhaseFluidProperties.C.

Referenced by PorousFlowWaterVapor::thermophysicalProperties(), and SinglePhaseFluidProperties::vaporTemperature().

384 {
385  mooseError(__PRETTY_FUNCTION__, " not implemented.");
386 }
void mooseError(Args &&... args) const

◆ vaporTemperature() [2/3]

void SinglePhaseFluidProperties::vaporTemperature ( Real  p,
Real Tsat,
Real dTsat_dp 
) const
virtualinherited

Reimplemented in Water97FluidProperties.

Definition at line 389 of file SinglePhaseFluidProperties.C.

390 {
391  fluidPropError(__PRETTY_FUNCTION__, " derivatives not implemented.");
392 
393  dT_dp = 0.0;
394  T = vaporTemperature(p);
395 }
virtual Real vaporTemperature(Real p) const
Vapor temperature.
void fluidPropError(Args... args) const

◆ vaporTemperature() [3/3]

DualReal SinglePhaseFluidProperties::vaporTemperature ( const DualReal p) const
inherited

Definition at line 398 of file SinglePhaseFluidProperties.C.

399 {
400  Real T = 0.0;
401  Real pressure = p.value();
402  Real dTdp = 0.0;
403 
404  vaporTemperature(pressure, T, dTdp);
405 
406  DualReal result = T;
407  result.derivatives() = p.derivatives() * dTdp;
408 
409  return result;
410 }
virtual Real vaporTemperature(Real p) const
Vapor temperature.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string pressure
Definition: NS.h:56

◆ writeTabulatedData()

void TabulatedFluidProperties::writeTabulatedData ( std::string  file_name)
protected

Writes tabulated data to a file.

Parameters
file_namename of the file to be written

Definition at line 1105 of file TabulatedFluidProperties.C.

Referenced by initialSetup().

1106 {
1107  if (processor_id() == 0)
1108  {
1109  MooseUtils::checkFileWriteable(file_name);
1110 
1111  std::ofstream file_out(file_name.c_str());
1112 
1113  // Write out date and fluid type
1114  time_t now = time(&now);
1115  if (_fp)
1116  file_out << "# " << _fp->fluidName() << " properties created by TabulatedFluidProperties on "
1117  << ctime(&now) << "\n";
1118  else
1119  mooseError("fluidName not specified.");
1120 
1121  // Write out column names
1122  file_out << "pressure, temperature";
1123  for (std::size_t i = 0; i < _interpolated_properties.size(); ++i)
1124  file_out << ", " << _interpolated_properties[i];
1125  file_out << "\n";
1126 
1127  // Write out the fluid property data
1128  for (unsigned int p = 0; p < _num_p; ++p)
1129  for (unsigned int t = 0; t < _num_T; ++t)
1130  {
1131  file_out << _pressure[p] << ", " << _temperature[t];
1132  for (std::size_t i = 0; i < _properties.size(); ++i)
1133  file_out << ", " << _properties[i][p * _num_T + t];
1134  file_out << "\n";
1135  }
1136 
1137  file_out << std::flush;
1138  file_out.close();
1139  }
1140 }
std::vector< std::string > _interpolated_properties
List of properties to be interpolated.
bool checkFileWriteable(const std::string &filename, bool throw_on_unwritable=true)
std::vector< Real > _pressure
Pressure vector.
std::vector< Real > _temperature
Temperature vector.
unsigned int _num_T
Number of temperature points in the tabulated data.
const SinglePhaseFluidProperties *const _fp
SinglePhaseFluidPropertiesPT UserObject.
std::vector< std::vector< Real > > _properties
Tabulated fluid properties.
unsigned int _num_p
Number of pressure points in the tabulated data.
void mooseError(Args &&... args) const
processor_id_type processor_id() const

◆ xyDerivatives()

template<typename T , typename Functor >
void SinglePhaseFluidProperties::xyDerivatives ( const T  x,
const T y,
T z,
T dz_dx,
T dz_dy,
const Functor z_from_x_y 
)
staticprotectedinherited

Computes the dependent variable z and its derivatives with respect to the independent variables x and y using the simple two parameter z_from_x_y functor.

The derivatives are computed using a compound automatic differentiation type

Definition at line 472 of file SinglePhaseFluidProperties.h.

Referenced by Water97FluidProperties::e_from_p_rho_template(), Water97FluidProperties::h_from_p_T_template(), Water97FluidProperties::rho_from_p_T_template(), and Water97FluidProperties::v_from_p_T_template().

474 {
476  const auto [zero, one] = makeZeroAndOne(x);
477 
478  CompoundType x_c(x, zero);
479  auto & x_cd = x_c.derivatives();
480  x_cd[0] = one;
481  CompoundType y_c(y, zero);
482  auto & y_cd = y_c.derivatives();
483  y_cd[1] = one;
484 
485  const auto z_c = z_from_x_y(x_c, y_c);
486  z = z_c.value();
487  dz_dx = z_c.derivatives()[0];
488  dz_dy = z_c.derivatives()[1];
489 }
static std::pair< T, T > makeZeroAndOne(const T &)
Given a type example, this method returns zero and unity reperesentations of that type (first and sec...
const std::vector< double > y
const Number zero
const std::vector< double > x

Member Data Documentation

◆ _allow_imperfect_jacobians

const bool FluidProperties::_allow_imperfect_jacobians
protectedinherited

Flag to set unimplemented Jacobian entries to zero.

Definition at line 47 of file FluidProperties.h.

Referenced by VaporMixtureFluidProperties::fluidPropError(), and SinglePhaseFluidProperties::fluidPropError().

◆ _c_idx

unsigned int TabulatedFluidProperties::_c_idx
protected

Definition at line 229 of file TabulatedFluidProperties.h.

Referenced by c_from_p_T(), and initialSetup().

◆ _construct_pT_from_ve

bool TabulatedFluidProperties::_construct_pT_from_ve
protected

if the lookup table p(v, e) and T(v, e) should be constructed

Definition at line 238 of file TabulatedFluidProperties.h.

Referenced by c_from_v_e(), checkInitialGuess(), TabulatedBicubicFluidProperties::constructInterpolation(), cp_from_v_e(), cv_from_v_e(), k_from_v_e(), mu_from_v_e(), p_from_v_e(), and T_from_v_e().

◆ _construct_pT_from_vh

bool TabulatedFluidProperties::_construct_pT_from_vh
protected

if the lookup table p(v, h) and T(v, h) should be constructed

Definition at line 240 of file TabulatedFluidProperties.h.

Referenced by checkInitialGuess(), TabulatedBicubicFluidProperties::constructInterpolation(), and e_from_v_h().

◆ _cp_idx

unsigned int TabulatedFluidProperties::_cp_idx
protected

Definition at line 230 of file TabulatedFluidProperties.h.

Referenced by cp_from_p_T(), and initialSetup().

◆ _csv_reader

MooseUtils::DelimitedFileReader TabulatedFluidProperties::_csv_reader
protected

The MOOSE delimited file reader.

Definition at line 235 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and TabulatedFluidProperties().

◆ _cv_idx

unsigned int TabulatedFluidProperties::_cv_idx
protected

Definition at line 231 of file TabulatedFluidProperties.h.

Referenced by cv_from_p_T(), and initialSetup().

◆ _density_idx

unsigned int TabulatedFluidProperties::_density_idx
protected

◆ _e_max

Real TabulatedFluidProperties::_e_max
protected

Maximum internal energy in tabulated data.

Definition at line 267 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _e_min

Real TabulatedFluidProperties::_e_min
protected

Minimum internal energy in tabulated data.

Definition at line 265 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _enthalpy

std::vector<Real> TabulatedFluidProperties::_enthalpy
protected

enthalpy vector

Definition at line 282 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _enthalpy_idx

unsigned int TabulatedFluidProperties::_enthalpy_idx
protected

◆ _entropy_idx

unsigned int TabulatedFluidProperties::_entropy_idx
protected

Definition at line 232 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and s_from_p_T().

◆ _error_on_out_of_bounds

bool TabulatedFluidProperties::_error_on_out_of_bounds
protected

to error or not on out-of-bounds check

Definition at line 248 of file TabulatedFluidProperties.h.

Referenced by checkInputVariables(), and TabulatedBicubicFluidProperties::constructInterpolation().

◆ _file_name

FileName TabulatedFluidProperties::_file_name
protected

File name of tabulated data file.

Definition at line 174 of file TabulatedFluidProperties.h.

Referenced by initialSetup().

◆ _fp

const SinglePhaseFluidProperties* const TabulatedFluidProperties::_fp
protected

◆ _h_max

Real TabulatedFluidProperties::_h_max
protected

Maximum specific enthalpy in tabulated data.

Definition at line 275 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _h_min

Real TabulatedFluidProperties::_h_min
protected

Minimum specific enthalpy in tabulated data.

Definition at line 273 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _initial_setup_done

bool TabulatedFluidProperties::_initial_setup_done
protected

keeps track of whether initialSetup has been performed

Definition at line 242 of file TabulatedFluidProperties.h.

Referenced by initialSetup().

◆ _internal_energy

std::vector<Real> TabulatedFluidProperties::_internal_energy
protected

internal energy vector

Definition at line 280 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _internal_energy_idx

unsigned int TabulatedFluidProperties::_internal_energy_idx
protected

◆ _interpolate_c

bool TabulatedFluidProperties::_interpolate_c
protected

Definition at line 218 of file TabulatedFluidProperties.h.

Referenced by c_from_p_T(), and initialSetup().

◆ _interpolate_cp

bool TabulatedFluidProperties::_interpolate_cp
protected

Definition at line 219 of file TabulatedFluidProperties.h.

Referenced by cp_from_p_T(), and initialSetup().

◆ _interpolate_cv

bool TabulatedFluidProperties::_interpolate_cv
protected

Definition at line 220 of file TabulatedFluidProperties.h.

Referenced by cv_from_p_T(), and initialSetup().

◆ _interpolate_density

bool TabulatedFluidProperties::_interpolate_density
protected

Set of flags to note whether a property is to be interpolated.

Definition at line 213 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), rho_from_p_T(), and v_from_p_T().

◆ _interpolate_enthalpy

bool TabulatedFluidProperties::_interpolate_enthalpy
protected

Definition at line 214 of file TabulatedFluidProperties.h.

Referenced by h_from_p_T(), and initialSetup().

◆ _interpolate_entropy

bool TabulatedFluidProperties::_interpolate_entropy
protected

Definition at line 221 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and s_from_p_T().

◆ _interpolate_internal_energy

bool TabulatedFluidProperties::_interpolate_internal_energy
protected

Definition at line 215 of file TabulatedFluidProperties.h.

Referenced by e_from_p_T(), and initialSetup().

◆ _interpolate_k

bool TabulatedFluidProperties::_interpolate_k
protected

Definition at line 217 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and k_from_p_T().

◆ _interpolate_viscosity

bool TabulatedFluidProperties::_interpolate_viscosity
protected

Definition at line 216 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and mu_from_p_T().

◆ _interpolated_properties

std::vector<std::string> TabulatedFluidProperties::_interpolated_properties
protected

List of properties to be interpolated.

Definition at line 211 of file TabulatedFluidProperties.h.

Referenced by generateTabulatedData(), initialSetup(), and writeTabulatedData().

◆ _interpolated_properties_enum

MultiMooseEnum TabulatedFluidProperties::_interpolated_properties_enum
protected

Properties to be interpolated entered in the input file.

Definition at line 209 of file TabulatedFluidProperties.h.

Referenced by generateTabulatedData().

◆ _k_idx

unsigned int TabulatedFluidProperties::_k_idx
protected

Definition at line 228 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and k_from_p_T().

◆ _log_space_v

bool TabulatedFluidProperties::_log_space_v
protected

log-space the specific volume instead of linear

Definition at line 250 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _num_e

unsigned int TabulatedFluidProperties::_num_e
protected

Number of internal energy points in tabulated data.

Definition at line 246 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _num_p

unsigned int TabulatedFluidProperties::_num_p
protected

Number of pressure points in the tabulated data.

Definition at line 196 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), generateTabulatedData(), initialSetup(), and writeTabulatedData().

◆ _num_T

unsigned int TabulatedFluidProperties::_num_T
protected

Number of temperature points in the tabulated data.

Definition at line 194 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), generateTabulatedData(), initialSetup(), and writeTabulatedData().

◆ _num_v

unsigned int TabulatedFluidProperties::_num_v
protected

Number of specific volume points in the tabulated data.

Definition at line 244 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation().

◆ _p_from_v_e_ipol

std::unique_ptr<BidimensionalInterpolation> TabulatedFluidProperties::_p_from_v_e_ipol
protected

Bi-dimensional interpolation of pressure from (v,e)

Definition at line 256 of file TabulatedFluidProperties.h.

Referenced by c_from_v_e(), TabulatedBicubicFluidProperties::constructInterpolation(), cp_from_v_e(), cv_from_v_e(), k_from_v_e(), mu_from_v_e(), and p_from_v_e().

◆ _p_from_v_h_ipol

std::unique_ptr<BidimensionalInterpolation> TabulatedFluidProperties::_p_from_v_h_ipol
protected

Bidimensional interpolation of pressure from (v,h)

Definition at line 262 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), and e_from_v_h().

◆ _p_initial_guess

const Real SinglePhaseFluidProperties::_p_initial_guess
protectedinherited

◆ _pressure

std::vector<Real> TabulatedFluidProperties::_pressure
protected

◆ _pressure_max

Real TabulatedFluidProperties::_pressure_max
protected

◆ _pressure_min

Real TabulatedFluidProperties::_pressure_min
protected

◆ _properties

std::vector<std::vector<Real> > TabulatedFluidProperties::_properties
protected

◆ _property_columns

const std::vector<std::string> TabulatedFluidProperties::_property_columns
protected
Initial value:
{
"density", "enthalpy", "internal_energy", "viscosity", "k", "c", "cv", "cp", "entropy"}

List of possible property column names to be read.

Definition at line 206 of file TabulatedFluidProperties.h.

Referenced by initialSetup().

◆ _property_ipol

std::vector<std::unique_ptr<BidimensionalInterpolation> > TabulatedFluidProperties::_property_ipol
protected

◆ _R

const Real FluidProperties::_R = 8.3144598
staticinherited

◆ _required_columns

const std::vector<std::string> TabulatedFluidProperties::_required_columns {"pressure", "temperature"}
protected

List of required column names to be read.

Definition at line 204 of file TabulatedFluidProperties.h.

Referenced by initialSetup().

◆ _save_file

const bool TabulatedFluidProperties::_save_file
protected

Whether to save a generated fluid properties file to disk.

Definition at line 198 of file TabulatedFluidProperties.h.

Referenced by initialSetup().

◆ _specific_volume

std::vector<Real> TabulatedFluidProperties::_specific_volume
protected

◆ _T_c2k

const Real FluidProperties::_T_c2k
protectedinherited

◆ _T_from_v_e_ipol

std::unique_ptr<BidimensionalInterpolation> TabulatedFluidProperties::_T_from_v_e_ipol
protected

Bi-dimensional interpolation of temperature from (v,e)

Definition at line 253 of file TabulatedFluidProperties.h.

Referenced by c_from_v_e(), TabulatedBicubicFluidProperties::constructInterpolation(), cp_from_v_e(), cv_from_v_e(), k_from_v_e(), mu_from_v_e(), and T_from_v_e().

◆ _T_from_v_h_ipol

std::unique_ptr<BidimensionalInterpolation> TabulatedFluidProperties::_T_from_v_h_ipol
protected

Bi-dimensional interpolation of temperature from (v,h)

Definition at line 259 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::constructInterpolation(), and e_from_v_h().

◆ _T_initial_guess

const Real SinglePhaseFluidProperties::_T_initial_guess
protectedinherited

◆ _temperature

std::vector<Real> TabulatedFluidProperties::_temperature
protected

◆ _temperature_max

Real TabulatedFluidProperties::_temperature_max
protected

◆ _temperature_min

Real TabulatedFluidProperties::_temperature_min
protected

◆ _tolerance

const Real SinglePhaseFluidProperties::_tolerance
protectedinherited

◆ _v_max

Real TabulatedFluidProperties::_v_max
protected

Maximum specific volume in tabulated data.

Definition at line 271 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::checkNaNs(), and TabulatedBicubicFluidProperties::constructInterpolation().

◆ _v_min

Real TabulatedFluidProperties::_v_min
protected

Minimum specific volume in tabulated data.

Definition at line 269 of file TabulatedFluidProperties.h.

Referenced by TabulatedBicubicFluidProperties::checkNaNs(), and TabulatedBicubicFluidProperties::constructInterpolation().

◆ _viscosity_idx

unsigned int TabulatedFluidProperties::_viscosity_idx
protected

Definition at line 227 of file TabulatedFluidProperties.h.

Referenced by initialSetup(), and mu_from_p_T().

◆ h

e e e e s T T T T T rho v v T SinglePhaseFluidProperties::h
inherited

Definition at line 205 of file SinglePhaseFluidProperties.h.

Referenced by SodiumSaturationFluidProperties::e_from_p_T(), NaKFluidProperties::e_from_p_T(), NaClFluidProperties::e_from_p_T(), LeadBismuthFluidProperties::e_from_p_T(), LeadFluidProperties::e_from_p_T(), CaloricallyImperfectGas::e_from_v_h(), StiffenedGasFluidProperties::e_from_v_h(), IdealGasFluidProperties::e_from_v_h(), Water97FluidProperties::e_from_v_h(), e_from_v_h(), SimpleFluidProperties::e_from_v_h(), g_from_v_e(), SodiumSaturationFluidProperties::h_from_p_T(), LinearFluidProperties::h_from_p_T(), HelmholtzFluidProperties::h_from_p_T(), StiffenedGasFluidProperties::h_from_p_T(), NaKFluidProperties::h_from_p_T(), h_from_p_T(), LeadBismuthFluidProperties::h_from_p_T(), LeadFluidProperties::h_from_p_T(), CaloricallyImperfectGas::h_from_p_T(), NaClFluidProperties::h_from_p_T(), IdealGasFluidProperties::h_from_p_T(), SimpleFluidProperties::h_from_p_T(), TemperaturePressureFunctionFluidProperties::h_from_p_T(), Water97FluidProperties::h_from_p_T(), FlibeFluidProperties::h_from_p_T(), FlinakFluidProperties::h_from_p_T(), HeliumFluidProperties::h_from_p_T(), Water97FluidProperties::h_from_p_T_template(), StiffenedGasFluidProperties::h_from_T_v(), CaloricallyImperfectGas::h_from_T_v(), IdealGasFluidProperties::h_from_T_v(), LeadBismuthFluidProperties::h_from_v_e(), LeadFluidProperties::h_from_v_e(), StiffenedGasFluidProperties::p_from_h_s(), IdealGasFluidProperties::p_from_h_s(), CaloricallyImperfectGas::p_from_h_s(), LeadFluidProperties::p_from_v_e(), LeadBismuthFluidProperties::p_from_v_e(), SimpleFluidProperties::p_from_v_h(), SinglePhaseFluidProperties::p_T_from_h_s(), SinglePhaseFluidProperties::p_T_from_v_h(), Water97FluidProperties::p_T_from_v_h(), StiffenedGasFluidProperties::s_from_h_p(), CaloricallyImperfectGas::s_from_h_p(), IdealGasFluidProperties::s_from_h_p(), s_from_h_p(), CaloricallyImperfectGas::T_from_h(), T_from_h_p(), T_from_h_s(), LeadBismuthFluidProperties::T_from_p_h(), LeadFluidProperties::T_from_p_h(), TemperaturePressureFunctionFluidProperties::T_from_p_h(), CaloricallyImperfectGas::T_from_p_h(), FlibeFluidProperties::T_from_p_h(), FlinakFluidProperties::T_from_p_h(), IdealGasFluidProperties::T_from_p_h(), HeliumFluidProperties::T_from_p_h(), SimpleFluidProperties::T_from_p_h(), Water97FluidProperties::T_from_p_h(), and SimpleFluidProperties::T_from_v_h().

◆ p [1/9]

e e e e SinglePhaseFluidProperties::p
inherited

Definition at line 185 of file SinglePhaseFluidProperties.h.

Referenced by LinearFluidProperties::beta_from_p_T(), CaloricallyImperfectGas::c_from_p_T(), Water97FluidProperties::c_from_p_T(), StiffenedGasFluidProperties::c_from_v_e(), HeliumFluidProperties::c_from_v_e(), c_from_v_e(), Water97FluidProperties::c_from_v_e(), SimpleFluidProperties::c_from_v_e(), LeadBismuthFluidProperties::cp_from_p_T(), LeadFluidProperties::cp_from_p_T(), IdealGasFluidProperties::cp_from_p_T(), TemperaturePressureFunctionFluidProperties::cp_from_p_T(), TemperaturePressureFunctionFluidProperties::cp_from_v_e(), cp_from_v_e(), Water97FluidProperties::cp_from_v_e(), LeadFluidProperties::cv_from_p_T(), LeadBismuthFluidProperties::cv_from_p_T(), IdealGasFluidProperties::cv_from_p_T(), LeadBismuthFluidProperties::cv_from_v_e(), LeadFluidProperties::cv_from_v_e(), cv_from_v_e(), Water97FluidProperties::cv_from_v_e(), TestSinglePhaseFluidProperties::e_from_p_rho(), LinearTestFluidProperties::e_from_p_rho(), LinearFluidProperties::e_from_p_rho(), IdealGasFluidProperties::e_from_p_rho(), LeadBismuthFluidProperties::e_from_p_rho(), LeadFluidProperties::e_from_p_rho(), Water97FluidProperties::e_from_p_rho(), SimpleFluidProperties::e_from_p_rho(), TemperaturePressureFunctionFluidProperties::e_from_p_rho(), FlibeFluidProperties::e_from_p_rho(), FlinakFluidProperties::e_from_p_rho(), HeliumFluidProperties::e_from_p_rho(), Water97FluidProperties::e_from_p_rho_template(), StiffenedGasFluidProperties::e_from_p_T(), LeadBismuthFluidProperties::e_from_p_T(), LeadFluidProperties::e_from_p_T(), CaloricallyImperfectGas::e_from_p_T(), IdealGasFluidProperties::e_from_p_T(), Water97FluidProperties::e_from_v_h(), e_from_v_h(), SimpleFluidProperties::e_from_v_h(), StiffenedGasFluidProperties::g_from_v_e(), IdealGasFluidProperties::g_from_v_e(), CaloricallyImperfectGas::g_from_v_e(), g_from_v_e(), CaloricallyImperfectGas::gamma_from_p_T(), generateTabulatedData(), LinearFluidProperties::h_from_p_T(), StiffenedGasFluidProperties::h_from_p_T(), LeadBismuthFluidProperties::h_from_p_T(), LeadFluidProperties::h_from_p_T(), CaloricallyImperfectGas::h_from_p_T(), IdealGasFluidProperties::h_from_p_T(), Water97FluidProperties::henryConstant(), LeadBismuthFluidProperties::k_from_p_T(), LeadFluidProperties::k_from_p_T(), CaloricallyImperfectGas::k_from_p_T(), IdealGasFluidProperties::k_from_p_T(), CaloricallyImperfectGas::k_from_v_e(), k_from_v_e(), Water97FluidProperties::k_from_v_e_template(), LeadBismuthFluidProperties::mu_from_p_T(), LeadFluidProperties::mu_from_p_T(), CaloricallyImperfectGas::mu_from_v_e(), mu_from_v_e(), StiffenedGasFluidProperties::p_from_h_s(), IdealGasFluidProperties::p_from_h_s(), CaloricallyImperfectGas::p_from_h_s(), StiffenedGasFluidProperties::p_from_T_v(), CaloricallyImperfectGas::p_from_T_v(), IdealGasFluidProperties::p_from_T_v(), LinearFluidProperties::p_from_v_e(), LeadBismuthFluidProperties::p_from_v_e(), LeadFluidProperties::p_from_v_e(), IdealGasFluidProperties::p_from_v_e(), LinearTestFluidProperties::p_from_v_e(), CaloricallyImperfectGas::p_from_v_e(), FlibeFluidProperties::p_from_v_e(), FlinakFluidProperties::p_from_v_e(), HeliumFluidProperties::p_from_v_e(), TemperaturePressureFunctionFluidProperties::p_from_v_e(), p_from_v_e(), SimpleFluidProperties::p_from_v_e(), Water97FluidProperties::p_from_v_e_template(), SimpleFluidProperties::p_from_v_h(), SinglePhaseFluidProperties::p_T_from_v_e(), Water97FluidProperties::p_T_from_v_e(), SinglePhaseFluidProperties::rho_e_from_p_T(), StiffenedGasFluidProperties::rho_from_p_s(), rho_from_p_s(), CaloricallyImperfectGas::rho_from_p_s(), IdealGasFluidProperties::rho_from_p_s(), TestSinglePhaseFluidProperties::rho_from_p_T(), LinearTestFluidProperties::rho_from_p_T(), rho_from_p_T(), LinearFluidProperties::rho_from_p_T(), CaloricallyImperfectGas::rho_from_p_T(), LeadBismuthFluidProperties::rho_from_p_T(), LeadFluidProperties::rho_from_p_T(), IdealGasFluidProperties::rho_from_p_T(), SinglePhaseFluidProperties::rho_mu_from_p_T(), Water97FluidProperties::rho_T_from_v_e(), StiffenedGasFluidProperties::s_from_h_p(), CaloricallyImperfectGas::s_from_h_p(), IdealGasFluidProperties::s_from_h_p(), CaloricallyImperfectGas::s_from_p_T(), IdealGasFluidProperties::s_from_p_T(), s_from_p_T(), CaloricallyImperfectGas::s_from_T_v(), IdealGasFluidProperties::s_from_T_v(), IdealGasFluidProperties::s_from_v_e(), Water97FluidProperties::T_drhodT_from_p_rho(), T_from_h_s(), LeadBismuthFluidProperties::T_from_p_h(), LeadFluidProperties::T_from_p_h(), TemperaturePressureFunctionFluidProperties::T_from_p_h(), CaloricallyImperfectGas::T_from_p_h(), SimpleFluidProperties::T_from_p_h(), Water97FluidProperties::T_from_p_h(), NaKFluidProperties::T_from_p_rho(), LeadBismuthFluidProperties::T_from_p_rho(), LeadFluidProperties::T_from_p_rho(), TemperaturePressureFunctionFluidProperties::T_from_p_rho(), FlibeFluidProperties::T_from_p_rho(), T_from_p_rho(), FlinakFluidProperties::T_from_p_rho(), SimpleFluidProperties::T_from_p_rho(), T_from_p_s(), FlibeFluidProperties::T_from_v_e(), FlinakFluidProperties::T_from_v_e(), SinglePhaseFluidProperties::v_e_from_p_T(), LeadBismuthFluidProperties::v_from_p_T(), LeadFluidProperties::v_from_p_T(), Water97FluidProperties::vaporPressure(), SinglePhaseFluidProperties::vaporPressure(), Water97FluidProperties::vaporTemperature(), SinglePhaseFluidProperties::vaporTemperature(), and writeTabulatedData().

◆ p [2/9]

e e e e s SinglePhaseFluidProperties::p
inherited

Definition at line 187 of file SinglePhaseFluidProperties.h.

◆ p [3/9]

e e e e s T T SinglePhaseFluidProperties::p
inherited

Definition at line 191 of file SinglePhaseFluidProperties.h.

◆ p [4/9]

e e e e s T T T SinglePhaseFluidProperties::p
inherited

Definition at line 193 of file SinglePhaseFluidProperties.h.

◆ p [5/9]

e e e e s T T T T SinglePhaseFluidProperties::p
inherited

Definition at line 195 of file SinglePhaseFluidProperties.h.

◆ p [6/9]

e e e e s T T T T T SinglePhaseFluidProperties::p
inherited

Definition at line 197 of file SinglePhaseFluidProperties.h.

◆ p [7/9]

e e e e s T T T T T rho v v SinglePhaseFluidProperties::p
inherited

Definition at line 203 of file SinglePhaseFluidProperties.h.

◆ p [8/9]

e e e e s T T T T T rho v v T s SinglePhaseFluidProperties::p
inherited

Definition at line 207 of file SinglePhaseFluidProperties.h.

◆ p [9/9]

e e e e s T T T T T rho v v T s h SinglePhaseFluidProperties::p
inherited

Definition at line 209 of file SinglePhaseFluidProperties.h.

◆ propfuncWithDefault

e e e e s T T T T T rho v v T s h T e SinglePhaseFluidProperties::propfuncWithDefault(gamma, p, T)
inherited

Definition at line 212 of file SinglePhaseFluidProperties.h.

◆ rho

e e e e s T SinglePhaseFluidProperties::rho
inherited

Definition at line 189 of file SinglePhaseFluidProperties.h.

Referenced by HeliumFluidProperties::beta_from_p_T(), TemperaturePressureFunctionFluidProperties::beta_from_p_T(), FlinakFluidProperties::beta_from_p_T(), StiffenedGasFluidProperties::c2_from_p_rho(), HeliumFluidProperties::c_from_v_e(), TemperaturePressureFunctionFluidProperties::cp_from_p_T(), LeadFluidProperties::cv_from_p_T(), LeadBismuthFluidProperties::cv_from_p_T(), TestSinglePhaseFluidProperties::e_from_p_rho(), LinearTestFluidProperties::e_from_p_rho(), LinearFluidProperties::e_from_p_rho(), e_from_p_rho(), IdealGasFluidProperties::e_from_p_rho(), LeadBismuthFluidProperties::e_from_p_rho(), LeadFluidProperties::e_from_p_rho(), Water97FluidProperties::e_from_p_rho(), SimpleFluidProperties::e_from_p_rho(), TemperaturePressureFunctionFluidProperties::e_from_p_rho(), FlibeFluidProperties::e_from_p_rho(), FlinakFluidProperties::e_from_p_rho(), HeliumFluidProperties::e_from_p_rho(), Water97FluidProperties::e_from_p_rho_template(), NaKFluidProperties::e_from_p_T(), NaClFluidProperties::e_from_p_T(), LinearFluidProperties::h_from_p_T(), TemperaturePressureFunctionFluidProperties::h_from_p_T(), Water97FluidProperties::k_from_p_T_template(), CO2FluidProperties::mu_from_p_T(), NitrogenFluidProperties::mu_from_p_T(), NaKFluidProperties::mu_from_p_T(), HydrogenFluidProperties::mu_from_p_T(), Water97FluidProperties::mu_from_p_T(), Water97FluidProperties::mu_from_p_T_template(), Water97FluidProperties::mu_from_v_e(), Water97FluidProperties::p_from_v_e_template(), Water97FluidProperties::p_T_from_v_e(), SinglePhaseFluidProperties::rho_e_from_p_T(), StiffenedGasFluidProperties::rho_from_p_s(), rho_from_p_s(), IdealGasFluidProperties::rho_from_p_s(), TestSinglePhaseFluidProperties::rho_from_p_T(), LinearTestFluidProperties::rho_from_p_T(), SodiumSaturationFluidProperties::rho_from_p_T(), HelmholtzFluidProperties::rho_from_p_T(), rho_from_p_T(), NaKFluidProperties::rho_from_p_T(), LinearFluidProperties::rho_from_p_T(), CO2FluidProperties::rho_from_p_T(), NaClFluidProperties::rho_from_p_T(), LeadBismuthFluidProperties::rho_from_p_T(), CaloricallyImperfectGas::rho_from_p_T(), SalineMoltenSaltFluidProperties::rho_from_p_T(), LeadFluidProperties::rho_from_p_T(), IdealGasFluidProperties::rho_from_p_T(), Water97FluidProperties::rho_from_p_T(), SimpleFluidProperties::rho_from_p_T(), TemperaturePressureFunctionFluidProperties::rho_from_p_T(), FlibeFluidProperties::rho_from_p_T(), FlinakFluidProperties::rho_from_p_T(), HeliumFluidProperties::rho_from_p_T(), Water97FluidProperties::rho_from_p_T_template(), NitrogenFluidProperties::rho_mu_from_p_T(), HydrogenFluidProperties::rho_mu_from_p_T(), CO2FluidProperties::rho_mu_from_p_T(), Water97FluidProperties::rho_mu_from_p_T(), SinglePhaseFluidProperties::rho_mu_from_p_T(), Water97FluidProperties::rho_T_from_v_e(), Water97FluidProperties::T_drhodT_from_p_rho(), LeadBismuthFluidProperties::T_from_p_rho(), LeadFluidProperties::T_from_p_rho(), TemperaturePressureFunctionFluidProperties::T_from_p_rho(), FlibeFluidProperties::T_from_p_rho(), T_from_p_rho(), FlinakFluidProperties::T_from_p_rho(), SimpleFluidProperties::T_from_p_rho(), SinglePhaseFluidProperties::v_e_from_p_T(), v_from_p_T(), and TemperaturePressureFunctionFluidProperties::v_from_p_T().

◆ T [1/2]

e e e e s T T T T T rho SinglePhaseFluidProperties::T
inherited

Definition at line 199 of file SinglePhaseFluidProperties.h.

Referenced by LinearFluidProperties::beta_from_p_T(), LeadBismuthFluidProperties::bulk_modulus_from_p_T(), LeadFluidProperties::bulk_modulus_from_p_T(), CaloricallyImperfectGas::c_from_p_T(), IdealGasFluidProperties::c_from_p_T(), Water97FluidProperties::c_from_p_T(), Water97FluidProperties::c_from_p_T_template(), IdealGasFluidProperties::c_from_v_e(), LeadBismuthFluidProperties::c_from_v_e(), LeadFluidProperties::c_from_v_e(), CaloricallyImperfectGas::c_from_v_e(), HeliumFluidProperties::c_from_v_e(), c_from_v_e(), Water97FluidProperties::c_from_v_e(), SimpleFluidProperties::c_from_v_e(), checkInputVariables(), LeadBismuthFluidProperties::cp_from_p_T(), LeadFluidProperties::cp_from_p_T(), CaloricallyImperfectGas::cp_from_p_T(), IdealGasFluidProperties::cp_from_p_T(), TemperaturePressureFunctionFluidProperties::cp_from_p_T(), Water97FluidProperties::cp_from_p_T_template(), CaloricallyImperfectGas::cp_from_T(), CaloricallyImperfectGas::cp_from_v_e(), LeadBismuthFluidProperties::cp_from_v_e(), LeadFluidProperties::cp_from_v_e(), TemperaturePressureFunctionFluidProperties::cp_from_v_e(), cp_from_v_e(), Water97FluidProperties::cp_from_v_e(), LeadFluidProperties::cv_from_p_T(), LeadBismuthFluidProperties::cv_from_p_T(), CaloricallyImperfectGas::cv_from_p_T(), IdealGasFluidProperties::cv_from_p_T(), Water97FluidProperties::cv_from_p_T_template(), CaloricallyImperfectGas::cv_from_T(), CaloricallyImperfectGas::cv_from_T_v(), CaloricallyImperfectGas::cv_from_v_e(), LeadBismuthFluidProperties::cv_from_v_e(), LeadFluidProperties::cv_from_v_e(), cv_from_v_e(), Water97FluidProperties::cv_from_v_e(), Water97FluidProperties::d2gamma1_dpi2(), Water97FluidProperties::d2gamma1_dpitau(), Water97FluidProperties::d2gamma1_dtau2(), Water97FluidProperties::d2gamma2_dpi2(), Water97FluidProperties::d2gamma2_dpitau(), Water97FluidProperties::d2gamma2_dtau2(), Water97FluidProperties::d2gamma5_dpi2(), Water97FluidProperties::d2gamma5_dpitau(), Water97FluidProperties::d2gamma5_dtau2(), Water97FluidProperties::d2phi3_ddelta2(), Water97FluidProperties::d2phi3_ddeltatau(), Water97FluidProperties::d2phi3_dtau2(), Water97FluidProperties::densityRegion3(), Water97FluidProperties::dgamma1_dpi(), Water97FluidProperties::dgamma1_dtau(), Water97FluidProperties::dgamma2_dpi(), Water97FluidProperties::dgamma2_dtau(), Water97FluidProperties::dgamma5_dpi(), Water97FluidProperties::dgamma5_dtau(), Water97FluidProperties::dphi3_ddelta(), Water97FluidProperties::dphi3_dtau(), e_from_p_rho(), LeadBismuthFluidProperties::e_from_p_rho(), LeadFluidProperties::e_from_p_rho(), SimpleFluidProperties::e_from_p_rho(), StiffenedGasFluidProperties::e_from_p_T(), LeadBismuthFluidProperties::e_from_p_T(), CaloricallyImperfectGas::e_from_p_T(), LeadFluidProperties::e_from_p_T(), IdealGasFluidProperties::e_from_p_T(), Water97FluidProperties::e_from_p_T_template(), CaloricallyImperfectGas::e_from_T(), StiffenedGasFluidProperties::e_from_T_v(), CaloricallyImperfectGas::e_from_T_v(), IdealGasFluidProperties::e_from_T_v(), HeliumFluidProperties::e_from_T_v(), CaloricallyImperfectGas::e_from_v_h(), Water97FluidProperties::e_from_v_h(), e_from_v_h(), SimpleFluidProperties::e_from_v_h(), StiffenedGasFluidProperties::g_from_v_e(), IdealGasFluidProperties::g_from_v_e(), CaloricallyImperfectGas::g_from_v_e(), g_from_v_e(), Water97FluidProperties::gamma1(), Water97FluidProperties::gamma2(), Water97FluidProperties::gamma5(), CaloricallyImperfectGas::gamma_from_p_T(), LinearFluidProperties::h_from_p_T(), StiffenedGasFluidProperties::h_from_p_T(), LeadBismuthFluidProperties::h_from_p_T(), LeadFluidProperties::h_from_p_T(), CaloricallyImperfectGas::h_from_p_T(), IdealGasFluidProperties::h_from_p_T(), Water97FluidProperties::h_from_p_T_template(), CaloricallyImperfectGas::h_from_T(), StiffenedGasFluidProperties::h_from_T_v(), CaloricallyImperfectGas::h_from_T_v(), IdealGasFluidProperties::h_from_T_v(), LeadBismuthFluidProperties::h_from_v_e(), LeadFluidProperties::h_from_v_e(), Water97FluidProperties::henryConstant(), LeadBismuthFluidProperties::k_from_p_T(), LeadFluidProperties::k_from_p_T(), CaloricallyImperfectGas::k_from_p_T(), IdealGasFluidProperties::k_from_p_T(), Water97FluidProperties::k_from_p_T_template(), Water97FluidProperties::k_from_rho_T_template(), CaloricallyImperfectGas::k_from_v_e(), LeadBismuthFluidProperties::k_from_v_e(), LeadFluidProperties::k_from_v_e(), k_from_v_e(), HeliumFluidProperties::k_from_v_e(), SinglePhaseFluidProperties::makeZeroAndOne(), CaloricallyImperfectGas::mu_from_p_T(), LeadBismuthFluidProperties::mu_from_p_T(), LeadFluidProperties::mu_from_p_T(), IdealGasFluidProperties::mu_from_p_T(), Water97FluidProperties::mu_from_p_T_template(), Water97FluidProperties::mu_from_rho_T_template(), CaloricallyImperfectGas::mu_from_v_e(), LeadBismuthFluidProperties::mu_from_v_e(), LeadFluidProperties::mu_from_v_e(), mu_from_v_e(), Water97FluidProperties::mu_from_v_e(), CaloricallyImperfectGas::p_from_h_s(), StiffenedGasFluidProperties::p_from_T_v(), CaloricallyImperfectGas::p_from_T_v(), IdealGasFluidProperties::p_from_T_v(), HeliumFluidProperties::p_from_T_v(), CaloricallyImperfectGas::p_from_v_e(), HeliumFluidProperties::p_from_v_e(), FlibeFluidProperties::p_from_v_e(), FlinakFluidProperties::p_from_v_e(), TemperaturePressureFunctionFluidProperties::p_from_v_e(), Water97FluidProperties::p_from_v_e_template(), SimpleFluidProperties::p_from_v_h(), SinglePhaseFluidProperties::p_T_from_h_s(), SinglePhaseFluidProperties::p_T_from_v_e(), SinglePhaseFluidProperties::p_T_from_v_h(), Water97FluidProperties::p_T_from_v_h(), Water97FluidProperties::phi3(), SinglePhaseFluidProperties::rho_e_from_p_T(), StiffenedGasFluidProperties::rho_from_p_s(), rho_from_p_s(), CaloricallyImperfectGas::rho_from_p_s(), IdealGasFluidProperties::rho_from_p_s(), TestSinglePhaseFluidProperties::rho_from_p_T(), LinearTestFluidProperties::rho_from_p_T(), rho_from_p_T(), LinearFluidProperties::rho_from_p_T(), CaloricallyImperfectGas::rho_from_p_T(), LeadBismuthFluidProperties::rho_from_p_T(), LeadFluidProperties::rho_from_p_T(), IdealGasFluidProperties::rho_from_p_T(), Water97FluidProperties::rho_from_p_T_template(), SinglePhaseFluidProperties::rho_mu_from_p_T(), CaloricallyImperfectGas::s_from_h_p(), s_from_h_p(), CaloricallyImperfectGas::s_from_p_T(), IdealGasFluidProperties::s_from_p_T(), s_from_p_T(), StiffenedGasFluidProperties::s_from_T_v(), CaloricallyImperfectGas::s_from_T_v(), IdealGasFluidProperties::s_from_T_v(), CaloricallyImperfectGas::s_from_v_e(), IdealGasFluidProperties::s_from_v_e(), Water97FluidProperties::subregionVolume(), Water97FluidProperties::T_drhodT_from_p_rho(), T_from_h_p(), T_from_h_s(), LeadBismuthFluidProperties::T_from_p_h(), LeadFluidProperties::T_from_p_h(), TemperaturePressureFunctionFluidProperties::T_from_p_h(), CaloricallyImperfectGas::T_from_p_h(), IdealGasFluidProperties::T_from_p_h(), Water97FluidProperties::T_from_p_h(), NaKFluidProperties::T_from_p_rho(), LeadBismuthFluidProperties::T_from_p_rho(), LeadFluidProperties::T_from_p_rho(), TemperaturePressureFunctionFluidProperties::T_from_p_rho(), T_from_p_rho(), SimpleFluidProperties::T_from_p_rho(), T_from_p_s(), LinearFluidProperties::T_from_v_e(), LeadBismuthFluidProperties::T_from_v_e(), LinearTestFluidProperties::T_from_v_e(), LeadFluidProperties::T_from_v_e(), IdealGasFluidProperties::T_from_v_e(), CaloricallyImperfectGas::T_from_v_e(), FlibeFluidProperties::T_from_v_e(), FlinakFluidProperties::T_from_v_e(), HeliumFluidProperties::T_from_v_e(), SimpleFluidProperties::T_from_v_e(), T_from_v_e(), SimpleFluidProperties::T_from_v_h(), Water97FluidProperties::tempXY(), SinglePhaseFluidProperties::v_e_from_p_T(), LeadBismuthFluidProperties::v_from_p_T(), LeadFluidProperties::v_from_p_T(), SinglePhaseFluidProperties::vaporPressure(), Water97FluidProperties::vaporPressureTemplate(), Water97FluidProperties::vaporTemperature(), SinglePhaseFluidProperties::vaporTemperature(), and CaloricallyImperfectGas::Z_from_T().

◆ T [2/2]

e e e e s T T T T T rho v SinglePhaseFluidProperties::T
inherited

Definition at line 201 of file SinglePhaseFluidProperties.h.

◆ v [1/5]

SinglePhaseFluidProperties::v
inherited

Definition at line 177 of file SinglePhaseFluidProperties.h.

Referenced by StiffenedGasFluidProperties::c_from_v_e(), LinearFluidProperties::c_from_v_e(), TestSinglePhaseFluidProperties::c_from_v_e(), IdealGasFluidProperties::c_from_v_e(), LeadBismuthFluidProperties::c_from_v_e(), LeadFluidProperties::c_from_v_e(), CaloricallyImperfectGas::c_from_v_e(), HeliumFluidProperties::c_from_v_e(), c_from_v_e(), Water97FluidProperties::c_from_v_e(), SimpleFluidProperties::c_from_v_e(), LinearFluidProperties::cp_from_v_e(), StiffenedGasFluidProperties::cp_from_v_e(), CaloricallyImperfectGas::cp_from_v_e(), TestSinglePhaseFluidProperties::cp_from_v_e(), LeadBismuthFluidProperties::cp_from_v_e(), IdealGasFluidProperties::cp_from_v_e(), LeadFluidProperties::cp_from_v_e(), SimpleFluidProperties::cp_from_v_e(), TemperaturePressureFunctionFluidProperties::cp_from_v_e(), FlibeFluidProperties::cp_from_v_e(), FlinakFluidProperties::cp_from_v_e(), cp_from_v_e(), HeliumFluidProperties::cp_from_v_e(), Water97FluidProperties::cp_from_v_e(), FlibeFluidProperties::cv_from_p_T(), FlinakFluidProperties::cv_from_p_T(), StiffenedGasFluidProperties::cv_from_v_e(), TestSinglePhaseFluidProperties::cv_from_v_e(), CaloricallyImperfectGas::cv_from_v_e(), IdealGasFluidProperties::cv_from_v_e(), LeadBismuthFluidProperties::cv_from_v_e(), LeadFluidProperties::cv_from_v_e(), SimpleFluidProperties::cv_from_v_e(), TemperaturePressureFunctionFluidProperties::cv_from_v_e(), FlibeFluidProperties::cv_from_v_e(), cv_from_v_e(), FlinakFluidProperties::cv_from_v_e(), Water97FluidProperties::cv_from_v_e(), HeliumFluidProperties::cv_from_v_e(), HeliumFluidProperties::e_from_p_rho(), SodiumSaturationFluidProperties::e_from_p_T(), LeadBismuthFluidProperties::e_from_p_T(), LeadFluidProperties::e_from_p_T(), FlibeFluidProperties::e_from_p_T(), FlinakFluidProperties::e_from_p_T(), StiffenedGasFluidProperties::e_from_T_v(), CaloricallyImperfectGas::e_from_T_v(), HeliumFluidProperties::e_from_T_v(), CaloricallyImperfectGas::e_from_v_h(), StiffenedGasFluidProperties::e_from_v_h(), IdealGasFluidProperties::e_from_v_h(), Water97FluidProperties::e_from_v_h(), e_from_v_h(), SimpleFluidProperties::e_from_v_h(), StiffenedGasFluidProperties::g_from_v_e(), IdealGasFluidProperties::g_from_v_e(), CaloricallyImperfectGas::g_from_v_e(), g_from_v_e(), CaloricallyImperfectGas::gamma_from_v_e(), LeadBismuthFluidProperties::h_from_v_e(), LeadFluidProperties::h_from_v_e(), StiffenedGasFluidProperties::k_from_v_e(), CaloricallyImperfectGas::k_from_v_e(), TestSinglePhaseFluidProperties::k_from_v_e(), LeadBismuthFluidProperties::k_from_v_e(), LeadFluidProperties::k_from_v_e(), TemperaturePressureFunctionFluidProperties::k_from_v_e(), k_from_v_e(), FlibeFluidProperties::k_from_v_e(), FlinakFluidProperties::k_from_v_e(), HeliumFluidProperties::k_from_v_e(), Water97FluidProperties::k_from_v_e(), Water97FluidProperties::k_from_v_e_template(), LinearTestFluidProperties::mu_from_v_e(), TestSinglePhaseFluidProperties::mu_from_v_e(), CaloricallyImperfectGas::mu_from_v_e(), LeadBismuthFluidProperties::mu_from_v_e(), LeadFluidProperties::mu_from_v_e(), TemperaturePressureFunctionFluidProperties::mu_from_v_e(), mu_from_v_e(), FlibeFluidProperties::mu_from_v_e(), FlinakFluidProperties::mu_from_v_e(), Water97FluidProperties::mu_from_v_e(), HeliumFluidProperties::mu_from_v_e(), CaloricallyImperfectGas::p_from_h_s(), StiffenedGasFluidProperties::p_from_T_v(), CaloricallyImperfectGas::p_from_T_v(), IdealGasFluidProperties::p_from_T_v(), HeliumFluidProperties::p_from_T_v(), TestConservedVarFluidProperties::p_from_v_e(), LinearFluidProperties::p_from_v_e(), LeadBismuthFluidProperties::p_from_v_e(), LeadFluidProperties::p_from_v_e(), IdealGasFluidProperties::p_from_v_e(), LinearTestFluidProperties::p_from_v_e(), CaloricallyImperfectGas::p_from_v_e(), HeliumFluidProperties::p_from_v_e(), FlinakFluidProperties::p_from_v_e(), FlibeFluidProperties::p_from_v_e(), SodiumSaturationFluidProperties::p_from_v_e(), TemperaturePressureFunctionFluidProperties::p_from_v_e(), Water97FluidProperties::p_from_v_e(), p_from_v_e(), SimpleFluidProperties::p_from_v_e(), Water97FluidProperties::p_from_v_e_template(), SimpleFluidProperties::p_from_v_h(), SinglePhaseFluidProperties::p_T_from_v_e(), Water97FluidProperties::p_T_from_v_e(), SinglePhaseFluidProperties::p_T_from_v_h(), Water97FluidProperties::p_T_from_v_h(), Water97FluidProperties::rho_T_from_v_e(), CaloricallyImperfectGas::s_from_h_p(), CaloricallyImperfectGas::s_from_p_T(), StiffenedGasFluidProperties::s_from_T_v(), CaloricallyImperfectGas::s_from_T_v(), IdealGasFluidProperties::s_from_T_v(), TestSinglePhaseFluidProperties::s_from_v_e(), CaloricallyImperfectGas::s_from_v_e(), IdealGasFluidProperties::s_from_v_e(), LinearFluidProperties::T_from_v_e(), LeadBismuthFluidProperties::T_from_v_e(), LinearTestFluidProperties::T_from_v_e(), LeadFluidProperties::T_from_v_e(), CaloricallyImperfectGas::T_from_v_e(), IdealGasFluidProperties::T_from_v_e(), SodiumSaturationFluidProperties::T_from_v_e(), FlibeFluidProperties::T_from_v_e(), FlinakFluidProperties::T_from_v_e(), HeliumFluidProperties::T_from_v_e(), SimpleFluidProperties::T_from_v_e(), T_from_v_e(), Water97FluidProperties::T_from_v_e(), SimpleFluidProperties::T_from_v_h(), SinglePhaseFluidProperties::v_e_from_p_T(), StiffenedGasFluidProperties::v_e_spndl_from_T(), CaloricallyImperfectGas::v_e_spndl_from_T(), IdealGasFluidProperties::v_e_spndl_from_T(), SodiumSaturationFluidProperties::v_from_p_T(), v_from_p_T(), Water97FluidProperties::v_from_p_T(), LeadBismuthFluidProperties::v_from_p_T(), LeadFluidProperties::v_from_p_T(), TemperaturePressureFunctionFluidProperties::v_from_p_T(), FlibeFluidProperties::v_from_p_T(), FlinakFluidProperties::v_from_p_T(), and Water97FluidProperties::v_from_p_T_template().

◆ v [2/5]

e SinglePhaseFluidProperties::v
inherited

Definition at line 179 of file SinglePhaseFluidProperties.h.

◆ v [3/5]

e e SinglePhaseFluidProperties::v
inherited

Definition at line 181 of file SinglePhaseFluidProperties.h.

◆ v [4/5]

e e e SinglePhaseFluidProperties::v
inherited

Definition at line 183 of file SinglePhaseFluidProperties.h.

◆ v [5/5]

e e e e s T T T T T rho v v T s h T SinglePhaseFluidProperties::v
inherited

Definition at line 211 of file SinglePhaseFluidProperties.h.


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