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
FluidPropertiesInterrogator Class Reference

User object for querying a single-phase or two-phase fluid properties object. More...

#include <FluidPropertiesInterrogator.h>

Inheritance diagram for FluidPropertiesInterrogator:
[legend]

Public Types

typedef DataFileName DataFileParameterType
 

Public Member Functions

 FluidPropertiesInterrogator (const InputParameters &parameters)
 
virtual void initialize () override
 
virtual void execute () override
 
virtual void finalize () override
 
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
 
virtual bool needThreadedCopy () const
 
const std::set< std::string > & getRequestedItems () override
 
const std::set< std::string > & getSuppliedItems () override
 
unsigned int systemNumber () const
 
virtual bool enabled () const
 
std::shared_ptr< MooseObjectgetSharedPtr ()
 
std::shared_ptr< const MooseObjectgetSharedPtr () 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 T & getParam (const std::string &name) const
 
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 
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 mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, 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 initialSetup ()
 
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 T & getUserObject (const std::string &param_name, bool is_dependency=true) const
 
const T & getUserObjectByName (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 ()
 
virtual void threadJoin (const UserObject &) override
 
virtual void threadJoin (const UserObject &) override
 
virtual void subdomainSetup () override
 
virtual void subdomainSetup () override
 
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
 
T & getSampler (const std::string &name)
 
SamplergetSampler (const std::string &name)
 
T & getSamplerByName (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 T & getDistribution (const std::string &name) const
 
const DistributiongetDistribution (const std::string &name) const
 
const T & getDistribution (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const T & getDistributionByName (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const T & getDistributionByName (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 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

InputParameters compute1Phase (const SinglePhaseFluidProperties *const fp_1phase, bool throw_error_if_no_match)
 Queries a 1-phase fluid properties object. More...
 
InputParameters computeVaporMixture (bool throw_error_if_no_match)
 Queries a vapor mixture fluid properties object. More...
 
InputParameters compute2Phase ()
 Queries a 2-phase fluid properties object. More...
 
std::map< std::string, bool > getSpecifiedSetMap (const std::vector< std::vector< std::string >> &parameter_sets, const std::string &fp_type, bool throw_error_if_no_match) const
 Gets a map of a parameter set to a flag telling whether that set was provided. More...
 
void buildJSON1Phase (nlohmann::json &json, const InputParameters &params)
 Build 1-phase fluid properties in JSON format. More...
 
void buildJSON2Phase (nlohmann::json &json, const InputParameters &params)
 Build 2-phase fluid properties in JSON format. More...
 
void buildJSONVaporMixture (nlohmann::json &json, const InputParameters &params)
 Build vapor mixture fluid properties in JSON format. More...
 
void outputASCII1Phase (const std::string &description, const InputParameters &params)
 Output 1-phase fluid properties in plain text format. More...
 
void outputASCII2Phase (const InputParameters &params)
 Output 2-phase fluid properties in plain text format. More...
 
void outputASCIIVaporMixture (const InputParameters &params)
 Output vapor mixture fluid properties in plain text format. More...
 
void outputHeader (const std::string &header) const
 Outputs a header for a section of properties. More...
 
void outputProperty (const std::string &name, const Real &value, const std::string &units)
 Outputs a property value. More...
 
void outputStaticProperties (const InputParameters &params)
 Outputs static properties for a single-phase fluid properties object. More...
 
void outputStagnationProperties (const InputParameters &params)
 Outputs stagnation properties for a single-phase fluid properties object. More...
 
void outputVaporMixtureStaticProperties (const InputParameters &params)
 Outputs static properties for a vapor mixture fluid properties object. More...
 
void outputVaporMixtureStagnationProperties (const InputParameters &params)
 Outputs stagnation properties for a vapor mixture fluid properties object. 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
 
T & declareRestartableData (const std::string &data_name, Args &&... args)
 
ManagedValue< T > declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
const T & getRestartableData (const std::string &data_name) const
 
T & declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
T & declareRecoverableData (const std::string &data_name, Args &&... args)
 
T & declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args)
 
T & declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args)
 
std::string restartableName (const std::string &data_name) const
 
const T & getMeshProperty (const std::string &data_name, const std::string &prefix)
 
const T & getMeshProperty (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 T & getReporterValue (const std::string &param_name, const std::size_t time_index=0)
 
const T & getReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
const T & getReporterValue (const std::string &param_name, const std::size_t time_index=0)
 
const T & getReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
const T & getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 
const T & getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0)
 
const T & getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 
const T & getReporterValueByName (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)
 

Static Protected Member Functions

static std::string meshPropertyName (const std::string &data_name, const std::string &prefix)
 

Protected Attributes

const bool & _json
 true if the output should use JSON format More...
 
const FluidProperties *const _fp
 pointer to fluid properties object More...
 
const SinglePhaseFluidProperties *const _fp_1phase
 pointer to 1-phase fluid properties object (if provided 1-phase object) More...
 
const TwoPhaseFluidProperties *const _fp_2phase
 pointer to 2-phase fluid properties object (if provided 2-phase object) More...
 
const TwoPhaseNCGFluidProperties *const _fp_2phase_ncg
 pointer to 2-phase NCG fluid properties object (if provided 2-phase NCG object) More...
 
const bool _has_1phase
 flag that user provided 1-phase fluid properties More...
 
const bool _has_vapor_mixture
 flag that user provided vapor mixture fluid properties More...
 
const bool _has_2phase
 flag that user provided 2-phase fluid properties More...
 
const bool _has_2phase_ncg
 flag that user provided 2-phase NCG fluid properties More...
 
const SinglePhaseFluidProperties *const _fp_liquid
 pointer to liquid fluid properties object (if provided 2-phase object) More...
 
const SinglePhaseFluidProperties *const _fp_vapor
 pointer to vapor fluid properties object (if provided 2-phase object) More...
 
const VaporMixtureFluidProperties *const _fp_vapor_mixture
 pointer to vapor mixture fluid properties object (if provided 2-phase NCG object) More...
 
bool _nan_encountered
 flag that NaN has been encountered More...
 
const unsigned int_precision
 Precision used for printing values. 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
 

Detailed Description

User object for querying a single-phase or two-phase fluid properties object.

Definition at line 24 of file FluidPropertiesInterrogator.h.

Constructor & Destructor Documentation

◆ FluidPropertiesInterrogator()

FluidPropertiesInterrogator::FluidPropertiesInterrogator ( const InputParameters parameters)

Definition at line 42 of file FluidPropertiesInterrogator.C.

44  _json(getParam<bool>("json")),
45  _fp(&getUserObject<FluidProperties>("fp")),
46  _fp_1phase(dynamic_cast<const SinglePhaseFluidProperties * const>(_fp)),
47  _fp_2phase(dynamic_cast<const TwoPhaseFluidProperties * const>(_fp)),
48  _fp_2phase_ncg(dynamic_cast<const TwoPhaseNCGFluidProperties * const>(_fp)),
50  _has_vapor_mixture(dynamic_cast<const VaporMixtureFluidProperties * const>(_fp)),
54  ? &getUserObjectByName<SinglePhaseFluidProperties>(_fp_2phase->getLiquidName())
55  : nullptr),
57  ? &getUserObjectByName<SinglePhaseFluidProperties>(_fp_2phase->getVaporName())
58  : nullptr),
60  ? dynamic_cast<const VaporMixtureFluidProperties * const>(_fp)
61  : (_has_2phase_ncg ? &getUserObjectByName<VaporMixtureFluidProperties>(
63  : nullptr)),
64  _nan_encountered(false),
65  _precision(getParam<unsigned int>("precision"))
66 {
68  mooseError(
69  "The type of the parameter 'fp' must be derived from type 'SinglePhaseFluidProperties', "
70  "'VaporMixtureFluidProperties', or 'TwoPhaseFluidProperties'.");
71 }
const SinglePhaseFluidProperties *const _fp_vapor
pointer to vapor fluid properties object (if provided 2-phase object)
virtual const UserObjectName & getLiquidName() const
Returns the name of the liquid single-phase fluid properties object.
virtual const UserObjectName & getVaporName() const
Returns the name of the vapor single-phase fluid properties object.
const VaporMixtureFluidProperties *const _fp_vapor_mixture
pointer to vapor mixture fluid properties object (if provided 2-phase NCG object) ...
const FluidProperties *const _fp
pointer to fluid properties object
const TwoPhaseFluidProperties *const _fp_2phase
pointer to 2-phase fluid properties object (if provided 2-phase object)
const bool _has_2phase_ncg
flag that user provided 2-phase NCG fluid properties
const unsigned int & _precision
Precision used for printing values.
const SinglePhaseFluidProperties *const _fp_liquid
pointer to liquid fluid properties object (if provided 2-phase object)
bool _nan_encountered
flag that NaN has been encountered
const UserObjectName & getVaporMixtureName() const
Returns the name of the vapor mixture fluid properties object.
const bool _has_1phase
flag that user provided 1-phase fluid properties
const TwoPhaseNCGFluidProperties *const _fp_2phase_ncg
pointer to 2-phase NCG fluid properties object (if provided 2-phase NCG object)
const bool _has_vapor_mixture
flag that user provided vapor mixture fluid properties
const bool & _json
true if the output should use JSON format
const bool _has_2phase
flag that user provided 2-phase fluid properties
GeneralUserObject(const InputParameters &parameters)
const SinglePhaseFluidProperties *const _fp_1phase
pointer to 1-phase fluid properties object (if provided 1-phase object)
void mooseError(Args &&... args) const
const InputParameters & parameters() const

Member Function Documentation

◆ buildJSON1Phase()

void FluidPropertiesInterrogator::buildJSON1Phase ( nlohmann::json &  json,
const InputParameters params 
)
protected

Build 1-phase fluid properties in JSON format.

Definition at line 483 of file FluidPropertiesInterrogator.C.

Referenced by execute().

484 {
485  for (auto p : {"rho", "e", "p", "T", "v", "h", "s", "c", "mu", "cp", "cv", "k", "beta"})
486  json["static"][p] = params.get<Real>(p);
487 
488  if (params.have_parameter<Real>("vel"))
489  for (auto p : {"vel",
490  "rho0",
491  "s0",
492  "v0",
493  "e0",
494  "h0",
495  "p0",
496  "T0",
497  "c0",
498  "mu0",
499  "cp0",
500  "cv0",
501  "k0",
502  "beta0"})
503  json["stagnation"][p] = params.get<Real>(p);
504 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
bool have_parameter(std::string_view name) const

◆ buildJSON2Phase()

void FluidPropertiesInterrogator::buildJSON2Phase ( nlohmann::json &  json,
const InputParameters params 
)
protected

Build 2-phase fluid properties in JSON format.

Definition at line 507 of file FluidPropertiesInterrogator.C.

Referenced by execute().

508 {
509  json["p_critical"] = params.get<Real>("p_critical");
510  for (auto p : {"T_sat", "p_sat", "h_lat", "sigma"})
511  if (params.have_parameter<Real>(p))
512  json[p] = params.get<Real>(p);
513 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
bool have_parameter(std::string_view name) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ buildJSONVaporMixture()

void FluidPropertiesInterrogator::buildJSONVaporMixture ( nlohmann::json &  json,
const InputParameters params 
)
protected

Build vapor mixture fluid properties in JSON format.

Definition at line 516 of file FluidPropertiesInterrogator.C.

Referenced by execute().

518 {
519  for (auto p : {"p", "T", "rho", "e", "v", "h", "c", "mu", "cp", "cv", "k"})
520  if (params.have_parameter<Real>(p))
521  json["static"][p] = params.get<Real>(p);
522 
523  if (params.have_parameter<Real>("vel"))
524  json["stagnation"]["h0"] = params.get<Real>("h0");
525 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
bool have_parameter(std::string_view name) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ compute1Phase()

InputParameters FluidPropertiesInterrogator::compute1Phase ( const SinglePhaseFluidProperties *const  fp_1phase,
bool  throw_error_if_no_match 
)
protected

Queries a 1-phase fluid properties object.

Returns
Input parameters holding the computed values
Parameters
[in]fp_1phase1-phase fluid properties
[in]throw_error_if_no_matchOption to throw an error if no sets match the inputs

Definition at line 185 of file FluidPropertiesInterrogator.C.

Referenced by execute().

187 {
189 
190  // reset NaN flag
191  _nan_encountered = false;
192 
193  // determine how state is specified
194  std::vector<std::vector<std::string>> parameter_sets = {{"p", "T"}, {"rho", "e"}, {"rho", "p"}};
195  if (_has_1phase)
196  parameter_sets.push_back({"rho", "rhou", "rhoE"});
197  auto specified = getSpecifiedSetMap(parameter_sets, "one-phase", throw_error_if_no_match);
198 
199  // compute/determine rho, e, p, T, vel
200 
201  Real rho, e, p, T, vel = 0;
202  bool specified_a_set = false;
203  if (specified["rho,e"])
204  {
205  rho = getParam<Real>("rho");
206  e = getParam<Real>("e");
207  const Real v = 1.0 / rho;
208  p = fp_1phase->p_from_v_e(v, e);
209  T = fp_1phase->T_from_v_e(v, e);
210  if (isParamValid("vel"))
211  vel = getParam<Real>("vel");
212 
213  specified_a_set = true;
214  }
215  else if (specified["rho,p"])
216  {
217  rho = getParam<Real>("rho");
218  p = getParam<Real>("p");
219  const Real v = 1.0 / rho;
220  e = fp_1phase->e_from_p_rho(p, rho);
221  T = fp_1phase->T_from_v_e(v, e);
222  if (isParamValid("vel"))
223  vel = getParam<Real>("vel");
224 
225  specified_a_set = true;
226  }
227  else if (specified["p,T"])
228  {
229  p = getParam<Real>("p");
230  T = getParam<Real>("T");
231  rho = fp_1phase->rho_from_p_T(p, T);
232  e = fp_1phase->e_from_p_rho(p, rho);
233  if (isParamValid("vel"))
234  vel = getParam<Real>("vel");
235 
236  specified_a_set = true;
237  }
238  else if (specified["rho,rhou,rhoE"])
239  {
240  rho = getParam<Real>("rho");
241  const Real rhou = getParam<Real>("rhou");
242  const Real rhoE = getParam<Real>("rhoE");
243 
244  vel = rhou / rho;
245  const Real E = rhoE / rho;
246  e = E - 0.5 * vel * vel;
247 
248  const Real v = 1.0 / rho;
249  p = fp_1phase->p_from_v_e(v, e);
250  T = fp_1phase->T_from_v_e(v, e);
251 
252  specified_a_set = true;
253  }
254 
255  if (specified_a_set)
256  {
257  params.set<bool>("specified") = true;
258 
259  const Real v = 1.0 / rho;
260 
261  params.set<Real>("rho") = rho;
262  params.set<Real>("e") = e;
263  params.set<Real>("p") = p;
264  params.set<Real>("T") = T;
265  params.set<Real>("v") = v;
266  params.set<Real>("h") = fp_1phase->h_from_p_T(p, T);
267  params.set<Real>("s") = fp_1phase->s_from_v_e(v, e);
268  params.set<Real>("c") = fp_1phase->c_from_v_e(v, e);
269  params.set<Real>("mu") = fp_1phase->mu_from_v_e(v, e);
270  params.set<Real>("cp") = fp_1phase->cp_from_v_e(v, e);
271  params.set<Real>("cv") = fp_1phase->cv_from_v_e(v, e);
272  params.set<Real>("k") = fp_1phase->k_from_v_e(v, e);
273  params.set<Real>("beta") = fp_1phase->beta_from_p_T(p, T);
274 
275  if (isParamValid("vel") || specified["rho,rhou,rhoE"])
276  {
277  const Real s = fp_1phase->s_from_v_e(v, e);
278  const Real s0 = s;
279  const Real h = fp_1phase->h_from_p_T(p, T);
280  const Real h0 = h + 0.5 * vel * vel;
281  const Real p0 = fp_1phase->p_from_h_s(h0, s0);
282  const Real rho0 = fp_1phase->rho_from_p_s(p0, s0);
283  const Real e0 = fp_1phase->e_from_p_rho(p0, rho0);
284  const Real v0 = 1.0 / rho0;
285  const Real T0 = fp_1phase->T_from_v_e(v0, e0);
286  const Real c0 = fp_1phase->c_from_v_e(v0, e0);
287  const Real mu0 = fp_1phase->mu_from_v_e(v0, e0);
288  const Real cp0 = fp_1phase->cp_from_v_e(v0, e0);
289  const Real cv0 = fp_1phase->cv_from_v_e(v0, e0);
290  const Real k0 = fp_1phase->k_from_v_e(v0, e0);
291  const Real beta0 = fp_1phase->beta_from_p_T(p0, T0);
292 
293  params.set<Real>("vel") = vel;
294  params.set<Real>("rho0") = rho0;
295  params.set<Real>("s0") = s0;
296  params.set<Real>("v0") = v0;
297  params.set<Real>("e0") = e0;
298  params.set<Real>("h0") = h0;
299  params.set<Real>("p0") = p0;
300  params.set<Real>("T0") = T0;
301  params.set<Real>("c0") = c0;
302  params.set<Real>("mu0") = mu0;
303  params.set<Real>("cp0") = cp0;
304  params.set<Real>("cv0") = cv0;
305  params.set<Real>("k0") = k0;
306  params.set<Real>("beta0") = beta0;
307  }
308 
309  // warn if NaN encountered
310  if (_nan_encountered)
311  mooseWarning(
312  "At least one NaN was encountered. This implies one of the following:\n",
313  " 1. The specified thermodynamic state is inconsistent with the equation of state\n",
314  " (for example, the state corresponds to a different phase of the fluid).\n",
315  " 2. There is a problem with the equation of state package at this state\n",
316  " (for example, the supplied state is outside of the valid state space\n",
317  " that was programmed in the package).");
318  }
319 
320  return params;
321 }
T & set(const std::string &name, bool quiet_mode=false)
void mooseWarning(Args &&... args) const
InputParameters emptyInputParameters()
bool _nan_encountered
flag that NaN has been encountered
bool isParamValid(const std::string &name) const
const bool _has_1phase
flag that user provided 1-phase fluid properties
std::map< std::string, bool > getSpecifiedSetMap(const std::vector< std::vector< std::string >> &parameter_sets, const std::string &fp_type, bool throw_error_if_no_match) const
Gets a map of a parameter set to a flag telling whether that set was provided.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
Definition: NS.h:82

◆ compute2Phase()

InputParameters FluidPropertiesInterrogator::compute2Phase ( )
protected

Queries a 2-phase fluid properties object.

Returns
Input parameters holding the computed values

Definition at line 324 of file FluidPropertiesInterrogator.C.

Referenced by execute().

325 {
327 
328  // reset NaN flag
329  _nan_encountered = false;
330 
331  // determine how state is specified
332  std::vector<std::vector<std::string>> parameter_sets = {{"p", "T"}, {"p"}, {"T"}};
333  auto specified = getSpecifiedSetMap(parameter_sets, "two-phase", true);
334 
335  const Real p_critical = _fp_2phase->p_critical();
336  params.set<Real>("p_critical") = p_critical;
337  if (specified["p"])
338  {
339  const Real p = getParam<Real>("p");
340  const Real T_sat = _fp_2phase->T_sat(p);
341  const Real h_lat = _fp_2phase->h_lat(p, T_sat);
342 
343  params.set<Real>("p") = p;
344  params.set<Real>("T_sat") = T_sat;
345  params.set<Real>("h_lat") = h_lat;
346  }
347  else if (specified["T"])
348  {
349  const Real T = getParam<Real>("T");
350  const Real p_sat = _fp_2phase->p_sat(T);
351  const Real h_lat = _fp_2phase->h_lat(p_sat, T);
352  const Real sigma = _fp_2phase->sigma_from_T(T);
353 
354  params.set<Real>("T") = T;
355  params.set<Real>("p_sat") = p_sat;
356  params.set<Real>("h_lat") = h_lat;
357  params.set<Real>("sigma") = sigma;
358  }
359  else if (specified["p,T"])
360  {
361  const Real p = getParam<Real>("p");
362  const Real T = getParam<Real>("T");
363  const Real h_lat = _fp_2phase->h_lat(p, T);
364 
365  params.set<Real>("p") = p;
366  params.set<Real>("T") = T;
367  params.set<Real>("h_lat") = h_lat;
368  }
369 
370  // warn if NaN encountered
371  if (_nan_encountered)
372  mooseWarning("At least one NaN was encountered.");
373 
374  return params;
375 }
T & set(const std::string &name, bool quiet_mode=false)
const TwoPhaseFluidProperties *const _fp_2phase
pointer to 2-phase fluid properties object (if provided 2-phase object)
void mooseWarning(Args &&... args) const
InputParameters emptyInputParameters()
bool _nan_encountered
flag that NaN has been encountered
virtual Real h_lat(Real p, Real T) const
Computes latent heat of vaporization.
virtual Real p_critical() const =0
Returns the critical pressure.
std::map< std::string, bool > getSpecifiedSetMap(const std::vector< std::vector< std::string >> &parameter_sets, const std::string &fp_type, bool throw_error_if_no_match) const
Gets a map of a parameter set to a flag telling whether that set was provided.
virtual Real p_sat(Real T) const =0
Computes the saturation pressure at a temperature.
virtual Real T_sat(Real p) const =0
Computes the saturation temperature at a pressure.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real sigma_from_T(Real T) const
Computes surface tension sigma of saturated liquid in contact with saturated vapor.

◆ computeVaporMixture()

InputParameters FluidPropertiesInterrogator::computeVaporMixture ( bool  throw_error_if_no_match)
protected

Queries a vapor mixture fluid properties object.

Returns
Input parameters holding the computed values
Parameters
[in]throw_error_if_no_matchOption to throw an error if no sets match the inputs

Definition at line 378 of file FluidPropertiesInterrogator.C.

Referenced by execute().

379 {
381 
382  // reset NaN flag
383  _nan_encountered = false;
384 
385  // determine how state is specified
386  std::vector<std::vector<std::string>> parameter_sets = {
387  {"p", "T", "x_ncg"}, {"rho", "e", "x_ncg"}, {"rho", "rhou", "rhoE", "x_ncg"}};
388  auto specified = getSpecifiedSetMap(parameter_sets, "vapor mixture", throw_error_if_no_match);
389 
390  const auto x_ncg = getParam<std::vector<Real>>("x_ncg");
391 
392  // compute/determine rho, e, p, T, vel
393 
394  Real rho, e, p, T, vel = 0;
395  bool specified_a_set = false;
396  if (specified["rho,e,x_ncg"])
397  {
398  rho = getParam<Real>("rho");
399  e = getParam<Real>("e");
400  const Real v = 1.0 / rho;
401  p = _fp_vapor_mixture->p_from_v_e(v, e, x_ncg);
402  T = _fp_vapor_mixture->T_from_v_e(v, e, x_ncg);
403  if (isParamValid("vel"))
404  vel = getParam<Real>("vel");
405 
406  specified_a_set = true;
407  }
408  else if (specified["p,T,x_ncg"])
409  {
410  p = getParam<Real>("p");
411  T = getParam<Real>("T");
412  rho = _fp_vapor_mixture->rho_from_p_T(p, T, x_ncg);
413  e = _fp_vapor_mixture->e_from_p_T(p, T, x_ncg);
414  if (isParamValid("vel"))
415  vel = getParam<Real>("vel");
416 
417  specified_a_set = true;
418  }
419  else if (specified["rho,rhou,rhoE,x_ncg"])
420  {
421  rho = getParam<Real>("rho");
422  const Real rhou = getParam<Real>("rhou");
423  const Real rhoE = getParam<Real>("rhoE");
424 
425  vel = rhou / rho;
426  const Real E = rhoE / rho;
427  e = E - 0.5 * vel * vel;
428 
429  const Real v = 1.0 / rho;
430  p = _fp_vapor_mixture->p_from_v_e(v, e, x_ncg);
431  T = _fp_vapor_mixture->T_from_v_e(v, e, x_ncg);
432 
433  specified_a_set = true;
434  }
435 
436  if (specified_a_set)
437  {
438  params.set<bool>("specified") = true;
439 
440  const Real v = 1.0 / rho;
441  const Real h = e + p / rho;
442  const Real c = _fp_vapor_mixture->c_from_p_T(p, T, x_ncg);
443  const Real mu = _fp_vapor_mixture->mu_from_p_T(p, T, x_ncg);
444  const Real cp = _fp_vapor_mixture->cp_from_p_T(p, T, x_ncg);
445  const Real cv = _fp_vapor_mixture->cv_from_p_T(p, T, x_ncg);
446  const Real k = _fp_vapor_mixture->k_from_p_T(p, T, x_ncg);
447 
448  params.set<Real>("p") = p;
449  params.set<Real>("T") = T;
450  params.set<Real>("rho") = rho;
451  params.set<Real>("e") = e;
452  params.set<Real>("v") = v;
453  params.set<Real>("h") = h;
454  params.set<Real>("c") = c;
455  params.set<Real>("mu") = mu;
456  params.set<Real>("cp") = cp;
457  params.set<Real>("cv") = cv;
458  params.set<Real>("k") = k;
459 
460  if (isParamValid("vel") || specified["rho,rhou,rhoE,x_ncg"])
461  {
462  const Real h = e + p / rho;
463  const Real h0 = h + 0.5 * vel * vel;
464 
465  params.set<Real>("h0") = h0;
466  }
467 
468  // warn if NaN encountered
469  if (_nan_encountered)
470  mooseWarning(
471  "At least one NaN was encountered. This implies one of the following:\n",
472  " 1. The specified thermodynamic state is inconsistent with the equation of state\n",
473  " (for example, the state corresponds to a different phase of the fluid).\n",
474  " 2. There is a problem with the equation of state package at this state\n",
475  " (for example, the supplied state is outside of the valid state space\n",
476  " that was programmed in the package).");
477  }
478 
479  return params;
480 }
static const std::string cv
Definition: NS.h:121
const VaporMixtureFluidProperties *const _fp_vapor_mixture
pointer to vapor mixture fluid properties object (if provided 2-phase NCG object) ...
T & set(const std::string &name, bool quiet_mode=false)
void mooseWarning(Args &&... args) const
InputParameters emptyInputParameters()
bool _nan_encountered
flag that NaN has been encountered
bool isParamValid(const std::string &name) const
static const std::string cp
Definition: NS.h:120
static const std::string mu
Definition: NS.h:122
std::map< std::string, bool > getSpecifiedSetMap(const std::vector< std::vector< std::string >> &parameter_sets, const std::string &fp_type, bool throw_error_if_no_match) const
Gets a map of a parameter set to a flag telling whether that set was provided.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string v
Definition: NS.h:82
static const std::string k
Definition: NS.h:124

◆ execute()

void FluidPropertiesInterrogator::execute ( )
overridevirtual

Implements GeneralUserObject.

Definition at line 79 of file FluidPropertiesInterrogator.C.

80 {
81  if (_has_2phase_ncg)
82  {
83  InputParameters pars_2phase = compute2Phase();
84  InputParameters pars_liquid = compute1Phase(_fp_liquid, false);
85  InputParameters pars_mixture = computeVaporMixture(false);
86 
87  if (_json)
88  {
89  nlohmann::json json;
90 
91  auto & json_2phase = json["2-phase"];
92  buildJSON2Phase(json_2phase, pars_2phase);
93  auto & json_liquid = json["liquid"];
94  buildJSON1Phase(json_liquid, pars_liquid);
95  auto & json_mixture = json["vapor-mixture"];
96  buildJSONVaporMixture(json_mixture, pars_mixture);
97 
98  Moose::out << "**START JSON DATA**\n";
99  Moose::out << json << "\n";
100  Moose::out << "**END JSON DATA**" << std::endl;
101  }
102  else
103  {
104  outputASCII2Phase(pars_2phase);
105  outputASCII1Phase("LIQUID phase", pars_liquid);
106  outputASCIIVaporMixture(pars_mixture);
107  }
108  }
109  else if (_has_2phase)
110  {
111  InputParameters pars_2phase = compute2Phase();
112  InputParameters pars_liquid = compute1Phase(_fp_liquid, false);
113  InputParameters pars_vapor = compute1Phase(_fp_vapor, false);
114 
115  if (_json)
116  {
117  nlohmann::json json;
118 
119  auto & json_2phase = json["2-phase"];
120  buildJSON2Phase(json_2phase, pars_2phase);
121  if (pars_liquid.have_parameter<bool>("specified"))
122  {
123  auto & json_liquid = json["liquid"];
124  buildJSON1Phase(json_liquid, pars_liquid);
125  }
126  if (pars_vapor.have_parameter<bool>("specified"))
127  {
128  auto & json_vapor = json["vapor"];
129  buildJSON1Phase(json_vapor, pars_vapor);
130  }
131 
132  Moose::out << "**START JSON DATA**\n";
133  Moose::out << json << "\n";
134  Moose::out << "**END JSON DATA**" << std::endl;
135  }
136  else
137  {
138  outputASCII2Phase(pars_2phase);
139  if (pars_liquid.have_parameter<bool>("specified"))
140  outputASCII1Phase("LIQUID phase", pars_liquid);
141  if (pars_vapor.have_parameter<bool>("specified"))
142  outputASCII1Phase("VAPOR phase", pars_vapor);
143  }
144  }
145  else if (_has_vapor_mixture)
146  {
147  InputParameters pars_mixture = computeVaporMixture(true);
148  if (_json)
149  {
150  nlohmann::json json;
151  buildJSONVaporMixture(json, pars_mixture);
152 
153  Moose::out << "**START JSON DATA**\n";
154  Moose::out << json << "\n";
155  Moose::out << "**END JSON DATA**" << std::endl;
156  }
157  else
158  outputASCIIVaporMixture(pars_mixture);
159  }
160  else
161  {
162  InputParameters pars_1phase = compute1Phase(_fp_1phase, true);
163 
164  if (_json)
165  {
166  nlohmann::json json;
167 
168  buildJSON1Phase(json, pars_1phase);
169 
170  Moose::out << "**START JSON DATA**\n";
171  Moose::out << json << "\n";
172  Moose::out << "**END JSON DATA**" << std::endl;
173  }
174  else
175  outputASCII1Phase("Single-phase", pars_1phase);
176  }
177 }
InputParameters computeVaporMixture(bool throw_error_if_no_match)
Queries a vapor mixture fluid properties object.
const SinglePhaseFluidProperties *const _fp_vapor
pointer to vapor fluid properties object (if provided 2-phase object)
void buildJSON1Phase(nlohmann::json &json, const InputParameters &params)
Build 1-phase fluid properties in JSON format.
InputParameters compute1Phase(const SinglePhaseFluidProperties *const fp_1phase, bool throw_error_if_no_match)
Queries a 1-phase fluid properties object.
const bool _has_2phase_ncg
flag that user provided 2-phase NCG fluid properties
const SinglePhaseFluidProperties *const _fp_liquid
pointer to liquid fluid properties object (if provided 2-phase object)
void outputASCII2Phase(const InputParameters &params)
Output 2-phase fluid properties in plain text format.
void outputASCII1Phase(const std::string &description, const InputParameters &params)
Output 1-phase fluid properties in plain text format.
void outputASCIIVaporMixture(const InputParameters &params)
Output vapor mixture fluid properties in plain text format.
void buildJSONVaporMixture(nlohmann::json &json, const InputParameters &params)
Build vapor mixture fluid properties in JSON format.
bool have_parameter(std::string_view name) const
const bool _has_vapor_mixture
flag that user provided vapor mixture fluid properties
const bool & _json
true if the output should use JSON format
InputParameters compute2Phase()
Queries a 2-phase fluid properties object.
void buildJSON2Phase(nlohmann::json &json, const InputParameters &params)
Build 2-phase fluid properties in JSON format.
const bool _has_2phase
flag that user provided 2-phase fluid properties
const SinglePhaseFluidProperties *const _fp_1phase
pointer to 1-phase fluid properties object (if provided 1-phase object)

◆ finalize()

void FluidPropertiesInterrogator::finalize ( )
overridevirtual

Implements GeneralUserObject.

Definition at line 180 of file FluidPropertiesInterrogator.C.

181 {
182 }

◆ getSpecifiedSetMap()

std::map< std::string, bool > FluidPropertiesInterrogator::getSpecifiedSetMap ( const std::vector< std::vector< std::string >> &  parameter_sets,
const std::string &  fp_type,
bool  throw_error_if_no_match 
) const
protected

Gets a map of a parameter set to a flag telling whether that set was provided.

Parameters
[in]parameter_setsvector of vectors of strings of parameter names. The first dimension is the parameter set, and the second dimension is a parameter within the set. If a set is a subset of another set, the subset should be after the other.
[in]fp_typestring used to identify the set of parameter sets
[in]throw_error_if_no_matchOption to throw an error if no sets match the inputs

Definition at line 575 of file FluidPropertiesInterrogator.C.

Referenced by compute1Phase(), compute2Phase(), and computeVaporMixture().

579 {
580  // get union of parameters from all sets
581  std::vector<std::string> parameter_union;
582  for (auto & parameter_set : parameter_sets)
583  parameter_union.insert(parameter_union.end(), parameter_set.begin(), parameter_set.end());
584  std::sort(parameter_union.begin(), parameter_union.end());
585  parameter_union.erase(std::unique(parameter_union.begin(), parameter_union.end()),
586  parameter_union.end());
587 
588  std::vector<std::string> parameter_set_names;
589  std::map<std::string, bool> specified;
590  bool specified_a_set = false;
591  for (const auto & parameter_set : parameter_sets)
592  {
593  // create unique string to identify parameter set
594  std::stringstream ss;
595  for (unsigned int i = 0; i < parameter_set.size(); i++)
596  if (i == 0)
597  ss << parameter_set[i];
598  else
599  ss << "," << parameter_set[i];
600  const std::string parameter_set_name = ss.str();
601  parameter_set_names.push_back(parameter_set_name);
602 
603  // check if the set parameters were provided
604  bool all_parameters_provided = true;
605  for (const auto & parameter : parameter_set)
606  if (!isParamValid(parameter))
607  all_parameters_provided = false;
608 
609  if (all_parameters_provided)
610  {
611  // exclude set if a superset (assumed to be ordered before this set) was specified
612  if (!specified_a_set)
613  {
614  specified[parameter_set_name] = true;
615 
616  // check that there are no extraneous parameters
617  std::vector<std::string> parameter_set_sorted(parameter_set);
618  std::sort(parameter_set_sorted.begin(), parameter_set_sorted.end());
619  std::vector<std::string> extraneous_parameters;
620  std::set_difference(parameter_union.begin(),
621  parameter_union.end(),
622  parameter_set_sorted.begin(),
623  parameter_set_sorted.end(),
624  std::inserter(extraneous_parameters, extraneous_parameters.end()));
625  for (const auto & parameter : extraneous_parameters)
626  if (isParamValid(parameter))
627  mooseError("(",
628  parameter_set_name,
629  ") has been specified; ",
630  parameter,
631  " cannot be specified.");
632  }
633 
634  specified_a_set = true;
635  }
636  else
637  specified[parameter_set_name] = false;
638  }
639 
640  if (!specified_a_set && throw_error_if_no_match)
641  {
642  std::stringstream ss;
643  ss << "For " << fp_type
644  << " fluid properties, you must provide one of the following\n"
645  "combinations of thermodynamic properties:\n";
646  for (const auto & parameter_set_name : parameter_set_names)
647  ss << " * (" << parameter_set_name << ")\n";
648  mooseError(ss.str());
649  }
650 
651  return specified;
652 }
bool isParamValid(const std::string &name) const
void mooseError(Args &&... args) const

◆ initialize()

void FluidPropertiesInterrogator::initialize ( )
overridevirtual

Implements GeneralUserObject.

Definition at line 74 of file FluidPropertiesInterrogator.C.

75 {
76 }

◆ outputASCII1Phase()

void FluidPropertiesInterrogator::outputASCII1Phase ( const std::string &  description,
const InputParameters params 
)
protected

Output 1-phase fluid properties in plain text format.

Parameters
[in]descriptionString describing the 1-phase fluid properties
[in]paramsInput parameters with values to print

Definition at line 528 of file FluidPropertiesInterrogator.C.

Referenced by execute().

530 {
531  // output static property values
532  outputHeader(description + " STATIC properties");
533  outputStaticProperties(params);
534 
535  // output stagnation property values
536  if (params.have_parameter<Real>("vel"))
537  {
538  outputHeader(description + " STAGNATION properties");
540  }
541 }
void outputStaticProperties(const InputParameters &params)
Outputs static properties for a single-phase fluid properties object.
void outputStagnationProperties(const InputParameters &params)
Outputs stagnation properties for a single-phase fluid properties object.
bool have_parameter(std::string_view name) const
void outputHeader(const std::string &header) const
Outputs a header for a section of properties.

◆ outputASCII2Phase()

void FluidPropertiesInterrogator::outputASCII2Phase ( const InputParameters params)
protected

Output 2-phase fluid properties in plain text format.

Parameters
[in]paramsInput parameters with values to print

Definition at line 544 of file FluidPropertiesInterrogator.C.

Referenced by execute().

545 {
546  outputHeader("TWO-PHASE properties");
547  outputProperty("Critical pressure", params.get<Real>("p_critical"), "Pa");
548  if (params.have_parameter<Real>("T_sat"))
549  outputProperty("Saturation temperature", params.get<Real>("T_sat"), "K");
550  if (params.have_parameter<Real>("p_sat"))
551  outputProperty("Saturation pressure", params.get<Real>("p_sat"), "Pa");
552  if (params.have_parameter<Real>("h_lat"))
553  outputProperty("Latent heat of vaporization", params.get<Real>("h_lat"), "J/kg");
554  if (params.have_parameter<Real>("sigma"))
555  outputProperty("Surface tension", params.get<Real>("sigma"), "N/m");
556  _console << std::endl;
557 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void outputProperty(const std::string &name, const Real &value, const std::string &units)
Outputs a property value.
bool have_parameter(std::string_view name) const
void outputHeader(const std::string &header) const
Outputs a header for a section of properties.
const ConsoleStream _console

◆ outputASCIIVaporMixture()

void FluidPropertiesInterrogator::outputASCIIVaporMixture ( const InputParameters params)
protected

Output vapor mixture fluid properties in plain text format.

Parameters
[in]paramsInput parameters with values to print

Definition at line 560 of file FluidPropertiesInterrogator.C.

Referenced by execute().

561 {
562  // output static property values
563  outputHeader("Vapor mixture STATIC properties");
565 
566  // output stagnation property values
567  if (params.have_parameter<Real>("vel"))
568  {
569  outputHeader("Vapor mixture STAGNATION properties");
571  }
572 }
void outputVaporMixtureStaticProperties(const InputParameters &params)
Outputs static properties for a vapor mixture fluid properties object.
bool have_parameter(std::string_view name) const
void outputVaporMixtureStagnationProperties(const InputParameters &params)
Outputs stagnation properties for a vapor mixture fluid properties object.
void outputHeader(const std::string &header) const
Outputs a header for a section of properties.

◆ outputHeader()

void FluidPropertiesInterrogator::outputHeader ( const std::string &  header) const
protected

Outputs a header for a section of properties.

Definition at line 655 of file FluidPropertiesInterrogator.C.

Referenced by outputASCII1Phase(), outputASCII2Phase(), and outputASCIIVaporMixture().

656 {
657  _console << std::endl
658  << std::endl
659  << header << ":" << std::endl
660  << std::setfill('-') << std::setw(80) << "-" << std::setfill(' ') << std::endl;
661 }
const ConsoleStream _console

◆ outputProperty()

void FluidPropertiesInterrogator::outputProperty ( const std::string &  name,
const Real value,
const std::string &  units 
)
protected

Outputs a property value.

Definition at line 664 of file FluidPropertiesInterrogator.C.

Referenced by outputASCII2Phase(), outputStagnationProperties(), outputStaticProperties(), outputVaporMixtureStagnationProperties(), and outputVaporMixtureStaticProperties().

667 {
668  const bool use_scientific_notation = ((value < 0.001) || (value >= 10000.0));
669 
670  // check for NaN value
671  const bool is_nan = value != value;
672  if (is_nan)
673  _nan_encountered = true;
674 
675  const std::string units_printed = is_nan ? "" : units;
676 
677  // The console output is not used directly because there is no way to reset
678  // format flags. For example, if scientific format is used, there is no way
679  // to restore the general format (not fixed format); for cout, there are
680  // methods to save and restore format flags, but Console does not provide these.
681  std::stringstream ss;
682 
683  if (use_scientific_notation)
684  ss << std::setw(35) << std::left << name + ":" << std::setw(_precision + 10) << std::right
685  << std::setprecision(_precision) << std::scientific << value << " " << units_printed
686  << std::endl;
687  else
688  ss << std::setw(35) << std::left << name + ":" << std::setw(_precision + 10) << std::right
689  << std::setprecision(_precision) << value << " " << units_printed << std::endl;
690 
691  _console << ss.str();
692 }
const unsigned int & _precision
Precision used for printing values.
virtual const std::string & name() const
bool _nan_encountered
flag that NaN has been encountered
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
const ConsoleStream _console

◆ outputStagnationProperties()

void FluidPropertiesInterrogator::outputStagnationProperties ( const InputParameters params)
protected

Outputs stagnation properties for a single-phase fluid properties object.

Parameters
[in]paramsInput parameters with values to print

Definition at line 715 of file FluidPropertiesInterrogator.C.

Referenced by outputASCII1Phase().

716 {
717  outputProperty("Pressure", params.get<Real>("p0"), "Pa");
718  outputProperty("Temperature", params.get<Real>("T0"), "K");
719  outputProperty("Density", params.get<Real>("rho0"), "kg/m^3");
720  outputProperty("Specific volume", params.get<Real>("v0"), "m^3/kg");
721  outputProperty("Specific internal energy", params.get<Real>("e0"), "J/kg");
722  outputProperty("Specific enthalpy", params.get<Real>("h0"), "J/kg");
723  outputProperty("Specific entropy", params.get<Real>("s0"), "J/(kg-K)");
724  _console << std::endl;
725  outputProperty("Sound speed", params.get<Real>("c0"), "m/s");
726  outputProperty("Dynamic viscosity", params.get<Real>("mu0"), "Pa-s");
727  outputProperty("Specific heat at constant pressure", params.get<Real>("cp0"), "J/(kg-K)");
728  outputProperty("Specific heat at constant volume", params.get<Real>("cv0"), "J/(kg-K)");
729  outputProperty("Thermal conductivity", params.get<Real>("k0"), "W/(m-K)");
730  outputProperty("Volumetric expansion coefficient", params.get<Real>("beta0"), "1/K");
731  _console << std::endl;
732 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void outputProperty(const std::string &name, const Real &value, const std::string &units)
Outputs a property value.
const ConsoleStream _console

◆ outputStaticProperties()

void FluidPropertiesInterrogator::outputStaticProperties ( const InputParameters params)
protected

Outputs static properties for a single-phase fluid properties object.

Parameters
[in]paramsInput parameters with values to print

Definition at line 695 of file FluidPropertiesInterrogator.C.

Referenced by outputASCII1Phase().

696 {
697  outputProperty("Pressure", params.get<Real>("p"), "Pa");
698  outputProperty("Temperature", params.get<Real>("T"), "K");
699  outputProperty("Density", params.get<Real>("rho"), "kg/m^3");
700  outputProperty("Specific volume", params.get<Real>("v"), "m^3/kg");
701  outputProperty("Specific internal energy", params.get<Real>("e"), "J/kg");
702  outputProperty("Specific enthalpy", params.get<Real>("h"), "J/kg");
703  outputProperty("Specific entropy", params.get<Real>("s"), "J/(kg-K)");
704  _console << std::endl;
705  outputProperty("Sound speed", params.get<Real>("c"), "m/s");
706  outputProperty("Dynamic viscosity", params.get<Real>("mu"), "Pa-s");
707  outputProperty("Specific heat at constant pressure", params.get<Real>("cp"), "J/(kg-K)");
708  outputProperty("Specific heat at constant volume", params.get<Real>("cv"), "J/(kg-K)");
709  outputProperty("Thermal conductivity", params.get<Real>("k"), "W/(m-K)");
710  outputProperty("Volumetric expansion coefficient", params.get<Real>("beta"), "1/K");
711  _console << std::endl;
712 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void outputProperty(const std::string &name, const Real &value, const std::string &units)
Outputs a property value.
const ConsoleStream _console

◆ outputVaporMixtureStagnationProperties()

void FluidPropertiesInterrogator::outputVaporMixtureStagnationProperties ( const InputParameters params)
protected

Outputs stagnation properties for a vapor mixture fluid properties object.

Parameters
[in]paramsInput parameters with values to print

Definition at line 753 of file FluidPropertiesInterrogator.C.

Referenced by outputASCIIVaporMixture().

754 {
755  outputProperty("Specific enthalpy", params.get<Real>("h0"), "J/kg");
756  _console << std::endl;
757 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void outputProperty(const std::string &name, const Real &value, const std::string &units)
Outputs a property value.
const ConsoleStream _console

◆ outputVaporMixtureStaticProperties()

void FluidPropertiesInterrogator::outputVaporMixtureStaticProperties ( const InputParameters params)
protected

Outputs static properties for a vapor mixture fluid properties object.

Parameters
[in]paramsInput parameters with values to print

Definition at line 735 of file FluidPropertiesInterrogator.C.

Referenced by outputASCIIVaporMixture().

736 {
737  outputProperty("Pressure", params.get<Real>("p"), "Pa");
738  outputProperty("Temperature", params.get<Real>("T"), "K");
739  outputProperty("Density", params.get<Real>("rho"), "kg/m^3");
740  outputProperty("Specific volume", params.get<Real>("v"), "m^3/kg");
741  outputProperty("Specific internal energy", params.get<Real>("e"), "J/kg");
742  outputProperty("Specific enthalpy", params.get<Real>("h"), "J/kg");
743  _console << std::endl;
744  outputProperty("Sound speed", params.get<Real>("c"), "m/s");
745  outputProperty("Dynamic viscosity", params.get<Real>("mu"), "Pa-s");
746  outputProperty("Specific heat at constant pressure", params.get<Real>("cp"), "J/(kg-K)");
747  outputProperty("Specific heat at constant volume", params.get<Real>("cv"), "J/(kg-K)");
748  outputProperty("Thermal conductivity", params.get<Real>("k"), "W/(m-K)");
749  _console << std::endl;
750 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void outputProperty(const std::string &name, const Real &value, const std::string &units)
Outputs a property value.
const ConsoleStream _console

◆ validParams()

InputParameters FluidPropertiesInterrogator::validParams ( )
static

Definition at line 20 of file FluidPropertiesInterrogator.C.

21 {
23  params.addRequiredParam<UserObjectName>("fp",
24  "The name of the fluid properties object to query.");
25  params.addParam<bool>("json", false, "Output in JSON format");
26  params.addParam<Real>("rho", "Density");
27  params.addParam<Real>("rhou", "Momentum density; rho * u");
28  params.addParam<Real>("rhoE", "Total energy density; rho * E");
29  params.addParam<Real>("e", "Specific internal energy");
30  params.addParam<Real>("p", "Pressure");
31  params.addParam<Real>("T", "Temperature");
32  params.addParam<Real>("vel", "Velocity");
33  params.addParam<std::vector<Real>>("x_ncg", "Mass fractions of NCGs");
34  params.addRequiredParam<unsigned int>("precision", "Precision for printing values");
35 
36  params.addClassDescription(
37  "User object for querying a single-phase or two-phase fluid properties object");
38 
39  return params;
40 }
static InputParameters validParams()
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addRequiredParam(const std::string &name, const std::string &doc_string)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)

Member Data Documentation

◆ _fp

const FluidProperties* const FluidPropertiesInterrogator::_fp
protected

pointer to fluid properties object

Definition at line 157 of file FluidPropertiesInterrogator.h.

◆ _fp_1phase

const SinglePhaseFluidProperties* const FluidPropertiesInterrogator::_fp_1phase
protected

pointer to 1-phase fluid properties object (if provided 1-phase object)

Definition at line 159 of file FluidPropertiesInterrogator.h.

Referenced by execute().

◆ _fp_2phase

const TwoPhaseFluidProperties* const FluidPropertiesInterrogator::_fp_2phase
protected

pointer to 2-phase fluid properties object (if provided 2-phase object)

Definition at line 161 of file FluidPropertiesInterrogator.h.

Referenced by compute2Phase().

◆ _fp_2phase_ncg

const TwoPhaseNCGFluidProperties* const FluidPropertiesInterrogator::_fp_2phase_ncg
protected

pointer to 2-phase NCG fluid properties object (if provided 2-phase NCG object)

Definition at line 163 of file FluidPropertiesInterrogator.h.

◆ _fp_liquid

const SinglePhaseFluidProperties* const FluidPropertiesInterrogator::_fp_liquid
protected

pointer to liquid fluid properties object (if provided 2-phase object)

Definition at line 175 of file FluidPropertiesInterrogator.h.

Referenced by execute().

◆ _fp_vapor

const SinglePhaseFluidProperties* const FluidPropertiesInterrogator::_fp_vapor
protected

pointer to vapor fluid properties object (if provided 2-phase object)

Definition at line 177 of file FluidPropertiesInterrogator.h.

Referenced by execute().

◆ _fp_vapor_mixture

const VaporMixtureFluidProperties* const FluidPropertiesInterrogator::_fp_vapor_mixture
protected

pointer to vapor mixture fluid properties object (if provided 2-phase NCG object)

Definition at line 179 of file FluidPropertiesInterrogator.h.

Referenced by computeVaporMixture().

◆ _has_1phase

const bool FluidPropertiesInterrogator::_has_1phase
protected

flag that user provided 1-phase fluid properties

Definition at line 166 of file FluidPropertiesInterrogator.h.

Referenced by compute1Phase(), and FluidPropertiesInterrogator().

◆ _has_2phase

const bool FluidPropertiesInterrogator::_has_2phase
protected

flag that user provided 2-phase fluid properties

Definition at line 170 of file FluidPropertiesInterrogator.h.

Referenced by execute(), and FluidPropertiesInterrogator().

◆ _has_2phase_ncg

const bool FluidPropertiesInterrogator::_has_2phase_ncg
protected

flag that user provided 2-phase NCG fluid properties

Definition at line 172 of file FluidPropertiesInterrogator.h.

Referenced by execute().

◆ _has_vapor_mixture

const bool FluidPropertiesInterrogator::_has_vapor_mixture
protected

flag that user provided vapor mixture fluid properties

Definition at line 168 of file FluidPropertiesInterrogator.h.

Referenced by execute(), and FluidPropertiesInterrogator().

◆ _json

const bool& FluidPropertiesInterrogator::_json
protected

true if the output should use JSON format

Definition at line 155 of file FluidPropertiesInterrogator.h.

Referenced by execute().

◆ _nan_encountered

bool FluidPropertiesInterrogator::_nan_encountered
protected

flag that NaN has been encountered

Definition at line 182 of file FluidPropertiesInterrogator.h.

Referenced by compute1Phase(), compute2Phase(), computeVaporMixture(), and outputProperty().

◆ _precision

const unsigned int& FluidPropertiesInterrogator::_precision
protected

Precision used for printing values.

Definition at line 185 of file FluidPropertiesInterrogator.h.

Referenced by outputProperty().


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