diff --git a/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/PumpParallel.mo b/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/PumpParallel.mo index 1a453d667ea..5a09764a965 100644 --- a/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/PumpParallel.mo +++ b/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/PumpParallel.mo @@ -108,9 +108,6 @@ equation connect(dp4.port_b, sin.ports[1]) annotation (Line(points={{40,-40},{76,-40},{76,42},{82,42}}, color={0,127,255})); - - for i in 1:numPum loop - end for; connect(y.y, pumPar2.u) annotation (Line(points={{-71,80},{-28,80},{-28,-36}, {-20,-36}}, color={0,0,127})); connect(dp2.port_b, sin.ports[2]) diff --git a/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/package.mo b/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/package.mo index 207f2ee452f..a6d74fb12d1 100644 --- a/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/package.mo +++ b/Buildings/Applications/DataCenters/ChillerCooled/Equipment/Validation/package.mo @@ -2,12 +2,20 @@ within Buildings.Applications.DataCenters.ChillerCooled.Equipment; package Validation "Collection of models that validate the Buildings.Applications.DataCenters.ChillerCooled package" extends Modelica.Icons.ExamplesPackage; - - - - - - - +annotation (preferredView="info", Documentation(info=" +
+This package contains validation models for the classes in + +Buildings.Applications.DataCenters.ChillerCooled.Equipment. +
++Note that most validation models contain simple input data +which may not be realistic, but for which the correct +output can be obtained through an analytic solution. +The examples plot various outputs, which have been verified against these +solutions. These model outputs are stored as reference data and +used for continuous validation whenever models in the library change. +
+")); end Validation; diff --git a/Buildings/Controls/OBC/CDL/Types/Day.mo b/Buildings/Controls/OBC/CDL/Types/Day.mo index 29a94b12158..87a4c0abb2d 100644 --- a/Buildings/Controls/OBC/CDL/Types/Day.mo +++ b/Buildings/Controls/OBC/CDL/Types/Day.mo @@ -3,10 +3,10 @@ type Day = enumeration( WorkingDay "Working day, such as Monday through Friday", NonWorkingDay "Non-working day, such as week-ends, but not holidays", Holiday "Holiday") "Enumeration for the day types" annotation ( - Documentation(info = " + Documentation(info="Enumeration for the type of days. -The possible values are +The possible values are:
+Enumeration for the type of extrapolation that is used when reading data from a table. +The possible values are: +
+ +Enumeration | +Description |
---|---|
HoldLastPoint |
++Hold the first or last point outside of the table scope. + |
LastTwoPoints |
++Extrapolate by using the derivative at the first or last table points outside of the table scope. + |
Periodic |
++Repeat the table scope periodically. + |
The following initialization alternatives are available:
- + Documentation(info=" ++Enumeration for the type of initialization that is used for state variables. +The possible values are: +
NoInit | No initialization (start values are used as guess values with fixed=false ) |
SteadyState | Steady state initialization (derivatives of states are zero) |
InitialState | Initialization with initial states |
InitialOutput | Initialization with initial outputs (and steady state of the states if possible) |
NoInit | No initialization (start values are used as guess values with fixed=false ).
+ |
InitialState |
+Initialization with initial states. |
InitialOutput |
+Initialization with initial outputs (and steady state of the states if possible). + |
-Enumeration to define the choice of integrator reset -(to be selected via choices menu): +Enumeration to define the choice of integrator reset. +Possible values are:
Enumeration | Description |
---|---|
Disabled | +|
Disabled |
Use this setting to disable the integrator reset. |
Parameter | +|
Parameter |
Use this setting to use reset the integrator to the value of the parameter. |
Input | +|
Input |
Use this setting to reset the integrator to the value obtained from the input signal. |
+Enumeration to define the type of the controller. +Possible values are: +
+Enumeration | +Description |
---|---|
P |
++Controller with proportional term. + |
PI |
++Controller with proportional and integral terms. + |
PD |
++Controller with proportional and derivative term. + |
PID |
++Controller with proportional, integral and derivative terms. + |
+Enumeration for the type of smoothness that is used when interpolating data from a table. +The possible values are: +
+ +Enumeration | +Description |
---|---|
LinearSegments |
++Linearly interpolate table points. + |
ConstantSegments |
++Do not interpolate, but rather use the previously tabulated value. + |
Consider a model consisting of a mass flow source Modelica.Fluid.Sources.MassFlowSource_T
, a fluid volume Buildings.Fluid.MixingVolumes.MixingVolume
and
a fixed boundary condition Buildings.Fluid.Sources.FixedBoundary
, connected in series as shown in the figure below. Note that the instance bou
implements an equation that sets the medium pressure at its port, i.e., the port pressure bou.ports.p
is fixed.
In Modelica, connecting fluid ports as shown below leads to ideal mixing at the junction. In some situation, such as the configuration below, connecting multiple connectors to a fluid port represents the physical phenomena that was intended to model.
-However, in more complex flow configurations, one may want to explicitly control what branches of a piping or duct network mix. This may be achieved by using an instance of the model -SplitterFixedResistanceDpM as shown in the left figure below, which is the test model +PressureDrop as shown in the left figure below, which is the test model BoilerPolynomialClosedLoop
-Fig. 2.3 Correct (left) and wrong (right) connection of components with use of a mixer or splitter model.
This section explains how to set a reference pressure for incompressible fluids. For fluids that model density as a function of temperature, the section also shows how to account for the thermal expansion of the fluid.
Consider the flow circuit shown below that consists of a pump or fan, a flow resistance and a volume.
-Fig. 2.4 Schematic diagram of a flow circuit without means
to set a reference pressure, or to account for
@@ -521,7 +521,7 @@ 2.4.3. Use of sensors in fluid flow systemsBuildings.Fluid.Storage.ExpansionVessel
to form the system model shown below.
Fig. 2.5 Schematic diagram of a flow circuit with expansion vessel that
adds a pressure source and accounts for the thermal expansion
@@ -537,7 +537,7 @@ 2.4.3. Use of sensors in fluid flow systemsBuildings.Fluid.Storage.ExpansionVessel conserves energy.
However, since the thermal expansion of the fluid is usually small, this effect can be neglected in most building HVAC applications.
Fig. 2.6 Schematic diagram of a flow circuit with a boundary model that adds
a fixed pressure source and accounts for any thermal expansion
@@ -588,7 +588,7 @@ Fig. 2.7 Schematic diagram of a controller that switches a coil on and off.
In the top configuration, the hysteresis avoids numerical problems
@@ -805,7 +805,7 @@ Fig. 2.9 Block diagram of part of the economizer control that computes the outside air damper
control signal. This implementation triggers many events. Fig. 2.10 Block diagram of part of the revised economizer control that computes the outside air damper
control signal. Links to papers that describe or used the Buildings library are available at http://simulationresearch.lbl.gov/modelica/publications.html.
The model documentation from the download page contains user guides that describe the individual packages of the Buildings library. The IEA EBC Annex 60 final report
+summarizes the development of Modelica models, approaches and tools
+for co-simulation based on the Functional Mockup Interface standard,
+Building Information Modeling technologies based on the Industry Foundation Classes,
+as well as tools for workflow automation.
+It also contains numerous examples that apply these technologies to the
+design and operation of building and community energy systems. For questions that are specific to Modelica but not the Buildings libray, see http://stackoverflow.com/search?q=modelica For questions that are specific to Modelica but not the Buildings libray, see https://stackoverflow.com/search?q=modelica In fluid flow systems, flow junctions where mass flow rates separate and mix can couple non-linear systems of equations. This leads to larger systems of coupled equations that need to be solved, which often causes larger computing time and can sometimes cause convergence problems.
-To decouple these systems of equations, in the model of a flow splitter or mixer (model Buildings.Fluid.FixedResistances.SplitterFixedResistanceDpM), or in models for fans or pumps (such as the model Buildings.Fluid.Movers.SpeedControlled_y), the parameter Suppose the parameters are2.4.5. Nominal ValuesFixedResistanceDpM.
+See PressureDrop.
@@ -730,7 +730,7 @@ m_flow_nominal
m_flow_small
2.6. Avoiding events
2.7. Controls¶
-
2.8.1. State events\(t=0.95e7\)
seconds,
there was a spike as shown in the figure below.2.8.1. State events
+
2.8.1. State events\(0.2\) Kelvin, and now the model runs fine
for the whole year.
-
2.8.2. State variables that dominate the error controlef410ee),
the simulation time was very slow during part of the
simulation, as shown in Fig. 2.11.
-
1.1. Literature for UsersAlthough the Modelica Language Tutorial is for an older version (Modelica 1.4), it is still instructive and relevant to understand the concepts of the language.
1.2. Literature for Developers¶
diff --git a/Buildings/Resources/Documentation/userGuide/build/html/help.html b/Buildings/Resources/Documentation/userGuide/build/html/help.html
index b96cd8369ae..84f7a77d82f 100644
--- a/Buildings/Resources/Documentation/userGuide/build/html/help.html
+++ b/Buildings/Resources/Documentation/userGuide/build/html/help.html
@@ -197,7 +197,7 @@ 6. HelpFor general questions regarding the Buildings library, use
https://unmethours.com/questions/.
This is an open group and everyone can join it. No invitation is needed.
-
3.1. Avoiding step changes
3.2. Breaking algebraic loops¶
dynamicBalance
can be set to true
. This adds a control volume at the fluid junction that can decouple the system of equations.dynamicBalance
can be set to true
. This adds a control volume at the fluid junction that can decouple the system of equations.
3.3. Reducing nonlinear equations of serially connected flow resistances¶
@@ -258,7 +258,7 @@ 3.3. Reducing nonlinear equations of serially connected flow resistancesFig. 3.4 Schematic diagram of a fixed flow resistance and a valve in series that connect a source and a volume.
Buildings.Fluid.FixedResistances.FixedResistanceDpM res(
+
Buildings.Fluid.FixedResistances.PressureDrop res(
redeclare package Medium = Medium,
m_flow_nominal=0.2,
dp_nominal=10000);
diff --git a/Buildings/Resources/Documentation/userGuide/source/bestPractice.rst b/Buildings/Resources/Documentation/userGuide/source/bestPractice.rst
index 1b1dd86cc57..a2218f71d63 100644
--- a/Buildings/Resources/Documentation/userGuide/source/bestPractice.rst
+++ b/Buildings/Resources/Documentation/userGuide/source/bestPractice.rst
@@ -231,7 +231,7 @@ In some situation, such as the configuration below, connecting multiple connecto
Connection of three components without explicitly introducing a mixer or splitter model.
However, in more complex flow configurations, one may want to explicitly control what branches of a piping or duct network mix. This may be achieved by using an instance of the model
-`SplitterFixedResistanceDpM