 
This package contains examples for the use of models that can be found in Buildings.Fluid.BaseClasses.FlowModels.
Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).
| Name | Description | 
|---|---|
|  InverseFlowFunction | Test model for flow function and its inverse | 
|  TestFlowFunctions | Test model for flow functions | 
 Buildings.Fluid.BaseClasses.FlowModels.Examples.InverseFlowFunction
Buildings.Fluid.BaseClasses.FlowModels.Examples.InverseFlowFunction
dp and dpCalc need to
be equal up to the solver tolerance.
Extends from Modelica.Icons.Example (Icon for runnable examples).
| Type | Name | Default | Description | 
|---|---|---|---|
| Real | k | 0.5 | |
| MassFlowRate | m_flow_nominal | 1 | Nominal flow rate [kg/s] | 
model InverseFlowFunction 
  "Test model for flow function and its inverse"
  extends Modelica.Icons.Example;
 Modelica.SIunits.MassFlowRate m_flow;
 Modelica.SIunits.Pressure dp(displayUnit="Pa") "Pressure difference";
 Modelica.SIunits.Pressure dpCalc(displayUnit="Pa") 
    "Pressure difference computed by the flow functions";
 Modelica.SIunits.Pressure deltaDp(displayUnit="Pa") 
    "Pressure difference between input and output to the functions";
 Modelica.SIunits.Time dTime= 2;
 parameter Real k = 0.5;
 parameter Modelica.SIunits.MassFlowRate m_flow_nominal = 1 "Nominal flow rate";
equation 
  dp = (time-0.5)/dTime * 20;
  m_flow=FlowModels.basicFlowFunction_dp(dp=dp, k=k, m_flow_turbulent=m_flow_nominal*0.3);
  dpCalc=FlowModels.basicFlowFunction_m_flow(m_flow=m_flow, k=k, m_flow_turbulent=m_flow_nominal*0.3);
  deltaDp = dp - dpCalc;
end InverseFlowFunction;
 
 Buildings.Fluid.BaseClasses.FlowModels.Examples.TestFlowFunctions
Buildings.Fluid.BaseClasses.FlowModels.Examples.TestFlowFunctions
Extends from Modelica.Icons.Example (Icon for runnable examples).
| Type | Name | Default | Description | 
|---|---|---|---|
| Pressure | p2 | 101325 | Boundary condition [Pa] | 
| Boolean | from_dp | true | |
| Real | k | 0.5 | |
| MassFlowRate | m_flow_nominal | 1 | Nominal flow rate [kg/s] | 
model TestFlowFunctions "Test model for flow functions" extends Modelica.Icons.Example; Modelica.SIunits.MassFlowRate m1_flow; Modelica.SIunits.MassFlowRate m2_flow; Modelica.SIunits.Pressure dp1; Modelica.SIunits.Pressure dp2; Modelica.SIunits.Pressure p1_nominal=101325; Modelica.SIunits.Time dTime= 1; Modelica.SIunits.Pressure p1 "Boundary condition"; parameter Modelica.SIunits.Pressure p2 = 101325 "Boundary condition"; parameter Boolean from_dp = true; parameter Real k = 0.5; parameter Modelica.SIunits.MassFlowRate m_flow_nominal = 1 "Nominal flow rate"; equation p1 = p1_nominal + (time-0.5)/dTime * 20; m1_flow = m2_flow; p2-p1 = dp1 + dp2; if from_dp then m1_flow=FlowModels.basicFlowFunction_dp(dp=dp1, k=k, m_flow_turbulent=m_flow_nominal*0.3); m2_flow=FlowModels.basicFlowFunction_dp(dp=dp2, k=k, m_flow_turbulent=m_flow_nominal*0.3); else dp1=FlowModels.basicFlowFunction_m_flow(m_flow=m1_flow, k=k, m_flow_turbulent=m_flow_nominal*0.3); dp2=FlowModels.basicFlowFunction_m_flow(m_flow=m2_flow, k=k, m_flow_turbulent=m_flow_nominal*0.3); end if; assert(abs(dp1-dp2) < 1E-5, "Error in implementation.");end TestFlowFunctions;