Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation

Collection of validation models

Information

This package contains validation models for the classes in Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.

Note that most validation models contain simple input data which may not be realistic, but for which the correct output can be obtained through an analytic solution. The examples plot various outputs, which have been verified against these solutions. These model outputs are stored as reference data and used for continuous validation whenever models in the library change.

Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).

Package Content

Name Description
Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TDewPoi_TDryBulPhi TDewPoi_TDryBulPhi Model to test the dew point temperature computation
Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TWetBul_TDryBulPhi TWetBul_TDryBulPhi Model to test the wet bulb temperature computation
Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.h_TDryBulPhi h_TDryBulPhi Model to test the specific enthalpy computation

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TDewPoi_TDryBulPhi Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TDewPoi_TDryBulPhi

Model to test the dew point temperature computation

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TDewPoi_TDryBulPhi

Information

This examples is a unit test for the dew point temperature computation Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.TDewPoi_TDryBulPhi.

Modelica definition

model TDewPoi_TDryBulPhi "Model to test the dew point temperature computation" Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.TDewPoi_TDryBulPhi dewBulPhi "Model for dew point temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant p(k=101325) "Pressure"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp phi( duration=1, height=1, offset=0.001) "Relative humidity"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TDryBul(k=273.15 + 29.4) "Dry bulb temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant p2(k=101325) "Pressure"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp TDryBul2( duration=1, height=35, offset=273.15+2.0) "Dry bulb temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant phi2(k=0.4) "Relative humidity"; // ============ Below blocks are from Buildings Library ============ Buildings.Utilities.Psychrometrics.TDewPoi_pW TDewPoi "Dew point temperature"; Buildings.Utilities.Psychrometrics.X_pTphi X_pTphi "Steam mass fraction"; Buildings.Utilities.Psychrometrics.pW_X humRat(use_p_in=false) "Water vapor pressure"; // =================================================================== Buildings.Controls.OBC.CDL.Continuous.Subtract sub "Dew point temperature difference"; Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.TDewPoi_TDryBulPhi dewBulPhi1 "Model for dew point temperature"; Buildings.Utilities.Psychrometrics.TDewPoi_pW TDewPoi1 "Dew point temperature"; Buildings.Utilities.Psychrometrics.pW_X humRat1(use_p_in=false) "Water vapor pressure"; Buildings.Utilities.Psychrometrics.X_pTphi X_pTphi1 "Steam mass fraction"; Buildings.Controls.OBC.CDL.Continuous.Subtract sub1 "Dew point temperature difference"; equation connect(humRat.p_w, TDewPoi.p_w); connect(X_pTphi.X[1], humRat.X_w); connect(TDryBul.y, dewBulPhi.TDryBul); connect(phi.y, dewBulPhi.phi); connect(p.y, dewBulPhi.p); connect(p.y, X_pTphi.p_in); connect(TDryBul.y, X_pTphi.T); connect(phi.y, X_pTphi.phi); connect(TDewPoi.T, sub.u2); connect(dewBulPhi.TDewPoi, sub.u1); connect(TDryBul2.y, dewBulPhi1.TDryBul); connect(TDryBul2.y, X_pTphi1.T); connect(p2.y, X_pTphi1.p_in); connect(p2.y, dewBulPhi1.p); connect(phi2.y, dewBulPhi1.phi); connect(phi2.y, X_pTphi1.phi); connect(X_pTphi1.X[1], humRat1.X_w); connect(humRat1.p_w, TDewPoi1.p_w); connect(dewBulPhi1.TDewPoi, sub1.u1); connect(TDewPoi1.T, sub1.u2); end TDewPoi_TDryBulPhi;

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TWetBul_TDryBulPhi Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TWetBul_TDryBulPhi

Model to test the wet bulb temperature computation

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.TWetBul_TDryBulPhi

Information

This examples is a unit test for the dew point temperature computation Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.TWetBul_TDryBulPhi.

The model contains an assert that validates the model based on a single operating point from Example 17.1 in Ananthanarayanan (2013).

References

Ananthanarayanan, P. N. Basic refrigeration and air conditioning. Tata McGraw-Hill Education, 2013.

Modelica definition

model TWetBul_TDryBulPhi "Model to test the wet bulb temperature computation" package Medium = Buildings.Media.Air "Medium model"; Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.TWetBul_TDryBulPhi wetBulPhi "Model for wet bulb temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant p(k=101325) "Pressure"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp phi( duration=1, height=0.95, offset=0.05) "Relative humidity"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TDryBul(k=273.15 + 29.4) "Dry bulb temperature"; // ============ Below blocks are from Buildings Library ============ Buildings.Utilities.Psychrometrics.TWetBul_TDryBulPhi wetBulPhi_BuiLib( redeclare package Medium = Medium, approximateWetBulb=true) "Model for wet bulb temperature"; Buildings.Utilities.Psychrometrics.TWetBul_TDryBulXi wetBulXi( redeclare package Medium = Medium, approximateWetBulb=true) "Model for wet bulb temperature using Xi as an input, used to verify consistency with wetBulPhi"; Buildings.Utilities.Psychrometrics.X_pTphi x_pTphi "Computes mass fraction"; // =================================================================== Buildings.Controls.OBC.CDL.Continuous.Subtract sub "Wet bulb temperature difference"; Buildings.Controls.OBC.CDL.Continuous.Subtract sub1 "Wet bulb temperature difference"; equation connect(x_pTphi.X[1], wetBulXi.Xi[1]); connect(TDryBul.y, wetBulPhi.TDryBul); connect(TDryBul.y, wetBulPhi_BuiLib.TDryBul); connect(TDryBul.y, wetBulXi.TDryBul); connect(p.y, x_pTphi.p_in); connect(phi.y, x_pTphi.phi); connect(p.y, wetBulXi.p); connect(phi.y, wetBulPhi_BuiLib.phi); connect(phi.y, wetBulPhi.phi); connect(p.y, wetBulPhi.p); connect(p.y, wetBulPhi_BuiLib.p); connect(TDryBul.y, x_pTphi.T); connect(wetBulPhi_BuiLib.TWetBul, sub.u2); connect(wetBulXi.TWetBul, sub1.u2); connect(wetBulPhi.TWetBul, sub.u1); connect(wetBulPhi.TWetBul, sub1.u1); end TWetBul_TDryBulPhi;

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.h_TDryBulPhi Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.h_TDryBulPhi

Model to test the specific enthalpy computation

Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.Validation.h_TDryBulPhi

Information

This examples is a unit test for the specific enthalpy computation Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.h_TDryBulPhi.

Modelica definition

model h_TDryBulPhi "Model to test the specific enthalpy computation" Buildings.Obsolete.Controls.OBC.CDL.Psychrometrics.h_TDryBulPhi hBulPhi "Model for specific enthalpy computation"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant p(k=101325) "Pressure"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp phi( duration=1, height=1, offset=0.001) "Relative humidity"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TDryBul(k=273.15 + 29.4) "Dry bulb temperature"; // ============ Below blocks are from Buildings Library ============ // =================================================================== equation connect(TDryBul.y, hBulPhi.TDryBul); connect(phi.y, hBulPhi.phi); connect(p.y, hBulPhi.p); end h_TDryBulPhi;