Fluid Properties Software Design Description
Introduction
The Software Design Description (SDD) for Fluid Properties is a description of the software product and serves as guideline that describes the architecture of the system and all of its parts.
Dependencies
The Fluid Properties application is developed using MOOSE and is based on various modules, as such the SDD for Fluid Properties is dependent upon the following documents.
Requirements Cross Reference
The following is a list of all design documents and the associated requirements for Fluid Properties.
- fluid_properties: BrineFluidProperties
- 6.2.1The system shall compute properties of brine
Specification(s): brine
Design: BrineFluidProperties
Issue(s): #6972
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 6.2.2The system shall compute properties of brine using tabulated water properties
Specification(s): brine_tabulated
Design: BrineFluidProperties
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: FluidPropertiesInterrogator
- 6.4.1The fluid properties interrogator shall output static-state fluid properties for (p, T) input.
Specification(s): 1ph.p_T
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.2The fluid properties interrogator shall output static-state fluid properties for (p, T) input in JSON format.
Specification(s): 1ph.p_T.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.3The fluid properties interrogator shall output static-state fluid properties for (rho, e) input.
Specification(s): 1ph.rho_e
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.4The fluid properties interrogator shall output static-state fluid properties for (rho, e) input in JSON format.
Specification(s): 1ph.rho_e.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.5The fluid properties interrogator shall output static-state fluid properties for (rho, p) input.
Specification(s): 1ph.rho_p
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.6The fluid properties interrogator shall output static-state fluid properties for (rho, p) input in JSON format.
Specification(s): 1ph.rho_p.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.7The fluid properties interrogator shall output static-state and stagnation-state fluid properties for (rho, rhou, rhoE) input with a single-phase fluid properties object.
Specification(s): 1ph.rho_rhou_rhoE
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.8The fluid properties interrogator shall output static-state and stagnation-state fluid properties for (rho, rhou, rhoE) input with a single-phase fluid properties object in JSON format.
Specification(s): 1ph.rho_rhou_rhoE.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.9The fluid properties interrogator shall output two-phase and static-state, single-phase fluid properties for (p, T) input with a two-phase fluid properties object.
Specification(s): 2ph.p_T
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.10The fluid properties interrogator shall output two-phase and static-state, single-phase fluid properties for (p, T) input with a two-phase fluid properties object in JSON format.
Specification(s): 2ph.p_T.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.11The fluid properties interrogator shall output two-phase and static-state, single-phase fluid properties for (p, T) input with a two-phase NCG fluid properties object.
Specification(s): 2ph_ncg_p_T
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.12The fluid properties interrogator shall output two-phase and static-state, single-phase fluid properties for (p, T) input with a two-phase NCG fluid properties object in JSON format.
Specification(s): 2ph_ncg_p_T.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.13The fluid properties interrogator shall output static-state, single-phase fluid properties for (rho, e) input with a vapor mixture fluid properties object.
Specification(s): vapor_mixture_rho_e
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.14The fluid properties interrogator shall output static-state, single-phase fluid properties for (rho, e) input with a vapor mixture fluid properties object in JSON format.
Specification(s): vapor_mixture_rho_e.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.15The fluid properties interrogator shall output two-phase fluid properties for (p) input with a two-phase fluid properties object.
Specification(s): 2ph_p
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.16The fluid properties interrogator shall output two-phase fluid properties for (p) input with a two-phase fluid properties object in JSON format.
Specification(s): 2ph_p.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.17The fluid properties interrogator shall output two-phase fluid properties for (T) input with a two-phase fluid properties object.
Specification(s): 2ph_T
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.18The fluid properties interrogator shall output two-phase fluid properties for (T) input with a two-phase fluid properties object in JSON format.
Specification(s): 2ph_T.json
Design: FluidPropertiesInterrogator
Issue(s): #13741
Collection(s): FUNCTIONAL
Type(s): RunApp
- 6.4.19The fluid properties interrogator shall throw an error if an incompatible fluid properties object is supplied.
Specification(s): err.wrong_fp_type
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 6.4.20The fluid properties interrogator shall throw an error if an extraneous parameter(s) are supplied.
Specification(s): err.extraneous_parameter
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 6.4.21The fluid properties interrogator shall throw an error if an no valid input sets were supplied.
Specification(s): err.no_params
Design: FluidPropertiesInterrogator
Issue(s): #12995
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- fluid_properties: SaturationPressureFunction
- 6.5.1The system shall provide a function that computes saturation pressure from a temperature function
Specification(s): test
Design: SaturationPressureFunction
Issue(s): #14755
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: SaturationTemperatureFunction
- 6.5.2The system shall provide a function that computes saturation temperature from a pressure function
Specification(s): test
Design: SaturationTemperatureFunction
Issue(s): #14755
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: RhoFromPressureTemperatureIC
- 6.6.1The system shall be able to set an initial condition for density given pressure and temperature as variables
Specification(s): test
Design: RhoFromPressureTemperatureIC
Issue(s): #15524
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: RhoVaporMixtureFromPressureTemperatureIC
- 6.6.2The system shall be able to set an initial condition for density of vapor mixture given pressure and temperature as variables
Specification(s): test
Design: RhoVaporMixtureFromPressureTemperatureIC
Issue(s): #15524
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: SpecificEnthalpyFromPressureTemperatureIC
- 6.6.3The system shall be able to set an initial condition for specific enthalpy given pressure and temperature as variables
Specification(s): test
Design: SpecificEnthalpyFromPressureTemperatureIC
Issue(s): #15561
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: NaNInterface
- 6.8.1The system should produce a warning when a scalar NaN is produced and user required that the execution would not terminate
Specification(s): quiet_nan_scalar
Design: NaNInterface
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 6.8.2The system should produce a warning when a vector NaN is produced and user required that the execution would not terminate
Specification(s): quiet_nan_vector
Design: NaNInterface
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 6.8.3The system should report an error when a NaN is produced by a computation in DEBUG mode, by default
Specification(s): signaling_nan_dbg
Design: NaNInterface
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 6.8.4The system should not report an error when a NaN is produced by a computation in OPT mode, by default
Specification(s): signaling_nan_opt
Design: NaNInterface
Collection(s): FUNCTIONAL
Type(s): RunApp
- fluid_properties: ADSaturationTemperatureMaterial
- 6.9.1The system shall provide an AD material that computes saturation temperature.
Specification(s): test
Design: ADSaturationTemperatureMaterial
Issue(s): #15308
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: ADSurfaceTensionMaterial
- 6.9.2The system shall provide an AD material that computes surface tension.
Specification(s): test
Design: ADSurfaceTensionMaterial
Issue(s): #15308
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: SaturationPressureMaterial
- 6.9.3The system shall provide a material that computes saturation pressure using automatic differentiation material properties.
Specification(s): ad
Design: SaturationPressureMaterial
Issue(s): #15860
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 6.9.4The system shall provide a material that computes saturation pressure using non-automatic differentiation material properties.
Specification(s): nonad
Design: SaturationPressureMaterial
Issue(s): #15860
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: Sodium Fluid Properties
- 6.11.1The system shall be able to compute liquid sodium properties and compare exactly to analytical expressions.
Specification(s): exact
Design: Sodium Fluid PropertiesSodium Properties Material
Issue(s): #14798
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 6.11.2The system shall be able to compute liquid sodium properties given constant thermal conductivity and specific heat values.
Specification(s): constant
Design: Sodium Fluid PropertiesSodium Properties Material
Issue(s): #14798
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- fluid_properties: Sodium Properties Material
- 6.11.1The system shall be able to compute liquid sodium properties and compare exactly to analytical expressions.
Specification(s): exact
Design: Sodium Fluid PropertiesSodium Properties Material
Issue(s): #14798
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 6.11.2The system shall be able to compute liquid sodium properties given constant thermal conductivity and specific heat values.
Specification(s): constant
Design: Sodium Fluid PropertiesSodium Properties Material
Issue(s): #14798
Collection(s): FUNCTIONAL
Type(s): CSVDiff