kappa_const
.
If kappa_const=0
, then the density is constant. Otherwise,
the density is
rho(p) = rho(p0) * ( 1 + kappa_const * (p-p0))
Extends from Modelica.Media.Interfaces.PartialPureSubstance (base class for pure substances of one chemical substance).
Name | Description |
---|---|
cp_const | Constant specific heat capacity at constant pressure |
cv_const | Constant specific heat capacity at constant volume |
d_const | Constant density |
eta_const | Constant dynamic viscosity |
lambda_const | Constant thermal conductivity |
a_const | Constant velocity of sound |
T_min | Minimum temperature valid for medium model |
T_max | Maximum temperature valid for medium model |
T0=reference_T | Zero enthalpy temperature |
MM_const | Molar mass |
fluidConstants | fluid constants |
![]() | Thermodynamic state |
kappa_const=0 | Compressibility factor at constant temperature |
p0=3E5 | Reference pressure for compressibility and default medium pressure |
![]() | Base properties |
![]() | Return thermodynamic state from p, T, and X or Xi |
![]() | Return thermodynamic state from p, h, and X or Xi |
![]() | Return thermodynamic state from p, s, and X or Xi |
![]() | Return thermodynamic state from d, T, and X or Xi |
![]() | Return thermodynamic state so that it smoothly approximates: if x > 0 then state_a else state_b |
![]() | Return dynamic viscosity |
![]() | Return thermal conductivity |
![]() | Return pressure |
![]() | Return temperature |
![]() | Return density |
![]() | Return specific enthalpy |
![]() | Return specific heat capacity at constant pressure |
![]() | Return specific heat capacity at constant volume |
![]() | Return isentropic exponent |
![]() | Return velocity of sound |
![]() | Return specific enthalpy from p, T, and X or Xi |
![]() | Return temperature from p, h, and X or Xi |
![]() | Return density from p, h, and X or Xi |
Inherited | |
![]() | Return thermodynamic state from p and T |
![]() | Return thermodynamic state from p and h |
![]() | Return thermodynamic state from p and s |
![]() | Return thermodynamic state from d and T |
![]() | Return density from p and h |
![]() | Return temperature from p and h |
![]() | Return pressure from d and T |
![]() | Return specific enthalpy from d and T |
![]() | Return specific enthalpy from p and s |
![]() | Return temperature from p and s |
![]() | Return density from p and s |
![]() | Return specific enthalpy from p and T |
![]() | Return density from p and T |
ThermoStates | Enumeration type for independent variables |
mediumName="unusablePartialMedium" | Name of the medium |
substanceNames={mediumName} | Names of the mixture substances. Set substanceNames={mediumName} if only one substance. |
extraPropertiesNames=fill("", 0) | Names of the additional (extra) transported properties. Set extraPropertiesNames=fill("",0) if unused |
singleState | = true, if u and d are not a function of pressure |
reducedX=true | = true if medium contains the equation sum(X) = 1.0; set reducedX=true if only one substance (see docu for details) |
fixedX=false | = true if medium contains the equation X = reference_X |
reference_p=101325 | Reference pressure of Medium: default 1 atmosphere |
reference_T=298.15 | Reference temperature of Medium: default 25 deg Celsius |
reference_X=fill(1/nX, nX) | Default mass fractions of medium |
p_default=101325 | Default value for pressure of medium (for initialization) |
T_default=Modelica.SIunits.Conversions.from_degC(20) | Default value for temperature of medium (for initialization) |
h_default=specificEnthalpy_pTX(p_default, T_default, X_default) | Default value for specific enthalpy of medium (for initialization) |
X_default=reference_X | Default value for mass fractions of medium (for initialization) |
nS=size(substanceNames, 1) | Number of substances |
nX=nS | Number of mass fractions |
nXi=if fixedX then 0 else if reducedX then nS - 1 else nS | Number of structurally independent mass fractions (see docu for details) |
nC=size(extraPropertiesNames, 1) | Number of extra (outside of standard mass-balance) transported properties |
![]() | critical, triple, molecular and other standard data of fluid |
![]() | Return the Prandtl number |
![]() | Return specific internal energy |
![]() | Return specific entropy |
![]() | Return specific Gibbs energy |
![]() | Return specific Helmholtz energy |
![]() | alias for deprecated name |
![]() | alias for deprecated name |
![]() | Return isentropic enthalpy |
![]() | Return overall the isobaric expansion coefficient beta |
![]() | alias for isobaricExpansionCoefficient for user convenience |
![]() | Return overall the isothermal compressibility factor |
![]() | alias of isothermalCompressibility for user convenience |
![]() | Return density derivative wrt pressure at const specific enthalpy |
![]() | Return density derivative wrt specific enthalpy at constant pressure |
![]() | Return density derivative wrt pressure at const temperature |
![]() | Return density derivative wrt temperature at constant pressure |
![]() | Return density derivative wrt mass fraction |
![]() | Return the molar mass of the medium |
![]() | Return density from p, T, and X or Xi |
![]() | Return temperature from p,s, and X or Xi |
![]() | Return density from p, s, and X or Xi |
![]() | Return specific enthalpy from p, s, and X or Xi |
AbsolutePressure | Type for absolute pressure with medium specific attributes |
Density | Type for density with medium specific attributes |
DynamicViscosity | Type for dynamic viscosity with medium specific attributes |
EnthalpyFlowRate | Type for enthalpy flow rate with medium specific attributes |
MassFlowRate | Type for mass flow rate with medium specific attributes |
MassFraction | Type for mass fraction with medium specific attributes |
MoleFraction | Type for mole fraction with medium specific attributes |
MolarMass | Type for molar mass with medium specific attributes |
MolarVolume | Type for molar volume with medium specific attributes |
IsentropicExponent | Type for isentropic exponent with medium specific attributes |
SpecificEnergy | Type for specific energy with medium specific attributes |
SpecificInternalEnergy | Type for specific internal energy with medium specific attributes |
SpecificEnthalpy | Type for specific enthalpy with medium specific attributes |
SpecificEntropy | Type for specific entropy with medium specific attributes |
SpecificHeatCapacity | Type for specific heat capacity with medium specific attributes |
SurfaceTension | Type for surface tension with medium specific attributes |
Temperature | Type for temperature with medium specific attributes |
ThermalConductivity | Type for thermal conductivity with medium specific attributes |
PrandtlNumber | Type for Prandtl number with medium specific attributes |
VelocityOfSound | Type for velocity of sound with medium specific attributes |
ExtraProperty | Type for unspecified, mass-specific property transported by flow |
CumulativeExtraProperty | Type for conserved integral of unspecified, mass specific property |
ExtraPropertyFlowRate | Type for flow rate of unspecified, mass-specific property |
IsobaricExpansionCoefficient | Type for isobaric expansion coefficient with medium specific attributes |
DipoleMoment | Type for dipole moment with medium specific attributes |
DerDensityByPressure | Type for partial derivative of density with resect to pressure with medium specific attributes |
DerDensityByEnthalpy | Type for partial derivative of density with resect to enthalpy with medium specific attributes |
DerEnthalpyByPressure | Type for partial derivative of enthalpy with resect to pressure with medium specific attributes |
DerDensityByTemperature | Type for partial derivative of density with resect to temperature with medium specific attributes |
![]() | Types, constants to define menu choices |
constant SpecificHeatCapacity cp_const "Constant specific heat capacity at constant pressure";
constant SpecificHeatCapacity cv_const "Constant specific heat capacity at constant volume";
constant Density d_const "Constant density";
constant DynamicViscosity eta_const "Constant dynamic viscosity";
constant ThermalConductivity lambda_const "Constant thermal conductivity";
constant VelocityOfSound a_const "Constant velocity of sound";
constant Temperature T_min "Minimum temperature valid for medium model";
constant Temperature T_max "Maximum temperature valid for medium model";
constant Temperature T0=reference_T "Zero enthalpy temperature";
constant MolarMass MM_const "Molar mass";
constant FluidConstants[nS] fluidConstants "fluid constants";
constant Real kappa_const(unit="1/Pa") = 0 "Compressibility factor at constant temperature";
constant Modelica.SIunits.AbsolutePressure p0 = 3E5 "Reference pressure for compressibility and default medium pressure";
redeclare record extends ThermodynamicState "Thermodynamic state" AbsolutePressure p "Absolute pressure of medium"; Temperature T "Temperature of medium"; end ThermodynamicState;
This is the most simple incompressible medium model, where specific enthalpy h and specific internal energy u are only a function of temperature T and all other provided medium quantities are assumed to be constant.
Type | Name | Default | Description |
---|---|---|---|
Advanced | |||
Boolean | preferredMediumStates | false | = true if StateSelect.prefer shall be used for the independent property variables of the medium |
redeclare replaceable model extends BaseProperties( T(stateSelect=if preferredMediumStates then StateSelect.prefer else StateSelect.default), p(stateSelect=if preferredMediumStates then StateSelect.prefer else StateSelect.default)) "Base properties" equation assert(T >= T_min and T <= T_max, " Temperature T (= " + String(T) + " K) is not in the allowed range (" + String(T_min) + " K <= T <= " + String(T_max) + " K) required from medium model \"" + mediumName + "\". "); // h = cp_const*(T-T0); h = specificEnthalpy_pTX(p,T,X); u = cv_const*(T-T0); // original equation d = d_const; d = if (kappa_const > 1E-20) then d_const * (1+kappa_const*(p-p0)) else d_const; // d = d_const * (1+kT*(T-T0)/T0); "this gives large coupled equations" R = 0; MM = MM_const; state.T = T; state.p = p;end BaseProperties;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
Temperature | T | Temperature [K] | |
MassFraction | X[:] | reference_X | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
ThermodynamicState | state | thermodynamic state record |
redeclare function setState_pTX "Return thermodynamic state from p, T, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input Temperature T "Temperature"; input MassFraction X[:]=reference_X "Mass fractions"; output ThermodynamicState state "thermodynamic state record"; algorithm state := ThermodynamicState(p=p,T=T);end setState_pTX;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
SpecificEnthalpy | h | Specific enthalpy [J/kg] | |
MassFraction | X[:] | reference_X | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
ThermodynamicState | state | thermodynamic state record |
redeclare function setState_phX "Return thermodynamic state from p, h, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input SpecificEnthalpy h "Specific enthalpy"; input MassFraction X[:]=reference_X "Mass fractions"; output ThermodynamicState state "thermodynamic state record"; algorithm state := ThermodynamicState(p=p,T=T0+h/cp_const);end setState_phX;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
SpecificEntropy | s | Specific entropy [J/(kg.K)] | |
MassFraction | X[:] | reference_X | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
ThermodynamicState | state | thermodynamic state record |
redeclare replaceable function setState_psX "Return thermodynamic state from p, s, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input SpecificEntropy s "Specific entropy"; input MassFraction X[:]=reference_X "Mass fractions"; output ThermodynamicState state "thermodynamic state record"; algorithm state := ThermodynamicState(p=p,T=Modelica.Math.exp(s/cp_const + Modelica.Math.log(T0))) "here the incompressible limit is used, with cp as heat capacity";end setState_psX;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
Density | d | density [kg/m3] | |
Temperature | T | Temperature [K] | |
MassFraction | X[:] | reference_X | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
ThermodynamicState | state | thermodynamic state record |
redeclare function setState_dTX "Return thermodynamic state from d, T, and X or Xi" extends Modelica.Icons.Function; input Density d "density"; input Temperature T "Temperature"; input MassFraction X[:]=reference_X "Mass fractions"; output ThermodynamicState state "thermodynamic state record"; algorithm assert(false,"pressure can not be computed from temperature and density for an incompressible fluid!");end setState_dTX;
Type | Name | Default | Description |
---|---|---|---|
Real | x | m_flow or dp | |
ThermodynamicState | state_a | Thermodynamic state if x > 0 | |
ThermodynamicState | state_b | Thermodynamic state if x < 0 | |
Real | x_small | Smooth transition in the region -x_small < x < x_small |
Type | Name | Description |
---|---|---|
ThermodynamicState | state | Smooth thermodynamic state for all x (continuous and differentiable) |
redeclare function extends setSmoothState "Return thermodynamic state so that it smoothly approximates: if x > 0 then state_a else state_b" algorithm state := ThermodynamicState(p=Modelica.Media.Common.smoothStep( x, state_a.p, state_b.p, x_small), T=Modelica.Media.Common.smoothStep( x, state_a.T, state_b.T, x_small)); end setSmoothState;
Extends from (Return dynamic viscosity).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
DynamicViscosity | eta | Dynamic viscosity [Pa.s] |
redeclare function extends dynamicViscosity "Return dynamic viscosity" algorithm eta := eta_const;end dynamicViscosity;
Extends from (Return thermal conductivity).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
ThermalConductivity | lambda | Thermal conductivity [W/(m.K)] |
redeclare function extends thermalConductivity "Return thermal conductivity" algorithm lambda := lambda_const;end thermalConductivity;
Extends from (Return pressure).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
AbsolutePressure | p | Pressure [Pa] |
redeclare function extends pressure "Return pressure" algorithm p := state.p;end pressure;
Extends from (Return temperature).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
Temperature | T | Temperature [K] |
redeclare function extends temperature "Return temperature" algorithm T := state.T;end temperature;
Extends from (Return density).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
Density | d | Density [kg/m3] |
redeclare function extends density "Return density" algorithm d := d_const;end density;
Extends from (Return specific enthalpy).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
SpecificEnthalpy | h | Specific enthalpy [J/kg] |
redeclare function extends specificEnthalpy "Return specific enthalpy" algorithm h := cp_const*(state.T-T0);end specificEnthalpy;
Extends from (Return specific heat capacity at constant pressure).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
SpecificHeatCapacity | cp | Specific heat capacity at constant pressure [J/(kg.K)] |
redeclare function extends specificHeatCapacityCp "Return specific heat capacity at constant pressure" algorithm cp := cp_const;end specificHeatCapacityCp;
Extends from (Return specific heat capacity at constant volume).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
SpecificHeatCapacity | cv | Specific heat capacity at constant volume [J/(kg.K)] |
redeclare function extends specificHeatCapacityCv "Return specific heat capacity at constant volume" algorithm cv := cv_const;end specificHeatCapacityCv;
Extends from (Return isentropic exponent).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
IsentropicExponent | gamma | Isentropic exponent [1] |
redeclare function extends isentropicExponent "Return isentropic exponent" algorithm gamma := cp_const/cv_const;end isentropicExponent;
Extends from (Return velocity of sound).
Type | Name | Default | Description |
---|---|---|---|
ThermodynamicState | state | thermodynamic state record |
Type | Name | Description |
---|---|---|
VelocityOfSound | a | Velocity of sound [m/s] |
redeclare function extends velocityOfSound "Return velocity of sound " algorithm a := a_const;end velocityOfSound;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
Temperature | T | Temperature [K] | |
MassFraction | X[nX] | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
SpecificEnthalpy | h | Specific enthalpy [J/kg] |
redeclare function specificEnthalpy_pTX "Return specific enthalpy from p, T, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input Temperature T "Temperature"; input MassFraction X[nX] "Mass fractions"; output SpecificEnthalpy h "Specific enthalpy"; algorithm h := cp_const*(T-T0);end specificEnthalpy_pTX;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
SpecificEnthalpy | h | Specific enthalpy [J/kg] | |
MassFraction | X[nX] | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
Temperature | T | Temperature [K] |
redeclare function temperature_phX "Return temperature from p, h, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input SpecificEnthalpy h "Specific enthalpy"; input MassFraction X[nX] "Mass fractions"; output Temperature T "Temperature"; algorithm T := T0 + h/cp_const;end temperature_phX;
Extends from Modelica.Icons.Function (Icon for a function).
Type | Name | Default | Description |
---|---|---|---|
AbsolutePressure | p | Pressure [Pa] | |
SpecificEnthalpy | h | Specific enthalpy [J/kg] | |
MassFraction | X[nX] | Mass fractions [kg/kg] |
Type | Name | Description |
---|---|---|
Density | d | density [kg/m3] |
redeclare function density_phX "Return density from p, h, and X or Xi" extends Modelica.Icons.Function; input AbsolutePressure p "Pressure"; input SpecificEnthalpy h "Specific enthalpy"; input MassFraction X[nX] "Mass fractions"; output Density d "density"; algorithm d := density(setState_phX(p,h,X));end density_phX;