This package contains examples for the use of models that can be found in Buildings.RoomsBeta.Constructions.
Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).
| Name | Description | 
|---|---|
| Test model for an exterior wall with a window | |
| Test model for an exterior wall with two windows, one having a shade, the other not | |
| Test model for an exterior wall without a window | 
Buildings.RoomsBeta.Constructions.Examples.ExteriorWallWithWindow
Extends from Modelica.Icons.Example (Icon for runnable examples).
| Type | Name | Default | Description | 
|---|---|---|---|
| Area | A[:] | {3*10} | Heat transfer area of wall and window [m2] | 
| Area | AWin[:] | A - {2*3} | Heat transfer area of frame and window [m2] | 
| Real | fFra[:] | {0.1} | Fraction of window frame divided by total window area | 
| Boolean | linearizeRadiation | false | Set to true to linearize emissive power | 
model ExteriorWallWithWindow 
  "Test model for an exterior wall with a window"
  import Buildings;
  extends Modelica.Icons.Example;
  parameter Modelica.SIunits.Area A[:]={3*10} 
    "Heat transfer area of wall and window";
  parameter Modelica.SIunits.Area AWin[:]=A-{2*3} 
    "Heat transfer area of frame and window";
  parameter Real fFra[:]={0.1} 
    "Fraction of window frame divided by total window area";
  parameter Boolean linearizeRadiation = false 
    "Set to true to linearize emissive power";
  HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys(
    UFra=2,
    shade=Buildings.HeatTransfer.Data.Shades.Gray(),
    haveExteriorShade=false,
    haveInteriorShade=false) "Record for glazing system"; 
  ConstructionWithWindow conExt[1](
    layers={extConMat},
    glaSys={glaSys},
    linearizeRadiation = {linearizeRadiation},
    A=A,
    AWin=AWin,
    fFra=fFra,
    til={1.5707963267949}) "Construction of an exterior wall without a window";
  Buildings.RoomsBeta.BaseClasses.ExteriorBoundaryConditionsWithWindow
    bouConExt(
    nCon=1,
    linearizeRadiation = linearizeRadiation,
    fFra=fFra,
    absIR={extConMat.absIR_a},
    azi={0},
    AOpa=A - AWin,
    absSol={extConMat.absSol_a},
    AWin=AWin,
    absSolFra={glaSys.absSolFra},
    absIRSha_air={glaSys.shade.absIR_a},
    absIRSha_glass={glaSys.shade.absIR_b},
    tauIRSha_air={glaSys.shade.tauIR_a},
    tauIRSha_glass={glaSys.shade.tauIR_b},
    haveExteriorShade={glaSys.haveExteriorShade},
    haveInteriorShade={glaSys.haveInteriorShade},
    lat=0.73268921998722,
    conMod=Buildings.HeatTransfer.Types.InteriorConvection.Fixed,
    til={Buildings.HeatTransfer.Types.Tilt.Wall}) 
    "Exterior boundary conditions for constructions without a window";
  Buildings.HeatTransfer.Sources.PrescribedTemperature prescribedTemperature;
  Buildings.HeatTransfer.Convection.Interior con[
                              1](A=A - AWin, til={Buildings.HeatTransfer.Types.Tilt.Wall}) 
    "Model for heat convection";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol(m=1) 
    "Thermal collector to link a vector of models to a single model";
  BoundaryConditions.WeatherData.ReaderTMY3 weaDat(filNam=
        "Resources/weatherdata/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.mos");
  Modelica.Blocks.Sources.Constant TRoo(k=273.15 + 20) "Room air temperature";
  HeatTransfer.Data.OpaqueConstructions.Insulation100Concrete200 extConMat 
    "Record for material layers"; 
  HeatTransfer.WindowsBeta.InteriorHeatTransfer intCon[1](
    A=AWin,
    fFra=fFra,
    absIRSha_air={glaSys.shade.absIR_a},
    absIRSha_glass={glaSys.shade.absIR_b},
    tauIRSha_air={glaSys.shade.tauIR_a},
    tauIRSha_glass={glaSys.shade.tauIR_b},
    haveExteriorShade={glaSys.haveExteriorShade},
    haveInteriorShade={glaSys.haveInteriorShade},
    each linearizeRadiation = linearizeRadiation) 
    "Model for interior convection";
  Modelica.Blocks.Sources.Constant uSha(k=0) "Shading control signal";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol1(
                                                                   m=1) 
    "Thermal collector to link a vector of models to a single model";
  HeatTransfer.Radiosity.IndoorRadiosity indRad(A=AWin[1], linearize = linearizeRadiation) 
    "Model for indoor radiosity";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol2(
                                                                   m=1) 
    "Thermal collector to link a vector of models to a single model";
  Modelica.Blocks.Sources.Constant QAbs[1,glaSys.nLay](each k=0) 
    "Solar radiation absorbed by glass";
  Modelica.Blocks.Sources.Constant QAbsSha(each k=0) 
    "Solar radiation absorbed by interior shade";
  Modelica.Blocks.Sources.Constant QTra(each k=0) 
    "Solar radiation absorbed by exterior shade"; 
equation 
  connect(prescribedTemperature.port, theCol.port_b);
  connect(theCol.port_a, con.fluid);
  connect(con.solid, conExt.opa_a);
  connect(conExt.opa_b, bouConExt.opa_a);
  connect(weaDat.weaBus, bouConExt.weaBus);
  connect(TRoo.y, prescribedTemperature.T);
  connect(theCol1.port_b, prescribedTemperature.port);
  connect(intCon[1].uSha, uSha.y);
  connect(theCol1.port_a, intCon.air);
  connect(intCon.glaUns, conExt.glaUns_a);
  connect(intCon.glaSha, conExt.glaSha_a);
  connect(intCon.JOutUns, conExt.JInUns_a);
  connect(intCon.JInUns, conExt.JOutUns_a);
  connect(intCon.JOutSha, conExt.JInSha_a);
  connect(intCon.JInSha, conExt.JOutSha_a);
  connect(conExt.JOutUns_b, bouConExt.JInUns);
  connect(bouConExt.JOutUns, conExt.JInUns_b);
  connect(bouConExt.glaUns, conExt.glaUns_b);
  connect(bouConExt.glaSha, conExt.glaSha_b);
  connect(conExt.JOutSha_b, bouConExt.JInSha);
  connect(conExt.JInSha_b, bouConExt.JOutSha);
  connect(conExt.fra_b, bouConExt.fra);
  connect(indRad.JOut, intCon[1].JInRoo);
  connect(indRad.JIn, intCon[1].JOutRoo);
  connect(indRad.heatPort, prescribedTemperature.port);
  connect(intCon.frame, theCol2.port_a);
  connect(theCol2.port_b, indRad.heatPort);
  connect(uSha.y, bouConExt.uSha[1]);
  connect(uSha.y, conExt[1].uSha);
  connect(QAbs.y, conExt.QAbsUns_flow);
  connect(QAbs.y, conExt.QAbsSha_flow);
  connect(QAbsSha.y, intCon[1].QAbs_flow);
  connect(QTra.y, bouConExt.QAbsSolSha_flow[1]); 
end ExteriorWallWithWindow;
 
Buildings.RoomsBeta.Constructions.Examples.ExteriorWallTwoWindows
Extends from Modelica.Icons.Example (Icon for runnable examples).
| Type | Name | Default | Description | 
|---|---|---|---|
| Integer | nCon | 2 | Number of constructions | 
| Area | A[:] | {3*10,3*10} | Heat transfer area of wall and window [m2] | 
| Area | AWin[:] | A - {2*3,1*3} | Heat transfer area of frame and window [m2] | 
| Real | fFra[:] | {0.1,0.1} | Fraction of window frame divided by total window area | 
| Boolean | linearizeRadiation | false | Set to true to linearize emissive power | 
model ExteriorWallTwoWindows 
  "Test model for an exterior wall with two windows, one having a shade, the other not"
  import Buildings;
  extends Modelica.Icons.Example;
  parameter Integer nCon = 2 "Number of constructions";
  parameter Modelica.SIunits.Area A[:]={3*10, 3*10} 
    "Heat transfer area of wall and window";
  parameter Modelica.SIunits.Area AWin[:]=A-{2*3, 1*3} 
    "Heat transfer area of frame and window";
  parameter Real fFra[:]={0.1, 0.1} 
    "Fraction of window frame divided by total window area";
  parameter Boolean linearizeRadiation = false 
    "Set to true to linearize emissive power";
  HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys1(
    UFra=2,
    shade=Buildings.HeatTransfer.Data.Shades.Gray(),
    haveInteriorShade=false,
    haveExteriorShade=false) "Record for glazing system";
  HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys2(
    UFra=2,
    shade=Buildings.HeatTransfer.Data.Shades.Gray(),
    haveInteriorShade=false,
    haveExteriorShade=false) "Record for glazing system";
  ConstructionWithWindow conExt[nCon](
    layers={extConMat, extConMat},
    glaSys={glaSys1, glaSys2},
    linearizeRadiation = {linearizeRadiation, linearizeRadiation},
    A=A,
    AWin=AWin,
    fFra=fFra,
    til={Buildings.HeatTransfer.Types.Tilt.Wall,Buildings.HeatTransfer.Types.Tilt.Wall}) 
    "Construction of an exterior wall without a window";
  Buildings.RoomsBeta.BaseClasses.ExteriorBoundaryConditionsWithWindow
    bouConExt(
    nCon=2,
    linearizeRadiation = false,
    fFra=fFra,
    absIR={extConMat.absIR_a, extConMat.absIR_a},
    AOpa=A - AWin,
    absSol={extConMat.absSol_a, extConMat.absSol_a},
    AWin=AWin,
    absSolFra={glaSys1.absSolFra, glaSys2.absSolFra},
    absIRSha_air={glaSys1.shade.absIR_a, glaSys2.shade.absIR_a},
    absIRSha_glass={glaSys1.shade.absIR_b, glaSys2.shade.absIR_b},
    tauIRSha_air={glaSys1.shade.tauIR_a, glaSys2.shade.tauIR_a},
    tauIRSha_glass={glaSys1.shade.tauIR_b, glaSys2.shade.tauIR_b},
    haveExteriorShade={glaSys1.haveExteriorShade, glaSys2.haveExteriorShade},
    haveInteriorShade={glaSys1.haveInteriorShade, glaSys2.haveInteriorShade},
    lat=0.73268921998722,
    conMod=Buildings.HeatTransfer.Types.InteriorConvection.Fixed,
    til={Buildings.HeatTransfer.Types.Tilt.Wall,Buildings.HeatTransfer.Types.Tilt.Wall},
    azi={0,0}) 
    "Exterior boundary conditions for constructions without a window";
  Buildings.HeatTransfer.Sources.PrescribedTemperature prescribedTemperature;
  Buildings.HeatTransfer.Convection.Interior con[
                              nCon](A=A - AWin,
    til={Buildings.HeatTransfer.Types.Tilt.Wall,
         Buildings.HeatTransfer.Types.Tilt.Wall}) "Model for heat convection";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol(m=2) 
    "Thermal collector to link a vector of models to a single model";
  BoundaryConditions.WeatherData.ReaderTMY3 weaDat(filNam=
        "Resources/weatherdata/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.mos");
  Modelica.Blocks.Sources.Constant TRoo(k=273.15 + 20) "Room air temperature";
  HeatTransfer.Data.OpaqueConstructions.Insulation100Concrete200 extConMat 
    "Record for material layers"; 
  HeatTransfer.WindowsBeta.InteriorHeatTransfer intCon[nCon](
    A=AWin,
    fFra=fFra,
    absIRSha_air={glaSys1.shade.absIR_a, glaSys2.shade.absIR_a},
    absIRSha_glass={glaSys1.shade.absIR_b, glaSys2.shade.absIR_b},
    tauIRSha_air={glaSys1.shade.tauIR_a, glaSys2.shade.tauIR_a},
    tauIRSha_glass={glaSys1.shade.tauIR_b, glaSys2.shade.tauIR_b},
    haveExteriorShade={glaSys1.haveExteriorShade, glaSys2.haveExteriorShade},
    haveInteriorShade={glaSys1.haveInteriorShade, glaSys2.haveInteriorShade},
    each linearizeRadiation = linearizeRadiation) 
    "Model for interior convection";
  Modelica.Blocks.Sources.Constant uSha(k=0) "Shading control signal";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol1(m=2) 
    "Thermal collector to link a vector of models to a single model";
  HeatTransfer.Radiosity.IndoorRadiosity indRad[nCon](each linearize = linearizeRadiation,
    A=AWin) "Model for indoor radiosity";
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol2(
                                                                   m=2) 
    "Thermal collector to link a vector of models to a single model";
  Modelica.Blocks.Routing.Replicator replicator(nout=nCon);
  Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol3(
                                                                   m=2) 
    "Thermal collector to link a vector of models to a single model";
  Modelica.Blocks.Sources.Constant QAbsSha[nCon](each k=0) 
    "Solar radiation absorbed by interior shade";
  Modelica.Blocks.Sources.Constant QAbs[nCon,glaSys1.nLay](each k=0) 
    "Solar radiation absorbed by glass";
  Modelica.Blocks.Sources.Constant QTra[nCon](each k=0) 
    "Solar radiation absorbed by exterior shade"; 
equation 
  connect(prescribedTemperature.port, theCol.port_b);
  connect(theCol.port_a, con.fluid);
  connect(con.solid, conExt.opa_a);
  connect(conExt.opa_b, bouConExt.opa_a);
  connect(weaDat.weaBus, bouConExt.weaBus);
  connect(TRoo.y, prescribedTemperature.T);
  connect(theCol1.port_b, prescribedTemperature.port);
  connect(theCol1.port_a, intCon.air);
  connect(intCon.glaUns, conExt.glaUns_a);
  connect(intCon.glaSha, conExt.glaSha_a);
  connect(intCon.JOutUns, conExt.JInUns_a);
  connect(intCon.JInUns, conExt.JOutUns_a);
  connect(intCon.JOutSha, conExt.JInSha_a);
  connect(intCon.JInSha, conExt.JOutSha_a);
  connect(conExt.JOutUns_b, bouConExt.JInUns);
  connect(bouConExt.JOutUns, conExt.JInUns_b);
  connect(bouConExt.glaUns, conExt.glaUns_b);
  connect(bouConExt.glaSha, conExt.glaSha_b);
  connect(conExt.JOutSha_b, bouConExt.JInSha);
  connect(conExt.JInSha_b, bouConExt.JOutSha);
  connect(conExt.fra_b, bouConExt.fra); 
  connect(intCon.frame, theCol2.port_a); 
  connect(uSha.y, replicator.u);
  connect(replicator.y, intCon.uSha);
  connect(indRad.JOut, intCon.JInRoo);
  connect(indRad.JIn, intCon.JOutRoo);
  connect(theCol3.port_a, indRad.heatPort);
  connect(theCol2.port_b, prescribedTemperature.port);
  connect(theCol3.port_b, prescribedTemperature.port);
  connect(bouConExt.uSha, replicator.y);
  connect(conExt.uSha, replicator.y);
  connect(QAbs.y, conExt.QAbsUns_flow);
  connect(QAbs.y, conExt.QAbsSha_flow);
  connect(QAbsSha.y, intCon.QAbs_flow);
  connect(QTra.y, bouConExt.QAbsSolSha_flow); 
end ExteriorWallTwoWindows;
 
Buildings.RoomsBeta.Constructions.Examples.ExteriorWall
Extends from Modelica.Icons.Example (Icon for runnable examples).
model ExteriorWall "Test model for an exterior wall without a window" import Buildings; extends Modelica.Icons.Example;Buildings.RoomsBeta.Constructions.Construction conExt[1]( A={10*3}, layers={extConMat}, til={Buildings.HeatTransfer.Types.Tilt.Wall}) "Construction of an exterior wall without a window"; Buildings.RoomsBeta.BaseClasses.ExteriorBoundaryConditions bouConExt( nCon=1, linearizeRadiation = false, absIR={0.5}, azi={0}, AOpa={1}, absSol={0.5}, lat=0.73268921998722, conMod=Buildings.HeatTransfer.Types.InteriorConvection.Temperature, til={Buildings.HeatTransfer.Types.Tilt.Wall}) "Exterior boundary conditions for constructions without a window"; Buildings.HeatTransfer.Sources.PrescribedTemperature prescribedTemperature; Buildings.HeatTransfer.Convection.Interior con[ 1](A={3*10}, til={Buildings.HeatTransfer.Types.Tilt.Wall}) "Model for heat convection"; Modelica.Thermal.HeatTransfer.Components.ThermalCollector theCol(m=1) "Thermal collector to link a vector of models to a single model"; BoundaryConditions.WeatherData.ReaderTMY3 weaDat(filNam= "Resources/weatherdata/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.mos"); Modelica.Blocks.Sources.Constant TRoo(k=273.15 + 20) "Room air temperature"; HeatTransfer.Data.OpaqueConstructions.Insulation100Concrete200 extConMat "Record for material layers"; equationconnect(prescribedTemperature.port, theCol.port_b); connect(theCol.port_a, con.fluid); connect(con.solid, conExt.opa_a); connect(conExt.opa_b, bouConExt.opa_a); connect(weaDat.weaBus, bouConExt.weaBus); connect(TRoo.y, prescribedTemperature.T); end ExteriorWall;