diff --git a/IDEAS/Examples/Tutorial/DetailedHouse/DetailedHouse1.mo b/IDEAS/Examples/Tutorial/DetailedHouse/DetailedHouse1.mo new file mode 100644 index 0000000000..af96c3bf7f --- /dev/null +++ b/IDEAS/Examples/Tutorial/DetailedHouse/DetailedHouse1.mo @@ -0,0 +1,208 @@ +within IDEAS.Examples.Tutorial.DetailedHouse; +model DetailedHouse1 "First example model of a one-zone building" + extends Modelica.Icons.Example; + package MediumAir = IDEAS.Media.Air "Air medium"; + + parameter Modelica.Units.SI.Length l=8 "Zone length"; + parameter Modelica.Units.SI.Length w=4 "Zone width"; + parameter Modelica.Units.SI.Length h=zon.hZone "Zone height (Default)"; + + //SimInfoManager must be 'inner' at the top level + inner IDEAS.BoundaryConditions.SimInfoManager sim + annotation (Placement(transformation(extent={{-100,80},{-80,100}}))); + IDEAS.Buildings.Components.Zone zon( + redeclare package Medium = MediumAir, + nSurf=7, + V=l*h*w) + "Zone model" annotation (Placement(transformation(extent={{-20,0},{0,20}}))); + IDEAS.Buildings.Components.OuterWall outWalWes( + redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall + constructionType, + inc=IDEAS.Types.Tilt.Wall, + azi=IDEAS.Types.Azimuth.W, + A=l*h) "Western outer wall model" + annotation (Placement(transformation(extent={{-60,10},{-48,30}}))); + IDEAS.Buildings.Components.OuterWall outWalEas( + redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall + constructionType, + inc=IDEAS.Types.Tilt.Wall, + azi=IDEAS.Types.Azimuth.E, + A=l*h) "Eastern outer wall model" + annotation (Placement(transformation(extent={{40,0},{28,20}}))); + IDEAS.Buildings.Components.OuterWall outWalNor( + redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall + constructionType, + inc=IDEAS.Types.Tilt.Wall, + azi=IDEAS.Types.Azimuth.N, + A=w*h) "Northern outer wall model" + annotation (Placement(transformation( + extent={{6,-10},{-6,10}}, + rotation=90, + origin={-10,54}))); + IDEAS.Buildings.Components.OuterWall outWalSou( + redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall + constructionType, + inc=IDEAS.Types.Tilt.Wall, + azi=IDEAS.Types.Azimuth.S, + A=w*h - win.A) "Southern outer wall model" + annotation (Placement(transformation( + extent={{-6,-10},{6,10}}, + rotation=90, + origin={-10,-34}))); + IDEAS.Buildings.Components.Window win( + inc=IDEAS.Types.Tilt.Wall, + A=3*1.4, + azi=IDEAS.Types.Azimuth.S, + redeclare IDEAS.Buildings.Data.Glazing.Ins2Ar2020 glazing) + "Window model" annotation (Placement(transformation(extent={{-6,-10},{6,10}}, + rotation=0, + origin={-54,-10}))); + + Buildings.Components.SlabOnGround slaOnGro( + redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyFloor + constructionType, + inc=IDEAS.Types.Tilt.Floor, + azi=IDEAS.Types.Azimuth.S, + A=l*w) "Floor model" annotation (Placement(transformation( + extent={{-6,-11},{6,11}}, + rotation=90, + origin={30,-35}))); + Buildings.Components.OuterWall cei( + redeclare IDEAS.Buildings.Validation.Data.Constructions.LightRoof + constructionType, + inc=IDEAS.Types.Tilt.Ceiling, + A=w*l) "Ceiling model" annotation (Placement(transformation( + extent={{6,-10},{-6,10}}, + rotation=90, + origin={30,54}))); +equation + connect(outWalWes.propsBus_a, zon.propsBus[1]) annotation (Line( + points={{-49,22},{-30,22},{-30,14},{-20,14},{-20,13.1429}}, + color={255,204,51}, + thickness=0.5)); + connect(zon.propsBus[2], outWalNor.propsBus_a) annotation (Line( + points={{-20,13.4286},{-22,13.4286},{-22,30},{-12,30},{-12,49}}, + color={255,204,51}, + thickness=0.5)); + connect(zon.propsBus[3], outWalEas.propsBus_a) annotation (Line( + points={{-20,13.7143},{-20,14},{-22,14},{-22,30},{20,30},{20,12},{29,12}}, + color={255,204,51}, + thickness=0.5)); + connect(outWalSou.propsBus_a, zon.propsBus[4]) annotation (Line( + points={{-12,-29},{-12,-10},{-20,-10},{-20,14}}, + color={255,204,51}, + thickness=0.5)); + connect(win.propsBus_a, zon.propsBus[5]) annotation (Line( + points={{-49,-8},{-30,-8},{-30,14},{-20,14},{-20,14.2857}}, + color={255,204,51}, + thickness=0.5)); + connect(slaOnGro.propsBus_a, zon.propsBus[6]) annotation (Line( + points={{27.8,-30},{28,-30},{28,-10},{-20,-10},{-20,14.5714}}, + color={255,204,51}, + thickness=0.5)); + connect(cei.propsBus_a, zon.propsBus[7]) annotation (Line( + points={{28,49},{28,30},{-22,30},{-22,14.8571},{-20,14.8571}}, + color={255,204,51}, + thickness=0.5)); + annotation ( + Icon(coordinateSystem(preserveAspectRatio=false)), + Diagram(coordinateSystem(preserveAspectRatio=false)), + experiment( + StartTime=10000000, + StopTime=11000000, + __Dymola_NumberOfIntervals=5000, + Tolerance=1e-06, + __Dymola_Algorithm="Lsodar"), + __Dymola_Commands(file= + "Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse1.mos" + "Simulate and plot"), + Documentation(info=" +
+This first example file instantiates a simple building model that consists of one zone, four walls, +a window, a floor and a ceiling. The zone dimensions are 8 m (with walls oriented +north and south) by 4 m, and the window measures 3 m by 1.4 m. Use the default +zone height of 2.8 m. Apply double glazing and a heavy wall, which provide high thermal mass. +
+
+Each yellow bus connector of a surface (Window
, OuterWall
+or SlabOnGround
) has to be connected to exactly one zone bus connector.
+To support multiple connections, the zone has an array of bus connectors with size
+nSurf
, where nSurf
is a parameter of Zone
,
+which has to be set by the user. It is the user’s responsibility to ensure that each
+element of this array is connected to exactly one surface and that there is a total
+of nSurf
connections to the zone.
+
+In addition to connecting each surface, the parameters of each component have to be set. Components typically
+have many default values that are appropriate for many purposes. When a parameter does not have a default
+value, it must be set by the user. Notable examples are the dimensions and orientation of the zone, walls
+and windows. The surface orientation can be set using the parameters incOpt
, which automatically sets the
+inclination depending on the type of outer wall (wall, floor, ceiling), and aziOpt
, which automatically sets the
+azimuth (north, east, south, west). Furthermore, the zone Medium must be set to
+IDEAS.Media.Air. Glazing and wall types must also be specified. This example uses the BESTEST Heavy Wall for the
+walls, the BESTEST Heavy Floor for the floor, the BESTEST light roof for the roof and the double glazing
+type Saint Gobain Planitherm and a south orientation for the window.
+
+The SimInfoManager
by default has the modifier inner
in its declaration. All IDEAS building components
+have the modifier outer
in their respective declarations of the SimInfoManager
. This causes the component
+declarations to point towards the higher level SimInfoManager
declaration. This way all model equations for
+the weather data have to be generated only once, instead of for each surface.
+
+This model is simulated with the following settings: +
+
+The simulation starts 107 seconds after New Year and ends 106 seconds later, covering a period of 11.6 days.
+The figure below shows the operative zone temperature, zon.TSensor
,
+which represents the mean of the air temperature and the mean radiative temperature of all surfaces.
+
+ +
+", revisions=" ++The created models tend to exhibit slow performance, with computation time significantly increasing due to +controller oscillations or frequent on/off switching of the heat pump. These effects cause a lot of fast +transients that force the solver to take small steps, which takes a lot of time. +
+Fortunately, there are many tricks that can be used to speed up the solver. The fundamental principle is to +remove small time constants from the problem. +The example in +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse10 implements changes +that cause the simulation to become 2 times faster. By systematically removing fast time constants, the solver can be +switched to a simpler method, such as Euler integration, the simulation time also becomes 2 times smaller +when using a fixed time step of 20 seconds. These are modest improvements since this small example model +behaves rather well. However, for large models, the difference in computation time when using Euler integration +can become a factor 1000. The modifications however require a bit of knowledge about solvers and the models +that you are using, including some of the more advanced parameters. To learn more about this, we refer to +[1, 2, 3]. +
++[1] F. Jorissen, M. Wetter, and L. Helsen. Simulation Speed Analysis and Improvements of Modelica Models for Building Energy Simulation. In 11th International Modelica Conference, Paris, 2015. doi: 10.3384/ecp1511859 +
++[2] F. Jorissen, M. Wetter, and L. Helsen. Simplifications for hydronic system models in Modelica. Journal of Building Performance Simulation, 11:6, 639-654, 2018. doi: 10.1080/19401493.2017.1421263 +
++[3] F. Jorissen. Toolchain for Optimal Control and Design of Energy Systems in Buildings. PhD Thesis, KU Leuven, 2018. +
+", revisions=" ++This model extends from +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse1 +and adds a solar shading screen to the window model. +Compare the simulation outputs to see the impact on the zone temperature. +
+
+Solar shading is a property of the window and can be selected using the replaceable model shaType
.
+A drop-down menu lists all available options. Each option may include custom parameters, which can be configured by pressing the Edit button next to the drop-down menu.
+
+The Screen
model requires an external control signal to determine whether the screen is extended or retracted.
+An input appears on the Window
icon for this purpose. Ensure that this input is connected to the appropriate control signal.
+See the window input comment for more information on how to choose the control signal.
+
+The figure below shows the operative zone temperature with (red) and without (blue) the shading model. +
++ +
+", revisions=" ++This example extends the second example by adding an occupancy and lighting model. +Based on the selected options, the system automatically calculates the zone's internal heat gains, +relative humidity, and CO2 concentration. The model implements a continuous occupancy schedule +of one person and LED lighting for the zone. The lighting operates when occupants are present. +
++Similar to the +IDEAS.Buildings.Components.Shading.Screen model used in +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse2, these model are utilized internally and can be set in the parameter windows. +They should not be dragged and dropped. +
++Set the appropriate replaceable models in the dialogue window of the zone model. +
++The figure below shows the operative zone temperature without (blue) and with (red) occupant and lighting. +
++ +
+", revisions=" ++This example extends the third example by adding a +custom occupancy model that uses an occupancy schedule that returns an +occupancy of two during office hours and zero otherwise. +
+
+Create a new model that extends the occupancy partial model. This partial model contains an input,
+which is not used, and an output, which must be set. Create an occupancy signal using a
+RealExpression
that returns the parameter value k during office hours (7–19 h on weekdays)
+and zero otherwise. Implement this model by extending the previous example, redeclaring the
+occupancy model, and setting parameter k.
+Use the year 2019 (
+IDEAS.Utilities.Time.Types.ZeroTime.NY2019) to define the reference time in the calendar model.
+Use an if-then-else statement with
+logical checks for the calendar outputs weekDay
and hour
.
+
+The figure below shows the operative zone temperature with the old (blue) and new (red) occupancy model. +Note the much more peaked behaviour of the zone temperature during the weekdays when there are occupants present. +
++ +
+", revisions=" +
+This example demonstrates the use of the RectangularZoneTemplate
.
+The one-zone implementation with one window of
+IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse1 is replaced by
+a two-zone implementation with a north and a south-oriented window.
+Note the different temperature responses of the zones.
+
+The model consists of two RectangularZoneTemplates
and a SimInfoManager
. The required parameters are set in
+the templates, with careful attention to all tabs. The internal wall is defined in only one of the two
+templates, while an external connection is used for the other template. The InternalWall
and
+External
options cause a yellow bus connector to appear on each template, which must then be connected to each other.
+The northern and southern wall both have a window of 1.5 m by 1.4 m (double glazing type Saint Gobain Planitherm).
+
+The figure below shows the operative zone temperatures of the zone with north oriented window (blue) and the zone with the south-oriented window (red). +Note the large effect that the window placement has on the zone dynamics! +
++ +
+", +revisions=" ++This model extends +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse5 by adding an HVAC system. +The system consists of a water-water heat pump, radiators, a storage tank, circulation +pumps and a heat source at a constant temperature of 10°C for the heat pump. The model includes constant +control setpoints for the heat pump and pumps. An integrator block is incorporated to measure +the electrical energy consumption of the heat pump. +
++A reference implementation for this example is shown in the figure below. +
++ +
++One notable example is that in each fluid loop the absolute pressure of that loop has to be +defined somewhere: pumps and valves only provide information about differential pressures. For this purpose +use IDEAS.Fluid.Sources.Boundary_pT and connect it to the loop, +which will set the absolute pressure at the connection point. +
++
+The figures below show the operative zone temperatures recZon.TSensor
and recZon1.TSensor
,
+the radiator heat flow rates rad.Q_flow
and rad1.Q_flow
, the heat pump condenser temperature
+heaPum.con.T
and the heat pump heat flow rate heaPum.QCon_flow
.
+
+ +
++
+ +
++This example illustrates the importance of control, which is currently not modelled. All pumps and the heat +pump are assumed to be active continuously, which is detrimental for the system performance. The COP +(heaPum.com.COP) is only about 2.9. +
+", revisions="+This step adds a controller that disables the heat pump when the supply water +temperature exceeds 45°C. The simple controller has a large impact on the heat pump's COP. +
++The temperature sensor between the storage tank and the secondary circulation pump serves as an input to the hysteresis controller. +The controller is configured such that it switches to a false signal below 40°C and to true above 45°C. +
+
+The output of the hysteresis controller is thus true when the supply temperature is high enough and false
+otherwise. This Boolean signal has to be converted in a real control signal that can be accepted by the heat
+pump model using the BooleanToReal
block. The heat pump already has a control signal.
+Since blocks cannot be removed from an extension of a model, the heat pump model input type is set to
+enable_variable_speed=true. This configuration allows the model to accept any real signal while ignoring
+connections to the other control signal.
+
+The figure below shows the operative zone temperature recZon.TSensor
, the heat pump condenser temperatureheaPum.con.T
+and the radiator heat flow rate rad.Q_flow
in the north-oriented zone with (red) and without (blue) hysteresis control.
+We see that the supply temperature is indeed reduced significantly.
+This causes the zone temperature to be slightly lower, up to about 0.25°C.
+The electrical energy use however decreases from 22.0 kWh to 16.1 kWh.
+Note that this heating system configuration is still not efficient since
+the small flow rates still cause large temperatures to occur within the heat pump and thus cause a small COP.
+COPs of more than 5 are obtainable when using a bypass and a separate pump to charge the storage tank.
+
+ +
+", revisions=" ++Extracting results from Dymola can be tedious. Therefore, several custom tools have been developed to facilitate +exporting simulation results. For time-series data, a generic CSV writer can be found in +IDEAS.Utilities.IO.Files.JSONWriter. This model generates a CSV file at a user-defined location that contains data for +each of the inputs of the block. The delimiter can be modified in the advanced parameter tab. The model + IDEAS.Utilities.IO.Files.CombiTimeTableWriter, +does the same, albeit using a slightly different file format which can be read directly back into Modelica using the file reader + Modelica.Blocks.Sources.CombiTimeTable. +
+
+In this example we will not output time series data, only a single value: the total electricity consumption at the end
+of the simulation, using the JSON
file format. Note that the external library ExternData
can be used to read
+JSON
files.
+
+Add the model, choose a file path and indicate the appropriate time when the result should be +saved. Connect the appropriate signal to the input of the block. +
+
+Check the contents of the generated file. Depending on the chosen value for the parameter
+varKeys
, the result should be similar to: {\"Electrical energy [kWH]\"}: 1.2577137592e+01
+
+Adding CO2-controlled ventilation system. The occupancy model +from +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse4 is added to one zone and a +fixed occupancy of 1 person to the other zone. The ventilation system +consists of two fans, two supply and two return air VAVs (Variable Air Volume), a heat recovery unit and an +outdoor air source. The control consists of PI controllers with a setpoint of 1000 ppm. +
++This model extends from +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse8 where its existing medium declaration is modified to add CO2. +For one zone, add the occupancy model from +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse4. For the other zone, a fixed occupancy of 1 person is added. +For making a connection with the outside air +IDEAS.Fluid.Sources.OutsideAir is used, which is similar to +IDEAS.Fluid.Sources.Boundary_pT except that it automatically sets the outdoor dry bulb temperature and humidity. +
+
+For this exercise, assume that the VAV has a nominal flow rate of 100 m3/h, which equals 0.033 kg/s. A nominal pressure drop of 50 Pa
+is assumed and also dpFixed_nominal=50
, which causes the VAV model to include a pressure drop of ducts, grills,
+filters or bends that are connected at the inlet or outlet of the VAV. The fan pressure head is constant at 200 Pa and its nominal flow
+rate is the sum of the VAV flow rates. The heat recovery heat exchanger has a constant effectiveness of 80 %.
+
+The model includes two PI controllers, with their outputs connected to the VAVs. The zone ppm
+outputs are connected to the measurement inputs u_m
of the PI controllers, and a constant set point
+of 1000 ppm is provided at the input u_s
. The VAVs have a minimum opening of 10 %.
+The PI controllers are configured with the following parameters: k = 0.005
, T_i = 300
, reverseAction=false
,
+and controllerType=PI
. The schematic representation of the model is shown in the figure below.
+
+ +
++The figures below show the operative zone temperature, CO2 concentrations and PI control signals in both zones. +Note the small overshoot of the PI controller outputs and the exponential decay towards the outdoor CO2 +concentration when there are no occupants. +
++ +
+", revisions=" +
+This package contains examples with step-by-step instructions for how to build a system model
+for an office building (using the detailed building envelope component models within IDEAS.Buildings)
+with occupants, a radiator heating system connected to a heat pump, and a ventilation system.
+It serves as a demonstration case of how the IDEAS
library can be used.
+
+The goal of this exercise is to become familiar with Modelica and the IDEAS library. +Since the IDEAS library components are typically used by combining several components graphically, +the use of equations falls outside of the scope of this exercise. +
++Firstly, develop a single-zone (office) building using the component models of the IDEAS.Buildings package, +then add occupants. Secondly, move to a two-zone (office) building and add a heating system +and a ventilation system (including their control). +This exercise will extend from the single-zone ( +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse1) or two-zone ( +IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse5) model in several steps, adding complexity. +In between each step the user should be able to simulate the model, +i.e., no errors should be produced and simulation results may be compared. +
++The model has been created in the following stages: +
+DetailedHouse
model.
+RectangularZoneTemplate
.
++For each stage, firstly the model part is qualitatively explained. +Next, the names of the required Modelica models (from the Modelica Standard Library and/or IDEAS library) are listed. +Finally, we provide high-level instructions of how to set up the model. +If these instructions are not clear immediately, have a look at the model documentation and at the type of connectors the model has, +try out some things, make an educated guess, etc. +Finally, we provide reference results that allow you to check if your implementation is correct. +Depending on the parameter values that you choose, results may differ. +
++The graphical representation of the final model is given below. +
++ +
++A more detailed explanation and step-by-step approach are provided in Exercises 3 and 4 +of the Modelica Crash Course, developed by The SySi Team at KU Leuven. Links to these +additional resources are available below. +
+ +")); +end DetailedHouse; diff --git a/IDEAS/Examples/Tutorial/DetailedHouse/package.order b/IDEAS/Examples/Tutorial/DetailedHouse/package.order new file mode 100644 index 0000000000..98918c2648 --- /dev/null +++ b/IDEAS/Examples/Tutorial/DetailedHouse/package.order @@ -0,0 +1,10 @@ +DetailedHouse1 +DetailedHouse2 +DetailedHouse3 +DetailedHouse4 +DetailedHouse5 +DetailedHouse6 +DetailedHouse7 +DetailedHouse8 +DetailedHouse9 +DetailedHouse10 diff --git a/IDEAS/Examples/Tutorial/Example1.mo b/IDEAS/Examples/Tutorial/Example1.mo deleted file mode 100644 index 8847f0045a..0000000000 --- a/IDEAS/Examples/Tutorial/Example1.mo +++ /dev/null @@ -1,130 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example1 "First example model containing one zone" - extends Modelica.Icons.Example; - package Medium = IDEAS.Media.Air "Air medium"; - - parameter Modelica.Units.SI.Length l=8 "Zone length"; - parameter Modelica.Units.SI.Length w=4 "Zone width"; - parameter Modelica.Units.SI.Length h=2.7 "Zone height"; - - - //SimInfoManager must be 'inner' at the top level - inner IDEAS.BoundaryConditions.SimInfoManager sim - annotation (Placement(transformation(extent={{-100,80},{-80,100}}))); - IDEAS.Buildings.Components.Zone zone( - redeclare package Medium = Medium, - nSurf=7, - V=l*h*w) - "Zone model" annotation (Placement(transformation(extent={{-20,0},{0,20}}))); - IDEAS.Buildings.Components.OuterWall outerWall( - redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall - constructionType, - inc=IDEAS.Types.Tilt.Wall, - azi=IDEAS.Types.Azimuth.W, - A=l*h) - "Outer wall model" - annotation (Placement(transformation(extent={{-56,0},{-44,20}}))); - IDEAS.Buildings.Components.OuterWall outerWall1( - redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall - constructionType, - inc=IDEAS.Types.Tilt.Wall, - azi=IDEAS.Types.Azimuth.E, - A=l*h) - "Outer wall model" - annotation (Placement(transformation(extent={{36,0},{24,20}}))); - IDEAS.Buildings.Components.OuterWall outerWall2( - redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall - constructionType, - inc=IDEAS.Types.Tilt.Wall, - azi=IDEAS.Types.Azimuth.N, - A=w*h) - "Outer wall model" - annotation (Placement(transformation( - extent={{6,-10},{-6,10}}, - rotation=90, - origin={-10,52}))); - IDEAS.Buildings.Components.OuterWall outerWall3( - redeclare IDEAS.Buildings.Validation.Data.Constructions.HeavyWall - constructionType, - inc=IDEAS.Types.Tilt.Wall, - azi=IDEAS.Types.Azimuth.S, - A=w*h - window.A) - "Outer wall model" - annotation (Placement(transformation( - extent={{-6,-10},{6,10}}, - rotation=90, - origin={-10,-30}))); - IDEAS.Buildings.Components.Window window( - inc=IDEAS.Types.Tilt.Wall, - A=3*1.4, - azi=IDEAS.Types.Azimuth.S, - redeclare TwinHouses.BaseClasses.Data.Materials.Glazing glazing) - "Window model" annotation (Placement(transformation(extent={{-6,-10},{6,10}}, - rotation=90, - origin={-36,-30}))); - - Buildings.Components.InternalWall floor( - redeclare Buildings.Validation.Data.Constructions.HeavyFloor - constructionType, - inc=IDEAS.Types.Tilt.Floor, - azi=IDEAS.Types.Azimuth.S, - A=l*w) - "Floor modelled using internal wall with both the ceiling and roof side connected to the zone" - annotation (Placement(transformation( - extent={{-6,-10},{6,10}}, - rotation=90, - origin={70,10}))); -equation - connect(outerWall.propsBus_a, zone.propsBus[1]) annotation (Line( - points={{-45,12},{-38.5,12},{-38.5,15.7143},{-20,15.7143}}, - color={255,204,51}, - thickness=0.5)); - connect(zone.propsBus[2], outerWall2.propsBus_a) annotation (Line( - points={{-20,15.1429},{-22,15.1429},{-22,47},{-12,47}}, - color={255,204,51}, - thickness=0.5)); - connect(zone.propsBus[3], outerWall1.propsBus_a) annotation (Line( - points={{-20,14.5714},{-20,28},{25,28},{25,12}}, - color={255,204,51}, - thickness=0.5)); - connect(outerWall3.propsBus_a, zone.propsBus[4]) annotation (Line( - points={{-12,-25},{-12,-6},{-20,-6},{-20,14}}, - color={255,204,51}, - thickness=0.5)); - connect(window.propsBus_a, zone.propsBus[5]) annotation (Line( - points={{-38,-25},{-38,14},{-20,14},{-20,13.4286}}, - color={255,204,51}, - thickness=0.5)); - connect(floor.propsBus_a, zone.propsBus[6]) annotation (Line( - points={{68,15},{68,28},{-20,28},{-20,12.8571}}, - color={255,204,51}, - thickness=0.5)); - connect(floor.propsBus_b, zone.propsBus[7]) annotation (Line( - points={{68,5},{68,-6},{-20,-6},{-20,12.2857}}, - color={255,204,51}, - thickness=0.5)); - annotation ( - Icon(coordinateSystem(preserveAspectRatio=false)), - Diagram(coordinateSystem(preserveAspectRatio=false)), - experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_Algorithm="Lsodar"), - __Dymola_Commands(file= - "Resources/Scripts/Dymola/Examples/Tutorial/Example1.mos" - "Simulate and plot"), - Documentation(info=" --This first example file instantiates a simple building model. -
-", revisions=" --Tuning model and solver for computation time -
-"), - __Dymola_Commands(file= - "Resources/Scripts/Dymola/Examples/Tutorial/Example10.mos" - "Simulate and plot")); -end Example10; diff --git a/IDEAS/Examples/Tutorial/Example2.mo b/IDEAS/Examples/Tutorial/Example2.mo deleted file mode 100644 index ab9f392e7a..0000000000 --- a/IDEAS/Examples/Tutorial/Example2.mo +++ /dev/null @@ -1,32 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example2 "Adding closed screens" - extends Example1(window(redeclare Buildings.Components.Shading.Screen shaType)); - Modelica.Blocks.Sources.Constant const(k=1) - annotation (Placement(transformation(extent={{-100,-60},{-80,-40}}))); -equation - connect(const.y, window.Ctrl) - annotation (Line(points={{-79,-50},{-26,-50},{-26,-34}}, color={0,0,127})); - annotation ( - Documentation(info=" --This second example file extends the first example and adds a solar shading screen to the window model. -Compare the simulation outputs to see the impact on the zone temperature. -
-", revisions=" --This example extends the second example by adding an occupant and lighting model. -
-"), - __Dymola_Commands(file= - "Resources/Scripts/Dymola/Examples/Tutorial/Example3.mos" - "Simulate and plot"), - experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_Algorithm="Lsodar")); -end Example3; diff --git a/IDEAS/Examples/Tutorial/Example4.mo b/IDEAS/Examples/Tutorial/Example4.mo deleted file mode 100644 index 89b39502df..0000000000 --- a/IDEAS/Examples/Tutorial/Example4.mo +++ /dev/null @@ -1,42 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example4 "Including custom occupant schedule" - extends Example3(zone(redeclare OccSched occNum(k=2))); - -protected - model OccSched "Simple occupancy schedule" - extends IDEAS.Buildings.Components.Occupants.BaseClasses.PartialOccupants(final useInput=false); - - parameter Real k "Number of occupants"; - Utilities.Time.CalendarTime calTim(zerTim=IDEAS.Utilities.Time.Types.ZeroTime.NY2019) - annotation (Placement(transformation(extent={{-20,20},{0,40}}))); - Modelica.Blocks.Sources.RealExpression occ(y=if calTim.weekDay < 6 and ( - calTim.hour > 7 and calTim.hour < 18) then k else 0) - "Number of occupants present" - annotation (Placement(transformation(extent={{-20,-10},{0,10}}))); - equation - connect(occ.y, nOcc) - annotation (Line(points={{1,0},{120,0}}, color={0,0,127})); - end OccSched; - annotation ( - Documentation(revisions=" --This example extends the third example by adding a -custom occupancy model that uses an occupancy schedule. -
-"), - __Dymola_Commands(file="Resources/Scripts/Dymola/Examples/Tutorial/Example4.mos" - "Simulate and plot"), - experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_Algorithm="Lsodar")); -end Example4; diff --git a/IDEAS/Examples/Tutorial/Example5.mo b/IDEAS/Examples/Tutorial/Example5.mo deleted file mode 100644 index 238f7bffec..0000000000 --- a/IDEAS/Examples/Tutorial/Example5.mo +++ /dev/null @@ -1,91 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example5 "New model with 2 coupled zones" - extends Modelica.Icons.Example; - replaceable package Medium = IDEAS.Media.Air "Air medium"; - - parameter Modelica.Units.SI.Length l=8 "Zone length"; - parameter Modelica.Units.SI.Length w=4 "Zone width"; - parameter Modelica.Units.SI.Length h=2.7 "Zone height"; - - inner BoundaryConditions.SimInfoManager sim - annotation (Placement(transformation(extent={{-100,80},{-80,100}}))); - Buildings.Components.RectangularZoneTemplate rectangularZoneTemplate( - redeclare package Medium = Medium, - aziA=IDEAS.Types.Azimuth.N, - h=h, - bouTypA=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - bouTypB=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - bouTypD=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypA, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypB, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypC, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypD, - bouTypC=IDEAS.Buildings.Components.Interfaces.BoundaryType.InternalWall, - bouTypFlo=IDEAS.Buildings.Components.Interfaces.BoundaryType.InternalWall, - bouTypCei=IDEAS.Buildings.Components.Interfaces.BoundaryType.External, - l=w, - w=l/2, - hasWinA=true, - A_winA=2*1.3, - redeclare TwinHouses.BaseClasses.Data.Materials.Glazing glazingA, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypFlo) - "North part of the zone" - annotation (Placement(transformation(extent={{-10,20},{10,40}}))); - Buildings.Components.RectangularZoneTemplate rectangularZoneTemplate1( - redeclare package Medium = Medium, - aziA=IDEAS.Types.Azimuth.N, - h=h, - bouTypB=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - bouTypC=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - bouTypD=IDEAS.Buildings.Components.Interfaces.BoundaryType.OuterWall, - bouTypFlo=IDEAS.Buildings.Components.Interfaces.BoundaryType.InternalWall, - bouTypCei=IDEAS.Buildings.Components.Interfaces.BoundaryType.External, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypB, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypC, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypD, - redeclare Buildings.Validation.Data.Constructions.HeavyWall conTypFlo, - bouTypA=IDEAS.Buildings.Components.Interfaces.BoundaryType.External, - l=w, - w=l/2, - hasWinC=true, - A_winC=2*1.3, - redeclare TwinHouses.BaseClasses.Data.Materials.Glazing glazingC) - "South part of the zone" - annotation (Placement(transformation(extent={{-10,-40},{10,-20}}))); -equation - connect(rectangularZoneTemplate.proBusFlo, rectangularZoneTemplate.proBusCei) - annotation (Line( - points={{0,24},{28,24},{28,36},{-0.2,36}}, - color={255,204,51}, - thickness=0.5)); - connect(rectangularZoneTemplate1.proBusA, rectangularZoneTemplate.proBusC) - annotation (Line( - points={{-6,-21},{-6,2},{6.8,2},{6.8,20.2}}, - color={255,204,51}, - thickness=0.5)); - connect(rectangularZoneTemplate1.proBusCei, rectangularZoneTemplate1.proBusFlo) - annotation (Line( - points={{-0.2,-24},{28,-24},{28,-36},{0,-36}}, - color={255,204,51}, - thickness=0.5)); - annotation (Documentation(revisions=" --This example demonstrates the use of the RectangularZoneTemplate. -The one-zone implementation with one window of example 1 is repeated here as -a two-zone implementation with two windows that are north and south oriented. -Note the different temperature responses of the zones. -
-"), experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_Algorithm="Lsodar")); -end Example5; diff --git a/IDEAS/Examples/Tutorial/Example7.mo b/IDEAS/Examples/Tutorial/Example7.mo deleted file mode 100644 index 1eeb42ea43..0000000000 --- a/IDEAS/Examples/Tutorial/Example7.mo +++ /dev/null @@ -1,41 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example7 "Adding a controller" - extends Example6(heaPum(enable_variable_speed=true)); - Modelica.Blocks.Logical.Hysteresis hys(uLow=273.15 + 40, uHigh=273.15 + 45) - "Hysteresis controller" - annotation (Placement(transformation(extent={{60,-80},{80,-60}}))); - Modelica.Blocks.Math.BooleanToReal booToRea(realTrue=0, realFalse=1) - "Conversion to real control signal" - annotation (Placement(transformation(extent={{100,-80},{120,-60}}))); - -equation - connect(hys.y, booToRea.u) annotation (Line(points={{81,-70},{88,-70},{88,-70}, - {98,-70}}, color={255,0,255})); - connect(booToRea.y, heaPum.y) - annotation (Line(points={{121,-70},{167,-70},{167,-2}}, color={0,0,127})); - connect(senTemSup.T, hys.u) annotation (Line(points={{140,49},{140,4},{120,4}, - {120,-40},{40,-40},{40,-70},{58,-70}}, color={0,0,127})); - annotation ( - Documentation(revisions=" --The simple controller has a large impact on the heat pump COP. -
-"), - __Dymola_Commands(file= - "Resources/Scripts/Dymola/Examples/Tutorial/Example7.mos" - "Simulate and plot"), - experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_fixedstepsize=20, - __Dymola_Algorithm="Lsodar")); -end Example7; diff --git a/IDEAS/Examples/Tutorial/Example8.mo b/IDEAS/Examples/Tutorial/Example8.mo deleted file mode 100644 index 86203ebe50..0000000000 --- a/IDEAS/Examples/Tutorial/Example8.mo +++ /dev/null @@ -1,31 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example8 "JSOn writer" - extends Example7; - Utilities.IO.Files.JSONWriter jsonWri( - nin=1, - fileName="EEl.json", - varKeys={"Electrical energy [kWh]"}, - outputTime=IDEAS.Utilities.IO.Files.BaseClasses.OutputTime.Terminal) - annotation (Placement(transformation(extent={{280,-42},{260,-22}}))); -equation - connect(jsonWri.u[1], EEl.y) annotation (Line(points={{280,-32},{286,-32},{ - 286,50},{281,50}}, color={0,0,127})); - annotation (Documentation(revisions=" --This model outputs the main model result to a json file. -
-"), experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=1e-06, - __Dymola_fixedstepsize=20, - __Dymola_Algorithm="Lsodar")); -end Example8; diff --git a/IDEAS/Examples/Tutorial/Example9.mo b/IDEAS/Examples/Tutorial/Example9.mo deleted file mode 100644 index b329cd9c47..0000000000 --- a/IDEAS/Examples/Tutorial/Example9.mo +++ /dev/null @@ -1,171 +0,0 @@ -within IDEAS.Examples.Tutorial; -model Example9 "Adding CO2-controlled ventilation" - extends Example7( - redeclare package Medium = IDEAS.Media.Air(extraPropertiesNames={"CO2"}), - rectangularZoneTemplate( - redeclare OccSched occNum(k=2), - redeclare Buildings.Components.OccupancyType.OfficeWork occTyp), - rectangularZoneTemplate1( - redeclare Buildings.Components.Occupants.Fixed occNum(nOccFix=1), - redeclare Buildings.Components.OccupancyType.OfficeWork occTyp), - pumpSec(nominalValuesDefineDefaultPressureCurve=true), - pumpPrim(nominalValuesDefineDefaultPressureCurve=true)); - - - Fluid.Actuators.Dampers.PressureIndependent vavSup( - redeclare package Medium = Medium, - m_flow_nominal=100*1.2/3600, - dpDamper_nominal=50, - dpFixed_nominal=50) "Supply VAV for first zone" - annotation (Placement(transformation(extent={{-120,50},{-100,70}}))); - Fluid.Actuators.Dampers.PressureIndependent vavSup1( - redeclare package Medium = Medium, - m_flow_nominal=100*1.2/3600, - dpDamper_nominal=50, - dpFixed_nominal=50) "Supply VAV for second zone" - annotation (Placement(transformation(extent={{-120,-20},{-100,0}}))); - Fluid.Actuators.Dampers.PressureIndependent vavRet( - redeclare package Medium = Medium, - m_flow_nominal=100*1.2/3600, - dpDamper_nominal=50, - dpFixed_nominal=50) "Return VAV for first zone" - annotation (Placement(transformation(extent={{-100,20},{-120,40}}))); - Fluid.Actuators.Dampers.PressureIndependent vavRet1( - redeclare package Medium = Medium, - m_flow_nominal=100*1.2/3600, - dpDamper_nominal=50, - dpFixed_nominal=50) "Return VAV for second zone" - annotation (Placement(transformation(extent={{-100,-60},{-120,-40}}))); - Fluid.Movers.FlowControlled_dp fanSup( - inputType=IDEAS.Fluid.Types.InputType.Constant, - nominalValuesDefineDefaultPressureCurve=true, - redeclare package Medium = Medium, - dp_nominal=200, - m_flow_nominal=vavSup.m_flow_nominal + vavSup1.m_flow_nominal, - energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) "Supply fan" - annotation (Placement(transformation(extent={{-220,10},{-200,30}}))); - Fluid.Movers.FlowControlled_dp fanRet( - inputType=IDEAS.Fluid.Types.InputType.Constant, - nominalValuesDefineDefaultPressureCurve=true, - redeclare package Medium = Medium, - dp_nominal=200, - m_flow_nominal=vavRet.m_flow_nominal + vavRet1.m_flow_nominal, - energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) "Return fan" - annotation (Placement(transformation(extent={{-200,-30},{-220,-10}}))); - Fluid.HeatExchangers.ConstantEffectiveness hex( - redeclare package Medium1 = Medium, - redeclare package Medium2 = Medium, - m1_flow_nominal=fanSup.m_flow_nominal, - m2_flow_nominal=fanRet.m_flow_nominal, - dp1_nominal=100, - dp2_nominal=100) "Heat exchanger with constant heat recovery effectivity" - annotation (Placement(transformation(extent={{-250,-10},{-230,10}}))); - Controls.Continuous.LimPID conPID( - controllerType=Modelica.Blocks.Types.SimpleController.PI, - yMin=0.1, - k=0.005, - reverseActing=false, - Ti=300) annotation (Placement(transformation(extent={{-40,80},{-60,100}}))); - Controls.Continuous.LimPID conPID1( - controllerType=Modelica.Blocks.Types.SimpleController.PI, - yMin=0.1, - k=0.005, - reverseActing=false, - Ti=300) annotation (Placement(transformation(extent={{-40,0},{-60,20}}))); - Modelica.Blocks.Sources.Constant ppmSet(k=1000) - annotation (Placement(transformation(extent={{40,80},{20,100}}))); - Fluid.Sources.OutsideAir outsideAir(redeclare package Medium = Medium, - azi=0, - nPorts=2) "Source model that takes properties from SimInfoManager" - annotation (Placement(transformation(extent={{-280,10},{-260,-10}}))); -protected - model OccSched "Simple occupancy schedule" - extends IDEAS.Buildings.Components.Occupants.BaseClasses.PartialOccupants(final useInput=false); - - parameter Real k "Number of occupants"; - Utilities.Time.CalendarTime calTim(zerTim=IDEAS.Utilities.Time.Types.ZeroTime.NY2019) - annotation (Placement(transformation(extent={{-20,20},{0,40}}))); - Modelica.Blocks.Sources.RealExpression occ(y=if calTim.weekDay < 6 and ( - calTim.hour > 7 and calTim.hour < 18) then k else 0) - "Number of occupants present" - annotation (Placement(transformation(extent={{-20,-10},{0,10}}))); - equation - connect(occ.y, nOcc) - annotation (Line(points={{1,0},{120,0}}, color={0,0,127})); - end OccSched; - - -equation - connect(vavSup.port_a, fanSup.port_b) annotation (Line(points={{-120,60},{-180, - 60},{-180,20},{-200,20}}, color={0,127,255})); - connect(vavSup1.port_a, fanSup.port_b) annotation (Line(points={{-120,-10},{-180, - -10},{-180,20},{-200,20}}, color={0,127,255})); - connect(fanRet.port_a, vavRet1.port_b) annotation (Line(points={{-200,-20},{-160, - -20},{-160,-50},{-120,-50}}, color={0,127,255})); - connect(fanRet.port_a, vavRet.port_b) annotation (Line(points={{-200,-20},{-160, - -20},{-160,30},{-120,30}}, color={0,127,255})); - connect(hex.port_b1, fanSup.port_a) annotation (Line(points={{-230,6},{-230,20}, - {-220,20}}, color={0,127,255})); - connect(hex.port_a2, fanRet.port_b) annotation (Line(points={{-230,-6},{-230,-20}, - {-220,-20}}, color={0,127,255})); - connect(conPID.y, vavSup.y) - annotation (Line(points={{-61,90},{-110,90},{-110,72}}, color={0,0,127})); - connect(vavRet.y, vavSup.y) - annotation (Line(points={{-110,42},{-110,72},{-110,72}}, color={0,0,127})); - connect(vavRet1.y, vavSup1.y) - annotation (Line(points={{-110,-38},{-110,2}}, color={0,0,127})); - connect(vavSup1.y, conPID1.y) - annotation (Line(points={{-110,2},{-110,10},{-61,10}}, color={0,0,127})); - connect(rectangularZoneTemplate1.ppm, conPID1.u_m) annotation (Line(points={{11, - -30},{14,-30},{14,-2},{-50,-2}}, color={0,0,127})); - connect(rectangularZoneTemplate.ppm, conPID.u_m) annotation (Line(points={{11,30}, - {14,30},{14,78},{-50,78}}, color={0,0,127})); - connect(ppmSet.y, conPID.u_s) - annotation (Line(points={{19,90},{-38,90}}, color={0,0,127})); - connect(ppmSet.y, conPID1.u_s) annotation (Line(points={{19,90},{-20,90},{-20, - 10},{-38,10}}, color={0,0,127})); - connect(outsideAir.ports[1], hex.port_b2) annotation (Line(points={{-260,-2}, - {-250,-2},{-250,-6}}, color={0,127,255})); - connect(outsideAir.ports[2], hex.port_a1) annotation (Line(points={{-260,2},{ - -252,2},{-252,6},{-250,6}}, color={0,127,255})); - connect(vavSup.port_b, rectangularZoneTemplate.ports[1]) annotation (Line( - points={{-100,60},{-2,60},{-2,40},{0,40}}, color={0,127,255})); - connect(vavRet.port_a, rectangularZoneTemplate.ports[2]) annotation (Line( - points={{-100,30},{-14,30},{-14,40},{0,40}}, color={0,127,255})); - connect(vavSup1.port_b, rectangularZoneTemplate1.ports[1]) - annotation (Line(points={{-100,-10},{0,-10},{0,-20}}, color={0,127,255})); - connect(vavRet1.port_a, rectangularZoneTemplate1.ports[2]) annotation (Line( - points={{-100,-50},{-34,-50},{-34,-20},{0,-20}}, color={0,127,255})); - annotation (Diagram(coordinateSystem(extent={{-280,-100},{280,100}})), Icon( - coordinateSystem(extent={{-280,-100},{280,100}})), - experiment( - StartTime=10000000, - StopTime=11000000, - __Dymola_NumberOfIntervals=5000, - Tolerance=0.00011, - __Dymola_Algorithm="Lsodar"), - __Dymola_Commands(file= - "Resources/Scripts/Dymola/Examples/Tutorial/Example9.mos" - "Simulate and plot"), - Documentation(revisions=" --Adding CO2-controlled ventilation system. -
-")); -end Example9; diff --git a/IDEAS/Examples/Tutorial/package.order b/IDEAS/Examples/Tutorial/package.order index c9a1100ac4..f3afc73b5f 100644 --- a/IDEAS/Examples/Tutorial/package.order +++ b/IDEAS/Examples/Tutorial/package.order @@ -1,11 +1,2 @@ -Example1 -Example10 -Example2 -Example3 -Example4 -Example5 -Example6 -Example7 -Example8 -Example9 +DetailedHouse SimpleHouse diff --git a/IDEAS/Examples/package.order b/IDEAS/Examples/package.order index 3f3df43834..e394dff8c7 100644 --- a/IDEAS/Examples/package.order +++ b/IDEAS/Examples/package.order @@ -1,7 +1,7 @@ Tutorial +DetailedResidentialNoHeating SimpleHouse Benchmark -DetailedResidentialNoHeating IBPSA PPD12 TwinHouses diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse1.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse1.png new file mode 100644 index 0000000000..6f01d6ec19 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse1.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse10.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse10.png new file mode 100644 index 0000000000..c481103a0a Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse10.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse2.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse2.png new file mode 100644 index 0000000000..96504742c1 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse2.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse3.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse3.png new file mode 100644 index 0000000000..269ad5d705 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse3.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse4.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse4.png new file mode 100644 index 0000000000..560ebec1ac Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse4.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse5.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse5.png new file mode 100644 index 0000000000..d17cdd4e2d Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse5.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6.png new file mode 100644 index 0000000000..de2cbd72ae Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_bis.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_bis.png new file mode 100644 index 0000000000..327e7d8ac2 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_bis.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_schematic.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_schematic.png new file mode 100644 index 0000000000..7c77959c49 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse6_schematic.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7.png new file mode 100644 index 0000000000..b7067a9663 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7_schematic.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7_schematic.png new file mode 100644 index 0000000000..7132322573 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse7_schematic.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9.png new file mode 100644 index 0000000000..4e677529db Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_bis.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_bis.png new file mode 100644 index 0000000000..7d229f2acd Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_bis.png differ diff --git a/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_schematic.png b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_schematic.png new file mode 100644 index 0000000000..3c41122b70 Binary files /dev/null and b/IDEAS/Resources/Images/Examples/Tutorial/DetailedHouse/DetailedHouse9_schematic.png differ diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example1.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse1.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example1.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse1.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example10.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse10.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example10.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse10.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example2.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse2.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example2.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse2.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example3.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse3.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example3.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse3.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example4.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse4.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example4.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse4.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example5.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse5.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example5.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse5.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example6.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse6.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example6.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse6.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example7.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse7.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example7.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse7.txt diff --git a/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example9.txt b/IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse9.txt similarity index 100% rename from IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_Example9.txt rename to IDEAS/Resources/ReferenceResults/Dymola/IDEAS_Examples_Tutorial_DetailedHouse_DetailedHouse9.txt diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse1.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse1.mos new file mode 100644 index 0000000000..f028fb30b8 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse1.mos @@ -0,0 +1,4 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse1", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse1"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"zon.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse10.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse10.mos new file mode 100644 index 0000000000..51570f1e17 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse10.mos @@ -0,0 +1,7 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse10", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="Euler", fixedstepsize=20, resultFile="DetailedHouse10"); + +createPlot(id=1, position={0, 0, 965, 656}, y={"recZon.ppm", "recZon1.ppm"}, range={10000000.0, 11000000.0, 200.0, 1200.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}); +createPlot(id=1, position={0, 0, 965, 326}, y={"conPID1.y", "conPID.y"}, range={10000000.0, 11000000.0, 0.0, 1.0}, erase=false, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); + + + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse2.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse2.mos new file mode 100644 index 0000000000..a54a280c07 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse2.mos @@ -0,0 +1,4 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse2", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse2"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"zon.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse3.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse3.mos new file mode 100644 index 0000000000..f528621115 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse3.mos @@ -0,0 +1,4 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse3", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse3"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"zon.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse4.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse4.mos new file mode 100644 index 0000000000..d3d655cd44 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse4.mos @@ -0,0 +1,4 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse4", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse4"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"zon.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse5.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse5.mos new file mode 100644 index 0000000000..de4f6948ff --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse5.mos @@ -0,0 +1,4 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse5", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse5"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"recZon.TSensor", "recZon1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse6.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse6.mos new file mode 100644 index 0000000000..0c717ce5d2 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse6.mos @@ -0,0 +1,7 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse6", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse6"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"recZon.TSensor", "recZon1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=1, position={0, 0, 851, 175}, y={"heaPum.con.T", "senTemSup.T"}, range={10000000.0, 11000000.0, 0.0, 80.0}, erase=false, grid=true, subPlot=2, colors={{238,46,47}, {28,108,200}}, displayUnits={"degC", "degC"}); +createPlot(id=1, position={0, 0, 1421, 337}, y={"heaPum.QCon_flow"}, range={10000000.0, 11000000.0, -100.0, 800.0}, erase=false, grid=true, subPlot=3, colors={{28,108,200}}); + + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse7.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse7.mos new file mode 100644 index 0000000000..5c71547e40 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse7.mos @@ -0,0 +1,7 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse7", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse7"); + +createPlot(id=1, position={0, 0, 851, 533}, y={"recZon.TSensor", "recZon1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=1, position={0, 0, 851, 175}, y={"heaPum.con.T", "senTemSup.T"}, range={10000000.0, 11000000.0, 0.0, 80.0}, erase=false, grid=true, subPlot=2, colors={{238,46,47}, {28,108,200}}, displayUnits={"degC", "degC"}); +createPlot(id=1, position={0, 0, 1421, 337}, y={"heaPum.QCon_flow"}, range={10000000.0, 11000000.0, -100.0, 800.0}, erase=false, grid=true, subPlot=3, colors={{28,108,200}}); + + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse9.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse9.mos new file mode 100644 index 0000000000..69a72b57e1 --- /dev/null +++ b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/DetailedHouse/DetailedHouse9.mos @@ -0,0 +1,7 @@ +simulateModel("IDEAS.Examples.Tutorial.DetailedHouse.DetailedHouse9", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="DetailedHouse9"); + +createPlot(id=1, position={0, 0, 965, 656}, y={"recZon.ppm", "recZon1.ppm"}, range={10000000.0, 11000000.0, 200.0, 1200.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}); +createPlot(id=1, position={0, 0, 965, 326}, y={"conPID1.y", "conPID.y"}, range={10000000.0, 11000000.0, 0.0, 1.0}, erase=false, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); + + + diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example1.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example1.mos deleted file mode 100644 index 5e417d88fe..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example1.mos +++ /dev/null @@ -1,4 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example1", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial1"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"zone.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, filename="Example1.mat", colors={{28,108,200}}, displayUnits={"degC"}); - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example10.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example10.mos deleted file mode 100644 index cfd44799d3..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example10.mos +++ /dev/null @@ -1,7 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example10", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="Euler", fixedstepsize=20, resultFile="Tutorial10"); - -createPlot(id=1, position={0, 0, 965, 656}, y={"rectangularZoneTemplate.ppm", "rectangularZoneTemplate1.ppm"}, range={10000000.0, 11000000.0, 200.0, 1200.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}); -createPlot(id=1, position={0, 0, 965, 326}, y={"conPID1.y", "conPID.y"}, range={10000000.0, 11000000.0, 0.0, 1.0}, erase=false, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); - - - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example2.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example2.mos deleted file mode 100644 index 7f9e50cce7..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example2.mos +++ /dev/null @@ -1,4 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example2", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial2"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"zone.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example3.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example3.mos deleted file mode 100644 index 1983abc9c8..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example3.mos +++ /dev/null @@ -1,4 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example3", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial3"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"zone.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example4.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example4.mos deleted file mode 100644 index 503dca2324..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example4.mos +++ /dev/null @@ -1,4 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example4", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial4"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"zone.TSensor"}, range={10000000.0, 11000000.0, 13.0, 21.0}, erase=false, grid=true, colors={{28,108,200}}, displayUnits={"degC"}); - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example5.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example5.mos deleted file mode 100644 index 5f1d5e9c90..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example5.mos +++ /dev/null @@ -1,4 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example5", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial5"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"rectangularZoneTemplate.TSensor", "rectangularZoneTemplate1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example6.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example6.mos deleted file mode 100644 index 903a4914a7..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example6.mos +++ /dev/null @@ -1,7 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example6", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial6"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"rectangularZoneTemplate.TSensor", "rectangularZoneTemplate1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); -createPlot(id=1, position={0, 0, 851, 175}, y={"heaPum.con.T", "senTemSup.T"}, range={10000000.0, 11000000.0, 0.0, 80.0}, erase=false, grid=true, subPlot=2, colors={{238,46,47}, {28,108,200}}, displayUnits={"degC", "degC"}); -createPlot(id=1, position={0, 0, 1421, 337}, y={"heaPum.QCon_flow"}, range={10000000.0, 11000000.0, -100.0, 800.0}, erase=false, grid=true, subPlot=3, colors={{28,108,200}}); - - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example7.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example7.mos deleted file mode 100644 index 32dcabb203..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example7.mos +++ /dev/null @@ -1,7 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example7", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-6, resultFile="Tutorial7"); - -createPlot(id=1, position={0, 0, 851, 533}, y={"rectangularZoneTemplate.TSensor", "rectangularZoneTemplate1.TSensor"}, range={10000000.0, 11000000.0, 13.0, 22.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); -createPlot(id=1, position={0, 0, 851, 175}, y={"heaPum.con.T", "senTemSup.T"}, range={10000000.0, 11000000.0, 0.0, 80.0}, erase=false, grid=true, subPlot=2, colors={{238,46,47}, {28,108,200}}, displayUnits={"degC", "degC"}); -createPlot(id=1, position={0, 0, 1421, 337}, y={"heaPum.QCon_flow"}, range={10000000.0, 11000000.0, -100.0, 800.0}, erase=false, grid=true, subPlot=3, colors={{28,108,200}}); - - diff --git a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example9.mos b/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example9.mos deleted file mode 100644 index 9e42025f8a..0000000000 --- a/IDEAS/Resources/Scripts/Dymola/Examples/Tutorial/Example9.mos +++ /dev/null @@ -1,7 +0,0 @@ -simulateModel("IDEAS.Examples.Tutorial.Example9", startTime=10000000, stopTime=11000000, numberOfIntervals=5000, method="LSodar", tolerance=1e-4, resultFile="Tutorial9"); - -createPlot(id=1, position={0, 0, 965, 656}, y={"rectangularZoneTemplate.ppm", "rectangularZoneTemplate1.ppm"}, range={10000000.0, 11000000.0, 200.0, 1200.0}, erase=false, grid=true, colors={{28,108,200}, {238,46,47}}); -createPlot(id=1, position={0, 0, 965, 326}, y={"conPID1.y", "conPID.y"}, range={10000000.0, 11000000.0, 0.0, 1.0}, erase=false, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); - - -