This package contains example models
Information
This package contains an example illustrating the use of the model in
Buildings.DHC.Loads.Combined.
Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).
Package Content
| Name | Description | 
|  Connection1PipeExample | Example model that showcases Connection1Pipe_R and Connection1PipePlugFlow_v models | 
|  Connection2PipeExample | Example model that showcases Connection2Pipe_R and Connection2PipePlugFlow_v models | 
Example model that showcases Connection1Pipe_R and Connection1PipePlugFlow_v models
 
Information
Example model of two one-pipe connection models that could be used i.e for building a reservoir network to connect one agent in series.  It uses 
Buildings.DHC.Networks.Connections.Connection1Pipe_R and 
Buildings.DHC.Networks.Connections.Connection1PipePlugFlow_v. The agent, in this example just a pump, will draw water from the distribution pipe and release it to the same pipe.
Extends from Modelica.Icons.Example (Icon for runnable examples).
Parameters
| Type | Name | Default | Description | 
|---|
| Length | dh |  | Hydraulic diameter (assuming a round cross section area) [m] | 
| MassFlowRate | mDis_flow_nominal | 1 | Nominal mass flow rate in the distribution line [kg/s] | 
| MassFlowRate | mCon_flow_nominal | 0.5 | Nominal mass flow rate in the connection line [kg/s] | 
| Length | lDis | 100 | Length of the distribution pipe before the connection [m] | 
Modelica definition
model Connection1PipeExample
  
  
extends Modelica.Icons.Example;
    
package MediumW = 
Buildings.Media.Water ;
  
parameter Modelica.Units.SI.Length dh(
    fixed=false,
    start=0.01,
    min=0.001) ;
  
parameter Modelica.Units.SI.MassFlowRate mDis_flow_nominal = 1
    ;
  
parameter Modelica.Units.SI.MassFlowRate mCon_flow_nominal = 0.5
    ;
  
parameter Modelica.Units.SI.Length lDis = 100
    ;
  
Buildings.DHC.Networks.Connections.Connection1Pipe_R connection1Pipe_R(
    
redeclare package Medium = MediumW,
    mDis_flow_nominal=mDis_flow_nominal,
    mCon_flow_nominal=mCon_flow_nominal,
    lDis=lDis,
    dhDis=dh);
  
Buildings.Fluid.Sources.Boundary_pT bouDisAutoSize(
    
redeclare final package Medium = MediumW,
    p=300000,
    nPorts=1);
  
Modelica.Blocks.Sources.Constant mDis_flow_nominal_exp(k=mDis_flow_nominal);
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumDisPipe_R(
    dp_nominal=100000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumConPipe_R(
    dp_nominal=5000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Buildings.DHC.Networks.Connections.Connection1PipePlugFlow_v
    connection1PipeplugFlow(
    
redeclare package Medium = MediumW,
    mDis_flow_nominal=mDis_flow_nominal,
    mCon_flow_nominal=mCon_flow_nominal,
    dIns=0.001,
    kIns=1,
    lDis=lDis);
  
Buildings.Fluid.Sources.Boundary_pT bouDisPlugFlow(
    
redeclare final package Medium = MediumW,
    p=300000,
    nPorts=1);
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumDisPlugFlow(
    dp_nominal=100000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal = mDis_flow_nominal) ;
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumConPlugFlow(
    dp_nominal=5000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Fluid.FixedResistances.BuriedPipes.PipeGroundCoupling pipeGroundCoupling(
    lPip=lDis,
    rPip=0.04,
    thiGroLay=1.1,
    nSta=5,
    nSeg=1);
  
Modelica.Blocks.Sources.Step mCon_flow_nominal_exp(height=mCon_flow_nominal,
      startTime=1800);
equation 
  connect(pumDisPipe_R.port_b, connection1Pipe_R.port_aDis);
  
connect(bouDisAutoSize.ports[1], connection1Pipe_R.port_aDis);
  
connect(pumDisPipe_R.port_a, connection1Pipe_R.port_bDis);
  
connect(mDis_flow_nominal_exp.y, pumDisPipe_R.m_flow_in);
  
connect(connection1Pipe_R.port_bCon, pumConPipe_R.port_a);
  
connect(pumConPipe_R.port_b, connection1Pipe_R.port_aCon);
  
connect(pumDisPlugFlow.port_b, connection1PipeplugFlow.port_aDis);
  
connect(bouDisPlugFlow.ports[1], connection1PipeplugFlow.port_aDis);
  
connect(pumDisPlugFlow.port_a, connection1PipeplugFlow.port_bDis);
  
connect(mDis_flow_nominal_exp.y, pumDisPlugFlow.m_flow_in);
  
connect(connection1PipeplugFlow.port_bCon, pumConPlugFlow.port_a);
  
connect(pumConPlugFlow.port_b, connection1PipeplugFlow.port_aCon);
  
connect(pipeGroundCoupling.heatPorts[1], connection1PipeplugFlow.heatPortDis);
  
connect(mCon_flow_nominal_exp.y, pumConPipe_R.m_flow_in);
  
connect(pumConPlugFlow.m_flow_in, pumConPipe_R.m_flow_in);
end Connection1PipeExample;
 
Example model that showcases Connection2Pipe_R and Connection2PipePlugFlow_v models
 
Information
Example model of two two-pipe connection models that could be used i.e for building a bi-directional network to connect one agent in series.  It uses 
Buildings.DHC.Networks.Connections.Connection2Pipe_R and 
Buildings.DHC.Networks.Connections.Connection2PipePlugFlow_v. The agent, in this example just a pump, will draw water from the distribution supply pipe and release it in the return pipe.
Extends from Modelica.Icons.Example (Icon for runnable examples).
Parameters
| Type | Name | Default | Description | 
|---|
| Length | dhDis |  | Hydraulic diameter (assuming a round cross section area) [m] | 
| Length | dhRet |  | Hydraulic diameter (assuming a round cross section area) [m] | 
| MassFlowRate | mDis_flow_nominal | 1 | Nominal mass flow rate in the distribution line [kg/s] | 
| MassFlowRate | mCon_flow_nominal | 0.5 | Nominal mass flow rate in the connection line [kg/s] | 
| Length | lDis | 100 | Length of the distribution pipe before the connection [m] | 
Modelica definition
model Connection2PipeExample
  
  
extends Modelica.Icons.Example;
    
package MediumW = 
Buildings.Media.Water ;
  
parameter Modelica.Units.SI.Length dhDis(
    fixed=false,
    start=0.01,
    min=0.001) ;
  
parameter Modelica.Units.SI.Length dhRet(
    fixed=false,
    start=0.01,
    min=0.001) ;
  
parameter Modelica.Units.SI.MassFlowRate mDis_flow_nominal=1
    ;
  
parameter Modelica.Units.SI.MassFlowRate mCon_flow_nominal=0.5
    ;
  
parameter Modelica.Units.SI.Length lDis=100
    ;
  
Buildings.DHC.Networks.Connections.Connection2Pipe_R connection2Pipe_R(
    
redeclare package Medium = MediumW,
    mDis_flow_nominal=mDis_flow_nominal,
    mCon_flow_nominal=mCon_flow_nominal,
    dhDisRet=dhRet,
    lDis=lDis,
    dhDis=dhDis);
  
Buildings.Fluid.Sources.Boundary_pT bouDisPipe_R(
    
redeclare final package Medium = MediumW,
    p=300000,
    nPorts=1);
  
Modelica.Blocks.Sources.Constant mDis_flow_nominal_exp(k=mDis_flow_nominal);
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumDisPipe_R(
    dp_nominal=100000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumConPipe_R(
    dp_nominal=5000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Buildings.DHC.Networks.Connections.Connection2PipePlugFlow_v
    connection2PipeplugFlow(
    
redeclare package Medium = MediumW,
    mDis_flow_nominal=mDis_flow_nominal,
    mCon_flow_nominal=mCon_flow_nominal,
    dIns=0.001,
    kIns=1,
    lDis=lDis);
  
Buildings.Fluid.Sources.Boundary_pT bouDisPlugFlow(
    
redeclare final package Medium = MediumW,
    p=300000,
    nPorts=1);
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumDisPlugFlow(
    dp_nominal=100000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Buildings.DHC.ETS.BaseClasses.Pump_m_flow pumConPlugFlow(
    dp_nominal=5000,
    
redeclare final package Medium = MediumW,
    m_flow_nominal=mDis_flow_nominal) ;
  
Fluid.FixedResistances.BuriedPipes.PipeGroundCoupling pipeGroundCoupling(
    lPip=lDis,
    rPip=0.04,
    thiGroLay=1.1,
    nSta=5,
    nSeg=2);
  
Modelica.Blocks.Sources.Step mCon_flow_nominal_exp(height=mCon_flow_nominal,
      startTime=1800);
  
Fluid.Sensors.MassFlowRate senMasFloDisAutosize(
redeclare final package
      Medium = MediumW) ;
  
Fluid.Sensors.MassFlowRate senMasFloDisPlugFlow(
redeclare final package
      Medium = MediumW) ;
equation 
  connect(mDis_flow_nominal_exp.y, pumDisPipe_R.m_flow_in);
  
connect(mDis_flow_nominal_exp.y, pumDisPlugFlow.m_flow_in);
  
connect(connection2PipeplugFlow.port_bCon, pumConPlugFlow.port_a);
  
connect(pumConPlugFlow.port_b,connection2PipeplugFlow. port_aCon);
  
connect(pipeGroundCoupling.heatPorts[1],connection2PipeplugFlow. heatPortDis);
  
connect(mCon_flow_nominal_exp.y, pumConPipe_R.m_flow_in);
  
connect(pumConPlugFlow.m_flow_in, pumConPipe_R.m_flow_in);
  
connect(pumDisPipe_R.port_a, connection2Pipe_R.port_bDisRet);
  
connect(pumDisPlugFlow.port_a,connection2PipeplugFlow. port_bDisRet);
  
connect(connection2PipeplugFlow.heatPortRet, pipeGroundCoupling.heatPorts[2]);
  
connect(pumDisPlugFlow.port_b, connection2PipeplugFlow.port_aDisSup);
  
connect(pumDisPipe_R.port_b, connection2Pipe_R.port_aDisSup);
  
connect(connection2Pipe_R.port_bCon, pumConPipe_R.port_a);
  
connect(pumConPipe_R.port_b, connection2Pipe_R.port_aCon);
  
connect(connection2Pipe_R.port_bDisSup, senMasFloDisAutosize.port_a);
  
connect(senMasFloDisAutosize.port_b, connection2Pipe_R.port_aDisRet);
  
connect(connection2PipeplugFlow.port_bDisSup, senMasFloDisPlugFlow.port_a);
  
connect(senMasFloDisPlugFlow.port_b, connection2PipeplugFlow.port_aDisRet);
  
connect(bouDisPlugFlow.ports[1], connection2PipeplugFlow.port_aDisSup);
  
connect(bouDisPipe_R.ports[1], connection2Pipe_R.port_aDisSup);
end Connection2PipeExample;