packageTemplateHybridTwoPhaseMediumRecord
Extends from AixLib.Media.Refrigerants.Interfaces.PartialHybridTwoPhaseMediumRecord (Base class for two phase medium using a hybrid approach with records).
Information
This package is a template for new refrigerant models using a hybrid approach based on the "Fast_Propane" model developed by Sangi et al. (for detailed information, please checkout AixLib.Media.Refrigerants.Interfaces.PartialHybridTwoPhaseMediumRecord ). For a new refrigerant model just make a copy of this package, remove the "partial" keyword from the package and provide the information that is requested in the comments of the Modelica code. The following information is requested:
- Fluid constants: Provide basic information of the refrigerant and add the reference.
- Basic information: Provide basic information like the refrigerant name and its valid fluid limits in terms of different thermodynamic state properties.
- Base properties: Provide information about the refrigerant's base properties like the relation between specific enthalpy, specific internal energy, pressure and density.
- Helmholtz EoS: Provide the records that contain the fitting coefficients for the Helmholtz equation of state.
- Saturation state properties: Provide the records that contain the fitting coefficients for the thermodynamic state properties at bubble and dew line.
- Fitted state properties: Provide the records that contain the fitting coefficients for thermodynamic state properties that depend on two independent state properties.
- Further thermodynamic properties: Provide formulas for further thermodynamic properties like the thermal conductivity or surface tension.
A refrigerant package inherits from PartialHybridTwoPhaseMediumRecord and provides the equations for the refrigerant. Moreover, the PartialHybridTwoPhaseMedium package inherits from PartialMedium and, therefore, the details of this package are described in Modelica.Media.UsersGuide .
References
Sangi, Roozbeh; Jahangiri, Pooyan; Klasing, Freerk; Streblow, Rita; Müller, Dirk (2014): A Medium Model for the Refrigerant Propane for Fast and Accurate Dynamic Simulations. In: The 10th International Modelica Conference. Lund, Sweden, March 10-12, 2014: Linköping University Electronic Press (Linköping Electronic Conference Proceedings), S. 1271–1275
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Media.Interfaces.PartialTwoPhaseMedium.FluidConstants | refrigerantConstants | Thermodynamic constants for refrigerant | |
| Modelica.Media.Interfaces.Choices.IndependentVariables | ThermoStates (from PartialMedium) | Enumeration type for independent variables | |
| String | mediumName (from PartialMedium) | "unusablePartialMedium" | Name of the medium |
| String[:] | substanceNames (from PartialMedium) | {mediumName} | Names of the mixture substances. Set substanceNames={mediumName} if only one substance. |
| String[:] | extraPropertiesNames (from PartialMedium) | fill("", 0) | Names of the additional (extra) transported properties. Set extraPropertiesNames=fill("",0) if unused |
| Boolean | singleState (from PartialMedium) | = true, if u and d are not a function of pressure | |
| Boolean | reducedX (from PartialMedium) | true | = true, if medium contains the equation sum(X) = 1.0; set reducedX=true, if only one substance (see docu for details) |
| Boolean | fixedX (from PartialMedium) | false | = true, if medium contains the equation X = reference_X |
| AbsolutePressure | reference_p (from PartialMedium) | 101325 | Reference pressure of Medium: default 1 atmosphere |
| Temperature | reference_T (from PartialMedium) | 298.15 | Reference temperature of Medium: default 25 deg Celsius |
| MassFraction[nX] | reference_X (from PartialMedium) | fill(1/nX, nX) | Default mass fractions of medium |
| AbsolutePressure | p_default (from PartialMedium) | 101325 | Default value for pressure of medium (for initialization) |
| Temperature | T_default (from PartialMedium) | Modelica.Units.Conversions.from_degC(20) | Default value for temperature of medium (for initialization) |
| SpecificEnthalpy | h_default (from PartialMedium) | specificEnthalpy_pTX(p_default, T_default, X_default) | Default value for specific enthalpy of medium (for initialization) |
| MassFraction[nX] | X_default (from PartialMedium) | reference_X | Default value for mass fractions of medium (for initialization) |
| ExtraProperty[nC] | C_default (from PartialMedium) | fill(0, nC) | Default value for trace substances of medium (for initialization) |
| Integer | nS (from PartialMedium) | size(substanceNames, 1) | Number of substances |
| Integer | nX (from PartialMedium) | nS | Number of mass fractions |
| Integer | nXi (from PartialMedium) | if fixedX then 0 else if reducedX then nS - 1 else nS | Number of structurally independent mass fractions (see docu for details) |
| Integer | nC (from PartialMedium) | size(extraPropertiesNames, 1) | Number of extra (outside of standard mass-balance) transported properties |
| Real[nC] | C_nominal (from PartialMedium) | 1.0e-6*ones(nC) | Default for the nominal values for the extra properties |
| Boolean | smoothModel (from PartialTwoPhaseMedium) | false | = true, if the (derived) model should not generate state events |
| Boolean | onePhase (from PartialTwoPhaseMedium) | false | = true, if the (derived) model should never be called with two-phase inputs |
| FluidConstants | fluidConstants (from PartialTwoPhaseMedium) | Constant data for the fluid |
Contents
| Name | Description |
|---|---|
| Record that contains fitting coefficients of the Helmholtz EoS | |
| Record that contains fitting coefficients of the state properties at bubble and dew lines | |
| Record that contains fitting coefficients of the state properties calculated with two independent state properties | |
| SmoothTransition | Record that contains ranges to calculate a smooth transition between different regions |
| Calculates dynamic viscosity of refrigerant | |
| Calculates thermal conductivity of refrigerant | |
| Surface tension in two phase region of refrigerant |
Revisions
- June 6, 2017, by Mirko Engelpracht, Christian Vering:
First implementation (see issue 408).