9.0
general documentation
Loading...
Searching...
No Matches
cs_fluid_properties_t Struct Reference

Fluid properties descriptor. More...

#include <cs_physical_constants.h>

Collaboration diagram for cs_fluid_properties_t:

Data Fields

int ixyzp0
int icp
int icv
int iviscv
int irovar
int ivivar
int ivsuth
double ro0
double viscl0
double viscv0
double p0
double pred0
double xyzp0 [3]
double t0
double cp0
double cv0
double cpv0
double cvl
double l00
double lambda0
double r_pg_cnst
double r_v_cnst
double rvsra
double clatev
double xmasmr
int ipthrm
double pther
double pthera
double pthermax
double eint0
double sleak
double kleak
double roref

Detailed Description

Fluid properties descriptor.

Members of these fluid properties are publicly accessible, to allow for concise syntax, as they are expected to be used in many places.

Field Documentation

◆ clatev

double clatev

latent heat of evaporation

◆ cp0

double cp0

reference specific heat

Useful if cs_glob_thermal_model->thermal_variable != CS_THERMAL_MODEL_NONE, unless the user specifies the specific heat in the user subroutine cs_user_physical_properties (icp > 0) with the compressible module or coal combustion, cp0 is also needed even when there is no user scalar.

Note
None of the scalars from the specific physics is a temperature.
When using the Graphical Interface, cp0 is also used to calculate the diffusivity of the thermal scalars, based on their conductivity; it is therefore needed, unless the diffusivity is also specified in cs_user_physical_properties.

◆ cpv0

double cpv0

reference isobaric specific heat of water vapor (J/kg/K)

Useful for the moist air scheme

◆ cv0

double cv0

reference isochoric specific heat (J/kg/K)

Useful for the compressible module.

◆ cvl

double cvl

reference specific heat for of liquid water (J/kg/K)

◆ eint0

double eint0

Reference internal energy for the barotropic compressible module.

◆ icp

int icp

indicates if the isobaric specific heat $C_p$ is variable

  • -1: uniform, no property field is declared
  • 0: variable, $C_p$ is declared as a property field
    When gas or coal combustion is activated, icp is automatically set to 0 (constant $C_p$). With the electric module, it is automatically set to 1. The user is not allowed to modify these default choices.
    When icp = 1 is specified, the code automatically modifies this value to make icp designate the effective index-number of the property "specific heat". For each cell iel, the value of $C_p$ is then specified by the user in the appropriate subroutine (cs_user_physical_properties for the standard physics).
    Useful if there is at least 1 temperature scalar, or with the compressible module for non perfect gases.

◆ icv

int icv

property field id of the isochoric specific heat

  • -1: uniform isochoric specific heat (no property field defined)
  • 0: initial indicator for variable $C_p$, automatically reset by the code to to matching field id.

◆ ipthrm

int ipthrm

uniform variable thermodynamic pressure:

  • 0: false (ie not variable)
  • 1: true

◆ irovar

int irovar

variable density field $ \rho $:

  • 1: true, its variation law be given either in the GUI, or in the user subroutine cs_user_physical_properties .
    See physical_properties for more informations.
  • 0: false, its value is the reference density ro0.

◆ iviscv

int iviscv
  • -1: constant volume viscosity, equal to viscv0.
  • 0: initial indicator for variable volume viscosity, automatically reset by the code to to matching field id. Tts variation law may be specified in the cs_user_physical_properties user-defined function.
    Useful for compressible flows. The volume viscosity $\kappa$ is defined by the formula expressing the stress: $ \tens{\sigma} = -P\,\tens{Id} + \mu (\grad\,\vect{u} +
      \ ^{t}\ggrad\,\vect{u})
      +(\kappa-\frac{2}{3}\mu)\,\dive(\vect{u})\,\tens{Id} $

◆ ivivar

int ivivar

variable viscosity field $ \mu $:

  • 1: true, its variation law be given either in the GUI, or in the user subroutine cs_user_physical_properties .
    See physical_properties for more informations.
  • 0: false, its value is the reference molecular dynamic viscosity viscl0

◆ ivsuth

int ivsuth

Sutherland law for laminar viscosity and thermal conductivity Only useful in gas mix (igmix) specific physics

  • 1: Sutherland law
  • 0: low temperature law (linear except for helium)

◆ ixyzp0

int ixyzp0

filling xyzp0 indicator

◆ kleak

double kleak

Leak head loss (2.9 by default, from Idelcick)

◆ l00

double l00

latent heat referenced at 273.15K (J/kg)

◆ lambda0

double lambda0

reference heat conductivity (W/m/K)

Always useful. This was previously only available through the GUI, so in most cases, is set to 1.

◆ p0

double p0

reference pressure for the total pressure

Except with the compressible module, the total pressure $P$ is evaluated from the reduced pressure $P^*$ so that $P$ is equal to p0 at the reference position $\vect{x}_0$ (given by xyzp0). With the compressible module, the total pressure is solved directly. Always useful.

◆ pred0

double pred0

reference value for the reduced pressure $P^*$ (see ro0)

It is especially used to initialise the reduced pressure and as a reference value for the outlet boundary conditions. For an optimised precision in the resolution of $P^*$, it is wiser to keep pred0 to 0. With the compressible module, the "pressure" variable appearing in the equations directly represents the total pressure. It is therefore initialized to p0 and not pred0 (see ro0). Always useful, except with the compressible module.

◆ pther

double pther

Thermodynamic pressure for the current time step.

◆ pthera

double pthera

thermodynamic pressure for the previous time step

◆ pthermax

double pthermax

thermodynamic maximum pressure for user clipping, used to model a venting effect

◆ r_pg_cnst

double r_pg_cnst

Perfect Gas specific constant in J/kg/K

This value depends on the gas since it is equal to R/M where R is the universal gas constant and M is the molar mass

◆ r_v_cnst

double r_v_cnst

Water vapor gas constant in J/kg/K

Useful when performing humid air simulations

◆ ro0

double ro0

reference density

Negative value: not initialized. Its value is not used in gas or coal combustion modelling (it will be calculated following the perfect gas law, with $P_0$ and $T_0$). With the compressible module, it is also not used by the code, but it may be (and often is) referenced by the user in user subroutines; it is therefore better to specify its value.

Always useful otherwise, even if a law defining the density is given by the user subroutines cs_user_physical_properties. Indeed, except with the compressible module, CS does not use the total pressure $P$ when solving the Navier-Stokes equation, but a reduced pressure $ P^*=P-\rho_0\vect{g}.(\vect{x}-\vect{x}_0)+ P^*_0-P_0 $, where $\vect{x_0}$ is a reference point (see xyzp0) and $      P^*_0 $ and $ P_0 $ are reference values (see pred0 and p0). Hence, the term $-\grad{P}+\rho\vect{g}$ in the equation is treated as $-\grad{P^*}+(\rho-\rho_0)\vect{g}$. The closer ro0 is to the value of $      \rho$, the more $P^*$ will tend to represent only the dynamic part of the pressure and the faster and more precise its solution will be. Whatever the value of ro0, both $      P$ and $P^*$ appear in the log and the post-processing outputs with the compressible module, the calculation is made directly on the total pressure.

◆ roref

double roref

Initial reference density

◆ rvsra

double rvsra

ratio gas constant h2o / dry air

◆ sleak

double sleak

Leak surface

◆ t0

double t0

reference temperature

Useful for the specific physics gas or coal combustion (initialization of the density), for the electricity modules to initialize the domain temperature and for the compressible module (initializations). It must be given in Kelvin.

◆ viscl0

double viscl0

reference molecular dynamic viscosity

Negative value: not initialized.

Always useful, it is the used value unless the user specifies the viscosity in the subroutine cs_user_physical_properties.

◆ viscv0

double viscv0

reference volume viscosity

Noted $\kappa$ in the equation expressing $\tens{\sigma}$ in the paragraph dedicated to iviscv)

Used by the compressible model, unless the user specifies a variable volume viscosity in the GUI or cs_user_physical_properties.

◆ xmasmr

double xmasmr

molar mass of the perfect gas in $kg/mol$ (if ieos=1)

Always useful.

◆ xyzp0

double xyzp0[3]

coordinates of the reference point $\vect{x}_0$ for the total pressure

  • When there are no Dirichlet conditions for the pressure (closed domain), xyzp0 does not need to be specified (unless the total pressure has a clear physical meaning in the configuration treated).
  • When Dirichlet conditions on the pressure are specified but only through stantard outlet conditions (as it is in most configurations), xyzp0 does not need to be specified by the user, since it will be set to the coordinates of the reference outlet face (i.e. the code will automatically select a reference outlet boundary face and set xyzp0 so that $P$ equals p0 at this face). Nonetheless, if xyzp0 is specified by the user, the calculation will remain correct.
  • When direct Dirichlet conditions are specified by the user (specific value set on specific boundary faces), it is better to specify the corresponding reference point (i.e. specify where the total pressure is p0). This way, the boundary conditions for the reduced pressure will be close to pred0, ensuring an optimal precision in the resolution. If xyzp0 is not specified, the reduced pressure will be shifted, but the calculations will remain correct.
  • With the compressible module, the "pressure" variable appearing in the equations directly represents the total pressure. xyzp0 is therefore not used.

Always useful, except with the compressible module.


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