Buildings.Fluids.Examples

Collection of models that illustrate model use and test models

Package Content

NameDescription
Buildings.Fluids.Examples.BaseClasses BaseClasses Package with base classes for example models
Damper  
Delay  
FixedResistance  
FlowMachine  
MITScalable System model for MIT building
MixingVolume  
OAMixingBoxMinimumDamper  
Resistances Test of multiple resistances
SplitterFixedResistanceDpM  
VAVBoxExponential  


Buildings.Fluids.Examples.Damper

Buildings.Fluids.Examples.Damper

Modelica definition

model Damper 
  
  
 package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
  
  Buildings.Fluids.Actuators.DamperExponential res(
    A=1,
    redeclare package Medium = Medium);
    Modelica.Blocks.Sources.Ramp yRam(
    height=(50 - 20)/90,
    offset=20/90,
    duration=0.3);
    Modelica.Blocks.Sources.Ramp P(
    duration=0.5,
    startTime=0.5,
    height=-10,
    offset=101330);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
        Medium, T=293.15);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
        Medium, T=293.15);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
  Modelica.Blocks.Sources.RealExpression simTim1(y=time);
  Utilities.printer pri(
    samplePeriod=0.05,
    header=" time  y dp m_flow m_small_flow",
    fileName="outputRes.txt",
    nin=5);
  Modelica.Blocks.Sources.RealExpression res_m_flow(y=res.m_flow);
  Modelica.Blocks.Sources.RealExpression y(y=res.y);
  Modelica.Blocks.Sources.RealExpression res_dp(y=res.dp);
  Modelica.Blocks.Sources.RealExpression res_m_small_flow(y=res.m_small_flow);
equation 
  connect(yRam.y, res.y);
  connect(simTim1.y, pri.x[1]);
  connect(y.y, pri.x[2]);
  connect(res_dp.y, pri.x[3]);
  connect(res_m_small_flow.y, pri.x[5]);
  connect(res_m_flow.y, pri.x[4]);
  connect(res.port_b, sin.port);
  connect(res.port_a, sou.port);
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
end Damper;

Buildings.Fluids.Examples.Delay

Buildings.Fluids.Examples.Delay

Parameters

TypeNameDefaultDescription
replaceable package MediumModelica.Media.Air.SimpleAir 

Connectors

TypeNameDescription
replaceable package Medium 

Modelica definition

model Delay 
  
// package Medium = Modelica.Media.Water.ConstantPropertyLiquidWater;
 package Medium = Modelica.Media.Air.SimpleAir;
  
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
    Modelica.Blocks.Sources.Ramp P(
      duration=1,
    height=20,
    offset=101315);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res1(
    from_dp=true,
    m0_flow=5,
    dp0=5,
    redeclare package Medium = Medium);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(
                T=293.15, redeclare package Medium = Medium);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(
                T=283.15, redeclare package Medium = Medium);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res2(
    from_dp=true,
    m0_flow=5,
    dp0=5,
    redeclare package Medium = Medium);
  Buildings.Fluids.Delays.DelayFirstOrder del(         m0_flow=5, redeclare 
      package Medium = Medium,
    T_start=283.15,
    initType=Modelica_Fluid.Types.Init.InitialValues);
equation 
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
  connect(sou.port, res1.port_a);
  connect(res2.port_b, sin.port);
  connect(del.port_b, res2.port_a);
  connect(del.port_a, res1.port_b);
end Delay;

Buildings.Fluids.Examples.FixedResistance

Buildings.Fluids.Examples.FixedResistance

Parameters

TypeNameDefaultDescription
replaceable package MediumModelica.Media.Water.Constan... 

Connectors

TypeNameDescription
replaceable package Medium 

Modelica definition

model FixedResistance 
  
 package Medium = 
        Modelica.Media.Water.ConstantPropertyLiquidWater;
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
    Modelica.Blocks.Sources.Ramp P(
      duration=1,
    height=20,
    offset=101315);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res(
    redeclare package Medium = Medium,
    from_dp=true,
    m0_flow=5,
    dp0=10);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
        Medium, T=293.15);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
        Medium, T=283.15);
equation 
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
  connect(sou.port, res.port_a);
  connect(sin.port, res.port_b);
end FixedResistance;

Buildings.Fluids.Examples.FlowMachine

Buildings.Fluids.Examples.FlowMachine

Modelica definition

model FlowMachine 
 package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
  
    Modelica.Blocks.Sources.Ramp P(
    height=-1500,
    offset=101325,
    duration=1.5);
  Buildings.Fluids.Movers.FlowMachinePolynomial fan(
    D=0.6858,
    a={4.2904,-1.387,4.2293,-3.92920,0.8534},
    b={0.1162,1.5404,-1.4825,0.7664,-0.1971},
    mNorMin_flow=1,
    mNorMax_flow=2,
    redeclare package Medium = Medium);
  Modelica.Blocks.Sources.Constant N(k=22.3333);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
        Medium, T=293.15);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
        Medium, T=293.15);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
  Utilities.printer printer(
    fileName="outputFan.txt",
    nin=6,
    header="time dp dpNorm mNorm m_flow power");
  Modelica.Blocks.Sources.RealExpression fan_mFlow(y=fan.m_flow);
  Modelica.Blocks.Sources.RealExpression simTim2(y=time);
  Modelica.Blocks.Sources.RealExpression fan_dp(y=fan.dp);
  Modelica.Blocks.Sources.RealExpression fan_dpNor(y=fan.pNor);
  Modelica.Blocks.Sources.RealExpression fan_mNor(y=fan.mNor_flow);
  Modelica.Blocks.Sources.RealExpression fan_PSha(y=fan.PSha);
equation 
  
  connect(simTim2.y, printer.x[1]);
  connect(fan_dp.y, printer.x[2]);
  connect(fan_dpNor.y, printer.x[3]);
  connect(fan_mNor.y, printer.x[4]);
  connect(fan_PSha.y, printer.x[6]);
  connect(fan_mFlow.y, printer.x[5]);
  connect(sin.port, fan.port_b);
  connect(sou.port, fan.port_a);
  connect(N.y, fan.N_in);
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
end FlowMachine;

Buildings.Fluids.Examples.MITScalable

System model for MIT building

Buildings.Fluids.Examples.MITScalable

Parameters

TypeNameDefaultDescription
replaceable package MediumBuildings.Media.SimpleAirPTD... 
IntegerNSui1Number of suites
MassFlowRatemOneSuite_flowsui[1].m0Tot_flowNominal mass flow rate of one suite [kg/s]
MassFlowRatemMIT_flowmOneSuite_flow + vav44.m0_flowNominal mass flow rate of MIT system model as in ASHRAE 825-RP [kg/s]
Pressuredp0SuiSup95Pressure drop supply air leg with splitters of one suite (obtained from simulation) [Pa]
Pressuredp0SuiRet233Pressure drop return air leg with splitters of one suite (obtained from simulation) [Pa]
Pressuredp0FanSupMIT1050Pressure increase over supply fan in MIT system model as in ASHRAE 825-RP (obtained from simulation) [Pa]
Pressuredp0FanRetMIT347Pressure increase over supply fan in MIT system model as in ASHRAE 825-RP (obtained from simulation) [Pa]
RealscaM_flow(mMIT_flow + (NSui - 1)*mOne...Scaling factor for mass flow rate with NSui number of suites
RealscaDp0FanSup(dp0FanSupMIT + (NSui - 1)*d...Scaling factor for supply fan pressure lift with NSui number of suites
RealscaDp0FanRet(dp0FanRetMIT + (NSui - 1)*d...Scaling factor for supply fan pressure lift with NSui number of suites

Connectors

TypeNameDescription
replaceable package Medium 

Modelica definition

model MITScalable "System model for MIT building" 
  
  
/* package Medium = Modelica.Media.Air.SimpleAir (
     T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
*/
 package Medium = Buildings.Media.SimpleAirPTDecoupled;
  
  parameter Integer NSui = 1 "Number of suites";
  parameter Modelica.SIunits.MassFlowRate mOneSuite_flow = sui[1].m0Tot_flow 
    "Nominal mass flow rate of one suite";
  parameter Modelica.SIunits.MassFlowRate mMIT_flow = mOneSuite_flow + vav44.m0_flow 
    "Nominal mass flow rate of MIT system model as in ASHRAE 825-RP";
  
  parameter Modelica.SIunits.Pressure dp0SuiSup = 95 
    "Pressure drop supply air leg with splitters of one suite (obtained from simulation)";
  parameter Modelica.SIunits.Pressure dp0SuiRet = 233 
    "Pressure drop return air leg with splitters of one suite (obtained from simulation)";
  parameter Modelica.SIunits.Pressure dp0FanSupMIT = 1050 
    "Pressure increase over supply fan in MIT system model as in ASHRAE 825-RP (obtained from simulation)";
  parameter Modelica.SIunits.Pressure dp0FanRetMIT = 347 
    "Pressure increase over supply fan in MIT system model as in ASHRAE 825-RP (obtained from simulation)";
  
  parameter Real scaM_flow = ( mMIT_flow + (NSui-1) * mOneSuite_flow)  / mMIT_flow 
    "Scaling factor for mass flow rate with NSui number of suites";
  parameter Real scaDp0FanSup = ( dp0FanSupMIT + (NSui-1) * dp0SuiSup) / dp0FanSupMIT 
    "Scaling factor for supply fan pressure lift with NSui number of suites";
  parameter Real scaDp0FanRet = ( dp0FanRetMIT + (NSui-1) * dp0SuiRet)  / dp0FanRetMIT 
    "Scaling factor for supply fan pressure lift with NSui number of suites";
  
  Buildings.Fluids.Actuators.OAMixingBoxMinimumDamper mixBox(
    dp0Out=0.467,
    dp0Rec=0.665,
    dp0Exh=0.164,
    dp0OutMin=0.467,
    AOutMin=scaM_flow*0.38,
    AOut=scaM_flow*1.32,
    AExh=scaM_flow*1.05,
    ARec=scaM_flow*1.05,
    m0OutMin_flow=scaM_flow*0.1*1,
    m0Out_flow=scaM_flow*1,
    m0Rec_flow=scaM_flow*1,
    m0Exh_flow=scaM_flow*1,
    redeclare package Medium = Medium) "mixing box";
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouIn(redeclare package 
      Medium = Medium, T=293.15);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouExh(redeclare package 
      Medium = Medium, T=293.15);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
    Modelica.Blocks.Sources.Constant yMinOA(k=0.5);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouIn2(redeclare package 
      Medium = Medium, T=293.15);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res31(
                                                 dp0=0.546,
    m0_flow=scaM_flow*1,
    dh=sqrt(scaM_flow)*1,
    redeclare package Medium = Medium);
  Buildings.Fluids.Movers.FlowMachinePolynomial fan32(
    D=0.6858,
    a={4.2904,-1.387,4.2293,-3.92920,0.8534},
    b={0.1162,1.5404,-1.4825,0.7664,-0.1971},
    mNorMin_flow=1,
    mNorMax_flow=2,
    scaM_flow=scaM_flow,
    scaDp=scaDp0FanSup,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res33(
    dp0=0.164,
    dh=sqrt(scaM_flow)*1,
    m0_flow=scaM_flow*1,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res57(
                                                 dp0=0.118000,
    m0_flow=scaM_flow*1,
    dh=sqrt(scaM_flow)*1,
    redeclare package Medium = Medium);
  Buildings.Fluids.Movers.FlowMachinePolynomial fan56(
    D=1.13,
    a={4.19370,-1.63370,12.2110,-23.9619,9.81620},
    b={0.619000E-01,3.14170,-5.75510,6.16760,-3.37480},
    mNorMin_flow=0.7,
    mNorMax_flow=1.0,
    scaM_flow=scaM_flow,
    scaDp=scaDp0FanRet,
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.VAVBoxExponential vav44(
    dp0=0.999E2,
    A=0.024,
    m0_flow=0.132*1.2,
    redeclare package Medium = Medium);
  Buildings.Fluids.Components.MixingVolume roo50(redeclare package Medium = Medium,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic,
    V=10*5*2.5,
    nP=5);
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea50(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res1(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.Examples.BaseClasses.Suite[NSui] sui(redeclare each package 
      Medium = Medium);
  Buildings.Fluids.Examples.BaseClasses.ControlSignals y;
equation 
  connect(yMinOA.y, mixBox.yOutMin);
  connect(mixBox.port_Sup, res31.port_a);
  connect(res31.port_b,fan32.port_a);
  connect(fan32.port_b, res33.port_a);
  connect(fan56.port_b, res57.port_b);
  connect(res57.port_a, mixBox.port_Ret);
  connect(bouExh.port, mixBox.port_Exh);
  connect(PAtm.y, bouExh.p_in);
  connect(PAtm.y, bouIn2.p_in);
  connect(PAtm.y, bouIn.p_in);
  connect(bouIn.port, mixBox.port_OutMin);
  connect(bouIn2.port, mixBox.port_Out);
  connect(vav44.port_b,roo50.port[1]);
  connect(PAtm.y, lea50.p);
  connect(lea50.port_b,roo50.port[2]);
  connect(res1.port_a, roo50.port[3]);
  connect(sui[1].port_aRoo, res1.port_b);
  connect(roo50.port[4], sui[NSui].port_aExh);
  connect(vav44.port_a, sui[NSui].port_bSup);
  connect(sui[NSui].port_bRoo, roo50.port[5]);
  connect(res33.port_b, sui[1].port_aSup);
  connect(fan56.port_a, sui[1].port_bExh);
  for i in 1:NSui loop
  connect(PAtm.y, sui[i].p);
  connect(y.yVAV, sui[i].yDam);
  end for;
  for i in 1:NSui-1 loop
  connect(sui[i+1].port_aSup, sui[i].port_bSup);
  connect(sui[i+1].port_bExh, sui[i].port_aExh);
  connect(sui[i+1].port_aRoo, sui[i].port_bRoo);
  end for;
  
  connect(y.ySupFan, fan32.N_in);
  connect(y.yRetFan, fan56.N_in);
  connect(y.yOSA, mixBox.y);
  connect(y.yVAV, vav44.y);
end MITScalable;

Buildings.Fluids.Examples.MixingVolume

Buildings.Fluids.Examples.MixingVolume

Parameters

TypeNameDefaultDescription
replaceable package MediumBuildings.Media.SimpleAirPTD...Medium in the component

Connectors

TypeNameDescription
replaceable package MediumMedium in the component

Modelica definition

model MixingVolume 
  
  
// package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
//    "Medium in the component";
 package Medium = Buildings.Media.SimpleAirPTDecoupled 
    "Medium in the component";
  
    Modelica.Blocks.Sources.Ramp P(
    duration=0.5,
    startTime=0.5,
    height=-10,
    offset=101330);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
        Medium, T=293.15);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
        Medium, T=283.15);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res1(
    redeclare each package Medium = Medium,
    dp0=5,
    from_dp=true,
    m0_flow=2);
  Components.MixingVolume vol(
    redeclare package Medium = Medium,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic,
    nP=2,
    V=0.1);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res2(
    redeclare each package Medium = Medium,
    dp0=5,
    from_dp=true,
    m0_flow=2);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou1(
                                                    redeclare package Medium = 
        Medium, T=293.15);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin1(
                                                    redeclare package Medium = 
        Medium, T=283.15);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res11(
    redeclare each package Medium = Medium,
    dp0=5,
    from_dp=true,
    m0_flow=2);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res12(
    redeclare each package Medium = Medium,
    dp0=5,
    from_dp=true,
    m0_flow=2);
  Modelica_Fluid.Volumes.MixingVolume vol1(
    redeclare package Medium = Medium,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic,
    V=0.1);
equation 
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
  connect(sou.port, res1.port_a);
  connect(sin.port, res2.port_b);
  connect(sou1.port, res11.port_a);
  connect(sin1.port, res12.port_b);
  connect(P.y, sou1.p_in);
  connect(PAtm.y, sin1.p_in);
  connect(res11.port_b, vol1.port_a);
  connect(vol1.port_b, res12.port_a);
  connect(res1.port_b, vol.port[1]);
  connect(res2.port_a, vol.port[2]);
end MixingVolume;

Buildings.Fluids.Examples.OAMixingBoxMinimumDamper

Buildings.Fluids.Examples.OAMixingBoxMinimumDamper

Modelica definition

model OAMixingBoxMinimumDamper 
  
  
 package Medium = Buildings.Media.SimpleAirPTDecoupled 
    "Medium in the component";
  
  Buildings.Fluids.Actuators.OAMixingBoxMinimumDamper mixBox(
    AOutMin=0.3,
    AOut=0.7,
    AExh=1,
    ARec=1,
    m0OutMin_flow=0.3,
    dp0OutMin=20,
    m0Out_flow=1,
    dp0Out=20,
    m0Rec_flow=1,
    dp0Rec=20,
    m0Exh_flow=1,
    dp0Exh=20,
    redeclare package Medium = Medium) "mixing box";
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouIn(redeclare package 
      Medium = Medium, T=273.15 + 10);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouSup(redeclare package 
      Medium = Medium, T=273.15 + 26);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouRet(redeclare package 
      Medium = Medium, T=273.15 + 20);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouExh(redeclare package 
      Medium = Medium, T=273.15 + 10);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
    Modelica.Blocks.Sources.Constant yDamMin(k=0.5);
    Modelica_Fluid.Sources.PrescribedBoundary_pTX bouIn2(redeclare package 
      Medium = Medium, T=273.15 + 10);
    Modelica.Blocks.Sources.Ramp PSup(
    offset=101320,
    height=-10,
    startTime=0,
    duration=20);
    Modelica.Blocks.Sources.Ramp PRet(
    height=10,
    offset=101330,
    duration=20,
    startTime=20);
    Modelica.Blocks.Sources.Ramp yDam(
    duration=20,
    startTime=40,
    height=0.1,
    offset=0.45);
  
equation 
  connect(yDamMin.y, mixBox.yOutMin);
  connect(yDam.y, mixBox.y);
  connect(bouIn.p_in, PAtm.y);
  connect(bouIn2.p_in, PAtm.y);
  connect(bouExh.p_in, PAtm.y);
  connect(PRet.y, bouRet.p_in);
  connect(bouSup.p_in, PSup.y);
  connect(mixBox.port_Sup, bouSup.port);
  connect(mixBox.port_Ret, bouRet.port);
  connect(bouIn.port, mixBox.port_OutMin);
  connect(bouIn2.port, mixBox.port_Out);
  connect(bouExh.port, mixBox.port_Exh);
end OAMixingBoxMinimumDamper;

Buildings.Fluids.Examples.Resistances

Test of multiple resistances

Buildings.Fluids.Examples.Resistances

Parameters

TypeNameDefaultDescription
Pressuredp05Nominal pressure drop for each resistance [Pa]
IntegernRes3Number of resistances

Modelica definition

model Resistances "Test of multiple resistances" 
 package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
  
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
   parameter Modelica.SIunits.Pressure dp0 = 5 
    "Nominal pressure drop for each resistance";
    Modelica.Blocks.Sources.Ramp P(
      duration=1,
    height=2*dp0*nRes,
    offset=101325 - dp0*nRes);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
               Medium, T=273.15 + 20);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
               Medium, T=273.15 + 10);
  parameter Integer nRes( min=2) = 3 "Number of resistances";
    Buildings.Fluids.FixedResistances.FixedResistanceDpM[
                       nRes] res(
    redeclare each package Medium = Medium,
    each dp0=dp0,
    each from_dp = false,
    each m0_flow=2);
equation 
  connect(sou.port, res[1].port_a);
  connect(res[nRes].port_b, sin.port);
  for i in 1:nRes-1 loop
  connect(res[i].port_b, res[i+1].port_a);
  end for;
  connect(PAtm.y, sin.p_in);
  connect(P.y, sou.p_in);
end Resistances;

Buildings.Fluids.Examples.SplitterFixedResistanceDpM

Buildings.Fluids.Examples.SplitterFixedResistanceDpM

Modelica definition

model SplitterFixedResistanceDpM 
  
 package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
  
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl(
    m0_flow={1,2,3},
    dp0={5,10,15},
    dh={1,2,3},
    redeclare package Medium = Medium) "Splitter";
  Modelica_Fluid.Sources.PrescribedBoundary_pTX bou1(redeclare package Medium 
      =        Medium, T=273.15 + 10);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX bou2(redeclare package Medium 
      =        Medium, T=273.15 + 20);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX bou3(redeclare package Medium 
      =        Medium, T=273.15 + 30);
    Modelica.Blocks.Sources.Constant P2(k=101325);
    Modelica.Blocks.Sources.Ramp P1(
    offset=101320,
    height=10,
    duration=0.5);
    Modelica.Blocks.Sources.Ramp P3(
      offset=101320,
      height=10,
    duration=0.5,
    startTime=0.5);
equation 
  connect(P1.y, bou1.p_in);
  connect(bou1.port, spl.port_1);
  connect(spl.port_2, bou2.port);
  connect(P2.y, bou2.p_in);
  connect(bou3.port, spl.port_3);
  connect(bou3.p_in, P3.y);
end SplitterFixedResistanceDpM;

Buildings.Fluids.Examples.VAVBoxExponential

Buildings.Fluids.Examples.VAVBoxExponential

Modelica definition

model VAVBoxExponential 
  
 package Medium = Modelica.Media.Air.SimpleAir(T_min=Modelica.SIunits.Conversions.from_degC(-50)) 
    "Medium in the component";
  
  Buildings.Fluids.Actuators.DamperExponential dam(
    A=1, redeclare package Medium = Medium);
    Modelica.Blocks.Sources.Ramp yRam(
    height=(54 - 16)/90.1,
    offset=16/90,
    duration=0.5);
    Modelica.Blocks.Sources.Ramp P(
      offset=101320,
      height=10,
    duration=0.5,
    startTime=0.5);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou(redeclare package Medium = 
               Medium, T=273.15 + 20);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin(redeclare package Medium = 
               Medium, T=273.15 + 20);
    Modelica.Blocks.Sources.Constant PAtm(k=101325);
  Buildings.Fluids.Actuators.VAVBoxExponential vav(A=1, m0_flow=2, dp0=1,
    redeclare package Medium = Medium);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sou1(redeclare package Medium 
      =                                                                         Medium,
     T=273.15 + 10);
  Modelica_Fluid.Sources.PrescribedBoundary_pTX sin1(redeclare package Medium 
      =                                                                         Medium,
     T=273.15 + 10);
    Buildings.Fluids.FixedResistances.FixedResistanceDpM res(
    from_dp=true,
    m0_flow=2,
    dp0=1,
    redeclare package Medium = Medium);
equation 
  connect(yRam.y,dam. y);
  connect(P.y, sou.p_in);
  connect(PAtm.y, sin.p_in);
  connect(yRam.y, vav.y);
  connect(sou1.port, vav.port_a);
  connect(vav.port_b, sin1.port);
  connect(PAtm.y, sin1.p_in);
  connect(sou.port, res.port_a);
  connect(res.port_b, dam.port_a);
  connect(P.y, sou1.p_in);
  connect(dam.port_b, sin.port);
end VAVBoxExponential;

HTML-documentation generated by Dymola Tue May 27 12:39:39 2008.