# Water97FluidProperties

Fluid properties for water and steam (H2O) using IAPWS-IF97

The water implementation in Fluid Properties is the IAPWS Industrial Formulation 1997 for the Thermodynamic Properties of Water and Steam. This formulation calculates properties of water and steam using pressure and temperature as inputs. The IAPWS-IF97 formulation is split into five different regions in the phase diagram.

All five regions are implemented in the Fluid Properties module. To avoid iteration in region 3 of the IAPWS-IF97 formulation, the backwards equations from IAPWS (2014) are implemented.

Viscosity is calculated using the IAPWS 2008 formulation (IAPWS, 2008). Note that the critical enhancement has not been implemented.

Thermal conductivity is calculated using the IAPS 1985 formulation (IAPS, 1985). Although there is a newer formulation available (IAPWS, 2011), it is significantly more complicated, so has not been implemented yet.

Dissolution of a dilute gas into water is calculated using Henry's law (IAPWS, 2004).

## Properties of water

Propertyvalue
Molar mass0.018015 kg/mol
Critical temperature647.096 K
Critical pressure22.064 MPa
Critical density322.0 kg/m
Triple point temperature273.16 K
Triple point pressure611.657 Pa

## Range of validity

The Water97FluidProperties UserObject is valid for:

• 273.15 K T 1073.15 K for p 100 MPa

• 1073.15 K T 2273.15 K for p 50 MPa

## Input Parameters

• allow_imperfect_jacobiansFalsetrue to allow unimplemented property derivative terms to be set to zero for the AD API

Default:False

C++ Type:bool

Options:

Description:true to allow unimplemented property derivative terms to be set to zero for the AD API

• execute_onTIMESTEP_ENDThe list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

Default:TIMESTEP_END

C++ Type:ExecFlagEnum

Options:NONE INITIAL LINEAR NONLINEAR TIMESTEP_END TIMESTEP_BEGIN FINAL CUSTOM

Description:The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

### Optional Parameters

• control_tagsAdds user-defined labels for accessing object parameters via control logic.

C++ Type:std::vector

Options:

Description:Adds user-defined labels for accessing object parameters via control logic.

• enableTrueSet the enabled status of the MooseObject.

Default:True

C++ Type:bool

Options:

Description:Set the enabled status of the MooseObject.

• allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

Default:False

C++ Type:bool

Options:

Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

• force_preauxFalseForces the GeneralUserObject to be executed in PREAUX

Default:False

C++ Type:bool

Options:

Description:Forces the GeneralUserObject to be executed in PREAUX

• use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

Default:False

C++ Type:bool

Options:

Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

2. IAPWS. Guidelines on the Henry's constant and vapour liquid distribution constant for gases in H$_2$O and D$_2$O at high temperatures. Technical Report, IAPWS, 2004.[BibTeX]