Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
87c7d70
Renamed time series files to .mos
mwetter Sep 10, 2025
98de486
Updated reference results
mwetter Sep 11, 2025
2031f14
Updated reference results for Dymola 2026x beta2
mwetter Sep 15, 2025
0da4636
Merge branch 'master' into issue4339_dymola2026xBeta
mwetter Sep 15, 2025
279a3d7
Updated reference results for Dymola 2026x beta2
mwetter Sep 15, 2025
67c3965
Updated reference results for Dymola 2026x beta2
mwetter Sep 15, 2025
a929619
Added missing header file for Python API
mwetter Sep 15, 2025
ff060ba
Added new line
mwetter Sep 15, 2025
883b9e2
Updated comment
mwetter Sep 15, 2025
60610da
Added files for build system
mwetter Sep 15, 2025
62d6cac
Merge branch 'master' into issue4339_dymola2026xBeta
mwetter Sep 16, 2025
46d7d7e
Updated for Python 3.12
mwetter Sep 16, 2025
a335ee1
Merged IBPSA, issue2043_TwoWayFlowElement
mwetter Sep 19, 2025
5a2a7c0
Merged IBPSA, issue2043_TwoWayFlowElement
mwetter Sep 19, 2025
8727c95
Merged IBPSA, issue2043_TwoWayFlowElement
mwetter Sep 19, 2025
bd1136d
Merged IBPSA, issue2043_TwoWayFlowElement
mwetter Sep 19, 2025
ef8b78f
Updated reference results
mwetter Sep 19, 2025
f16d220
Updated copied files
mwetter Sep 19, 2025
8b900e9
Updated revision notes
mwetter Sep 19, 2025
db0e94b
Added Python 3.12 support, moved Python 3.8 to Obsolete
mwetter Sep 19, 2025
f7611c9
Marked as obsolete
mwetter Sep 19, 2025
39294d4
Added mos scripts
mwetter Sep 19, 2025
e5cd7ad
Removed Python 3.6 files
mwetter Sep 19, 2025
de81260
Added unbounded=true
mwetter Sep 22, 2025
8f2b66d
Updated revision notes to avoid merge conflict with IBPSA
mwetter Sep 22, 2025
3f5c55a
Updated reference results
mwetter Sep 22, 2025
72ce297
Merged IBPSASync_issue2043_TwoWayFlowElement
mwetter Sep 22, 2025
63e52ec
Updated reference results for Dymola 2026x beta2
mwetter Sep 22, 2025
12ae7c6
Merged master
mwetter Sep 29, 2025
1be9f1f
Merged master
mwetter Jan 26, 2026
41e4cc2
Merge branch 'master' into issue4339_dymola2026xBeta
mwetter Jan 27, 2026
299dede
Updated reference results for dymola 2026x
mwetter Jan 27, 2026
6752e15
Updated reference results for Dymola 2026x
mwetter Jan 28, 2026
e56854c
Updated Dymola image to 2026x
mwetter Jan 28, 2026
80243fc
Removed Advanced.FMI flag. This was only needed for beta version
mwetter Jan 29, 2026
a327f02
Excluded Python 3.8
mwetter Jan 29, 2026
be06428
Merge remote-tracking branch 'upstream/master' into issue4304_HybridA…
karthikeyad-pnnl Feb 4, 2026
32ee9c7
Fixed issues with model compilation
karthikeyad-pnnl Feb 4, 2026
a3ed3f6
Added new validation model for hybrid heat pump plant
karthikeyad-pnnl Feb 4, 2026
703f66a
Backing up files after modifying control modules and related template…
karthikeyad-pnnl Feb 16, 2026
4b83165
Added template component for 4-pipe ASHP
karthikeyad-pnnl Feb 16, 2026
6ccbb5f
Added missing baseclasses for 4-pipe ASHP template component
karthikeyad-pnnl Feb 16, 2026
d7e92fc
improved ill-posed integer rounding
JayHuLBL Feb 18, 2026
e38af4d
Updated heat pump data record with additional performance data class …
karthikeyad-pnnl Feb 19, 2026
1ca22e5
corrected implementation
JayHuLBL Feb 19, 2026
4387d07
corrected implementation
JayHuLBL Feb 20, 2026
5083fc3
Backing up files for testing on Linux environment
karthikeyad-pnnl Feb 21, 2026
75de412
Updated parameter in hybrid plant controller template component to fi…
karthikeyad-pnnl Feb 21, 2026
3fbf11d
updated references
JayHuLBL Feb 23, 2026
bf0bc16
improved implementation
JayHuLBL Feb 23, 2026
6bc4040
fixed the bug
JayHuLBL Feb 24, 2026
20bb880
updated references
JayHuLBL Feb 25, 2026
e555bc4
updated reference
JayHuLBL Feb 26, 2026
a911563
simplified implementation
JayHuLBL Feb 27, 2026
e5d2271
updated references
JayHuLBL Feb 27, 2026
59d4f5e
Backing up working files for hybrid heat pump plant
karthikeyad-pnnl Feb 27, 2026
2bdd6da
Moved validation model to separate package for testing on linux
karthikeyad-pnnl Feb 28, 2026
2d12067
Backing up other changes when hybrid plant is working
karthikeyad-pnnl Feb 28, 2026
bf9e5e5
Moved validation model back to original location
karthikeyad-pnnl Feb 28, 2026
911a941
Removed empty package
karthikeyad-pnnl Feb 28, 2026
412ec39
Removed unused interfaces and buses
karthikeyad-pnnl Mar 1, 2026
eccd74a
Added two dummy instances for parameter propagation debugging
karthikeyad-pnnl Mar 2, 2026
4b5c99f
Uploading latest working model for hybrid plant. Parameter non-propag…
karthikeyad-pnnl Mar 2, 2026
8520cd5
Merged master [ci_skip]
mwetter Mar 2, 2026
74438d4
updated references
JayHuLBL Mar 2, 2026
cc7e313
Removed start values that couldn't be evauluated. Fixed missing param…
karthikeyad-pnnl Mar 3, 2026
9690319
Removed start values that couldn't be evaluated. Fixed compilation is…
karthikeyad-pnnl Mar 3, 2026
d96ecaf
Refactored code to use only CDL blocks. Removed dummy instances from …
karthikeyad-pnnl Mar 3, 2026
17914ba
Updated validation model with additional sensors. Updated variables i…
karthikeyad-pnnl Mar 4, 2026
222b0fb
Adding and updating reference results for unit tests
karthikeyad-pnnl Mar 4, 2026
f2838b6
Merge remote-tracking branch 'upstream/issue4304_HybridAirSourceHeatP…
karthikeyad-pnnl Mar 4, 2026
25ac2a1
Reverted to files from master
mwetter Mar 6, 2026
dd72d2f
improved implementation
JayHuLBL Mar 6, 2026
bbf843f
Merge branch 'issue4480_integerRounding' of https://github.com/lbl-sr…
JayHuLBL Mar 6, 2026
7559885
reverted results changes
JayHuLBL Mar 6, 2026
fe2aaa3
Increased timeout
mwetter Mar 7, 2026
0ec548d
Merge pull request #4462 from lbl-srg/issue4339_dymola2026xBeta
mwetter Mar 9, 2026
7d3371d
Merge branch 'master' into issue4347_python_3_12
mwetter Mar 9, 2026
763e795
merged master
JayHuLBL Mar 9, 2026
cbb6685
updated windows binaries
JayHuLBL Mar 9, 2026
4606f66
updated conf.yml
JayHuLBL Mar 10, 2026
8e7a33b
corrected package order
JayHuLBL Mar 10, 2026
d57594e
renamed openmodelica scripts
JayHuLBL Mar 10, 2026
cb0730f
changed file permission
JayHuLBL Mar 10, 2026
b45ef02
Merge pull request #4485 from lbl-srg/issue4480_integerRounding
mwetter Mar 10, 2026
3c96c62
Updated MSL to 4.1.0
mwetter Mar 10, 2026
990e17f
Updated OCT image to 1.66
mwetter Mar 10, 2026
257db23
updated conf.yml file
JayHuLBL Mar 11, 2026
195671d
Updated conf.yml for Optimica 1.66
mwetter Mar 11, 2026
ad4273c
Merge pull request #4493 from lbl-srg/issue4347_python_3_12
mwetter Mar 12, 2026
8cc9f2f
Merge branch 'master' into issue4494_msl_410_optimica_1_66
mwetter Mar 12, 2026
f4a8473
Set Templates.AirHandlersFans.Validation.VAVMultiZone to exclude list…
mwetter Mar 14, 2026
3228924
Move zoning parameter declarations into controller record
AntoineGautier Mar 16, 2026
88e7ea4
Merge pull request #4495 from lbl-srg/issue4494_msl_410_optimica_1_66
mwetter Mar 16, 2026
c21378c
Resolved bugs identified in closed-loop testing. Changed unresolved i…
karthikeyad-pnnl Mar 19, 2026
b0c8a19
Merge branch 'master' of github.com:lbl-srg/modelica-buildings into i…
AntoineGautier Mar 19, 2026
c6b478a
Corrected type specification for g-function
mwetter Mar 20, 2026
d8683d4
Added filter for removing pulse-like enable signals when plant switch…
karthikeyad-pnnl Mar 20, 2026
a859211
Added more override parameters for disabling redundant sensors in clo…
karthikeyad-pnnl Mar 20, 2026
871416d
Manually connected external sensors to plant bus for controller input
karthikeyad-pnnl Mar 20, 2026
dc18485
Merge pull request #4508 from lbl-srg/issue4501_gFunctions
mwetter Mar 22, 2026
c8d6753
Merge pull request #4500 from lbl-srg/issue4497_fixClassMod
mwetter Mar 30, 2026
fe0b373
Avoided unsafe array access that relied on short-circuiting
mwetter Mar 30, 2026
74cb089
removed redundant not init() condition
JayHuLBL Mar 30, 2026
d61fe8d
merged ibpsa models
JayHuLBL Mar 30, 2026
0fe651f
Merge pull request #4520 from lbl-srg/issue4516_partialCapacity
mwetter Apr 1, 2026
88e8235
Fixed bugs with pump control
karthikeyad-pnnl Apr 2, 2026
d15089c
Fixed formatting
karthikeyad-pnnl Apr 2, 2026
0346e01
Merge pull request #4524 from lbl-srg/issue4480_omcWarning
mwetter Apr 2, 2026
3d86971
Merge branch 'lbl-srg:master' into issue4304_HybridAirSourceHeatPumpP…
karthikeyad-pnnl Apr 3, 2026
b60b53e
Updated pressure drop on 4-pipe ASHP to balance flows in primary loop
karthikeyad-pnnl Apr 3, 2026
26b24fb
Updated plant to use new template component for 4-pipe ASHP. Needs up…
karthikeyad-pnnl Apr 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ env:
- DOCKER_REPONAME=lbnlblum
- BUILDINGSPY_VERSION=BuildingsPy@v5.2.0
- OMC_VERSION=ubuntu-2204-omc:1.24.0-1
- OPTIMICA_VERSION=travis-ubuntu-2204-optimica:1.55.11_rev-1
- DYMOLA_VERSION=travis_ubuntu-2004_dymola:2025x-x86_64_rev-2
- OPTIMICA_VERSION=travis-ubuntu-2404-optimica:1.66
- DYMOLA_VERSION=travis_ubuntu-2404_dymola:2026x-x86_64
- ENERGYPLUS_9_6_0=EnergyPlus-9.6.0-f420c06a69-Linux-Ubuntu20.04-x86_64
- ENERGYPLUS_23_1_0=EnergyPlus-23.1.0-87ed9199d4-Linux-Ubuntu20.04-x86_64
- MODELICA_JSON_VERSION=6d950c3592fa021aa914ba4ff34a67cbb69962c6
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,24 @@ protected
parameter Boolean canRepeatWeatherFile = abs(mod(lenWea, 365*24*3600)) < 1E-2
"=true, if the weather file can be repeated, since it has the length of a year or a multiple of it";

discrete Modelica.Units.SI.Time tNext(start=0, fixed=true)
discrete Modelica.Units.SI.Time tNext
"Start time of next period";

Integer k "Period index";

initial equation
k = integer(modTimAux/lenWea)+1;
tNext = if canRepeatWeatherFile then k * lenWea else time;

equation
when {initial(), canRepeatWeatherFile and modTimAux > pre(tNext)} then
// simulation time stamp went over the end time of the weather file
//(last time stamp of the weather file + average increment)
tNext = if canRepeatWeatherFile then integer(modTimAux/lenWea)*lenWea + lenWea else time;
// simulation time stamp went over the end time of the weather file
// (last time stamp of the weather file + average increment)
when (canRepeatWeatherFile and modTimAux > pre(tNext)) then
k = pre(k) + 1;
tNext = k * lenWea;
end when;
calTimAux = if canRepeatWeatherFile then modTimAux - tNext + lenWea else modTimAux;

calTimAux = if canRepeatWeatherFile then modTimAux - tNext + lenWea else modTimAux;

annotation (
defaultComponentName="conTim",
Expand All @@ -38,6 +45,12 @@ or a multiple of it, if this is the length of the weather file.
</html>", revisions="<html>
<ul>
<li>
February 18, 2026, by Jianjun Hu:<br/>
Improved ill-posed integer rounding.<br/>
This is for <a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4480\">Buildings #4480</a>
and <a href=\"https://github.com/ibpsa/modelica-ibpsa/issues/2088\">IBPSA #2088</a>.
</li>
<li>
March 27, 2023, by Ettore Zanetti:<br/>
Added partial class for conversion from simulation time to calendar time, to be
used by solar models that require calendar time for calculations.<br/>
Expand Down
16 changes: 11 additions & 5 deletions Buildings/Fluid/DXSystems/Cooling/BaseClasses/PartialCapacity.mo
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,9 @@ equation
// Hence, the test starts with stage == iSta.
for iSta in 1:nSta loop
// Check whether data are outside of bounds
when ( stage == iSta and pre(checkBoundsTEva[stage])) then
when ( stage == iSta and pre(checkBoundsTEva[iSta])) then
assert(
not (TEvaIn > sta[stage].perCur.TEvaInMax or TEvaIn < sta[stage].perCur.TEvaInMin),
not (TEvaIn > sta[iSta].perCur.TEvaInMax or TEvaIn < sta[iSta].perCur.TEvaInMin),
"*** Warning: Evaporator temperature TEvaIn is out of bounds in DX coil model at time = "
+ String(time) + ".
stage = " + String(iSta) + "
Expand All @@ -134,9 +134,9 @@ equation
level=AssertionLevel.warning);
checkBoundsTEva[iSta] = false;
end when;
when ( stage == iSta and pre(checkBoundsTCon[stage])) then
when ( stage == iSta and pre(checkBoundsTCon[iSta])) then
assert(
not (TConIn > sta[stage].perCur.TConInMax or TConIn < sta[stage].perCur.TConInMin),
not (TConIn > sta[iSta].perCur.TConInMax or TConIn < sta[iSta].perCur.TConInMin),
"*** Warning: Condenser temperature TConIn is out of bounds in DX coil model at time = "
+ String(time) + ".
stage = " + String(iSta) + "
Expand All @@ -153,7 +153,7 @@ equation
end when;
end for;

if stage > 0 then
if stage > 0 then
for iSta in 1:nSta loop

// Compute performance
Expand Down Expand Up @@ -395,6 +395,12 @@ so that both are zero if <i>ff &lt; ff<sub>min</sub>/4</i>, where
revisions="<html>
<ul>
<li>
March 30, 2026, by Michael Wetter:<br/>
Avoided unsafe array access that relied on short-circuiting.<br/>
This is for
<a href=\"https://github.com/ibpsa/modelica-ibpsa/issues/4516\">issue 4516</a>.
</li>
<li>
April 5, 2023, by Xing Lu:<br/>
Changed class name from <code>PartialCoolingCapacity</code> to
<code>PartialCoilCapacity</code>.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ model TemperatureResponseMatrix
"This validation case test the calculation, writing and reading of the temperature step response"
extends Modelica.Icons.Example;

parameter Modelica.Units.SI.Time timSer[26 + 50,2]=
parameter Real timSer[26 + 50,2]=
Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.LoadAggregation.temperatureResponseMatrix(
nBor=1,
cooBor={{0,0}},
Expand All @@ -20,7 +20,7 @@ model TemperatureResponseMatrix
ttsMax=exp(5),
sha="TemperatureResponseMatrix_validation",
forceGFunCalc=true) "Resulting temperature response matrix";
Modelica.Units.SI.ThermalResistance TStep "Temperature step response";
Real TStep "Temperature step response";

equation
TStep = Modelica.Math.Vectors.interpolate(timSer[:,1],timSer[:,2],time);
Expand All @@ -38,6 +38,13 @@ the course of the first year.
</html>", revisions="<html>
<ul>
<li>
March 20, 2026, by Michael Wetter:<br/>
Corrected type declaration of g-function.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4501\">
Buildings, #4501</a>.
</li>
<li>
July 18, 2018, by Alex Laferri&egrave;re:<br/>
First implementation.
</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ function aggregationWeightingFactors

input Integer i "Size of aggregation vector";
input Integer nTimTot "Size of g-function time table";
input Modelica.Units.SI.ThermalResistance TStep[nTimTot,2]
input Real TStep[nTimTot,2]
"Time matrix with TStep";
input Modelica.Units.SI.Time nu[i] "Aggregation time vector nu";

Expand Down Expand Up @@ -76,6 +76,13 @@ borefield as an input.
</html>", revisions="<html>
<ul>
<li>
March 20, 2026, by Michael Wetter:<br/>
Corrected type declaration of g-function.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4501\">
Buildings, #4501</a>.
</li>
<li>
March 5, 2018, by Alex Laferri&egrave;re:<br/>
First implementation.
</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ impure function temperatureResponseMatrix
input Boolean forceGFunCalc
"Set to true to force the thermal response to be calculated at the start";

output Modelica.Units.SI.ThermalResistance TStep[nTimTot,2]
output Real TStep[nTimTot,2]
"Temperature step-response time series";

protected
Expand Down Expand Up @@ -103,6 +103,13 @@ conductivity of the soil.
</html>", revisions="<html>
<ul>
<li>
March 20, 2026, by Michael Wetter:<br/>
Corrected type declaration of g-function.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4501\">
Buildings, #4501</a>.
</li>
<li>
December 11, 2021, by Michael Wetter:<br/>
Added <code>impure</code> declaration for MSL 4.0.0.
</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ model TemperatureResponseMatrix
"This validation case tests the calculation of thermal resposne factors"
extends Modelica.Icons.Example;

parameter Modelica.Units.SI.Time kappa[8,8,7]=
parameter Real kappa[8,8,7]=
Buildings.Fluid.Geothermal.ZonedBorefields.BaseClasses.HeatTransfer.temperatureResponseMatrix(
nBor=3,
cooBor={{0,0}, {0,5}, {5,0}},
Expand Down Expand Up @@ -31,6 +31,13 @@ boreholes divided into 2 zones.
</html>", revisions="<html>
<ul>
<li>
March 20, 2026, by Michael Wetter:<br/>
Corrected type declaration of g-function.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4501\">
Buildings, #4501</a>.
</li>
<li>
February 2024, by Massimo Cimmino:<br/>
First implementation.
</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ impure function temperatureResponseMatrix
input Real relTol = 0.02 "Relative tolerance on distance between boreholes";
input String sha "SHA-1 encryption of the arguments of this function";

output Modelica.Units.SI.ThermalResistance kappa[nZon*nSeg,nZon*nSeg,nTim] "Thermal response factor matrix";
output Real kappa[nZon*nSeg,nZon*nSeg,nTim] "Thermal response factor matrix";

protected
String fileName[nZon*nSeg] = {
Expand Down Expand Up @@ -275,6 +275,13 @@ doi:10.1080/19401493.2021.1968953</a>.
</html>", revisions="<html>
<ul>
<li>
March 20, 2026, by Michael Wetter:<br/>
Corrected type declaration of g-function.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4501\">
Buildings, #4501</a>.
</li>
<li>
February 2024, by Massimo Cimmino:<br/>
First implementation.
</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,32 +21,32 @@ record Generic
"File where performance data are stored - SHC mode (single module)"
annotation (Dialog(loadSelector(filter="Text files (*.txt)",caption=
"Open file in which table is present")));
parameter String tabNamQHea[nPLRHea]={"q@" + String(p,
parameter String tabNamQHea[:]={"q@" + String(p,
format=".2f") for p in PLRHeaSor}
"Table names with heat flow rate data - Heating mode"
annotation (Evaluate=true,
Dialog(tab="Advanced"));
parameter String tabNamPHea[nPLRHea]={"p@" + String(p,
parameter String tabNamPHea[:]={"p@" + String(p,
format=".2f") for p in PLRHeaSor}
"Table names with power data - Heating mode"
annotation (Evaluate=true,
Dialog(tab="Advanced"));
parameter String tabNamQCoo[nPLRCoo]={"q@" + String(p,
parameter String tabNamQCoo[:]={"q@" + String(p,
format=".2f") for p in PLRCooSor}
"Table names with heat flow rate data - Cooling mode"
annotation (Evaluate=true,
Dialog(tab="Advanced"));
parameter String tabNamPCoo[nPLRCoo]={"p@" + String(p,
parameter String tabNamPCoo[:]={"p@" + String(p,
format=".2f") for p in PLRCooSor}
"Table names with power data - Cooling mode"
annotation (Evaluate=true,
Dialog(tab="Advanced"));
parameter String tabNamQShc[nPLRShc]={"q@" + String(p,
parameter String tabNamQShc[:]={"q@" + String(p,
format=".2f") for p in PLRShcSor}
"Table names with cooling heat flow rate data - SHC mode"
annotation (Evaluate=true,
Dialog(tab="Advanced"));
parameter String tabNamPShc[nPLRShc]={"p@" + String(p,
parameter String tabNamPShc[:]={"p@" + String(p,
format=".2f") for p in PLRShcSor}
"Table names with power data - SHC mode"
annotation (Evaluate=true,
Expand Down Expand Up @@ -74,15 +74,15 @@ record Generic
final parameter Integer nPLRShc=size(PLRShcSup, 1)
"Number of PLR support points - SHC"
annotation (Evaluate=true);
final parameter Real PLRHeaSor[nPLRHea]=Modelica.Math.Vectors.sort(PLRHeaSup)
final parameter Real PLRHeaSor[:]=Modelica.Math.Vectors.sort(PLRHeaSup)
"PLR values in increasing order - Heating";
final parameter Real PLRHea_max=PLRHeaSor[nPLRHea]
"Maximum PLR";
final parameter Real PLRCooSor[nPLRCoo]=Modelica.Math.Vectors.sort(PLRCooSup)
final parameter Real PLRCooSor[:]=Modelica.Math.Vectors.sort(PLRCooSup)
"PLR values in increasing order - Cooling";
final parameter Real PLRCoo_max=PLRCooSor[nPLRCoo]
"Maximum PLR - Cooling mode";
final parameter Real PLRShcSor[nPLRShc]=Modelica.Math.Vectors.sort(PLRShcSup)
final parameter Real PLRShcSor[:]=Modelica.Math.Vectors.sort(PLRShcSup)
"PLR values in increasing order - SHC";
annotation (
defaultComponentPrefixes="parameter",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,6 @@ model TableData2DLoadDep
period=5400)
"Heat pump enable and heating mode command"
annotation (Placement(transformation(extent={{-180,130},{-160,150}})));
Buildings.Controls.OBC.CDL.Reals.Switch TSetAct(
y(final unit="K",
displayUnit="degC"))
"Active supply temperature setpoint"
annotation (Placement(transformation(extent={{-40,110},{-20,130}})));
Buildings.Controls.OBC.CDL.Reals.Sources.Sin TChiWatRet(
amplitude=TChiWatRet_nominal - hp.TConCoo_nominal,
freqHz=3 / 3000,
Expand Down Expand Up @@ -255,10 +250,6 @@ model TableData2DLoadDep
nPorts=1) "Boundary conditions of ambient-side fluid at HP inlet"
annotation (Placement(transformation(extent={{10,-150},{30,-130}})));
equation
connect(TChiWatSupSet.y, TSetAct.u3)
annotation (Line(points={{-68,120},{-64,120},{-64,112},{-42,112}},color={0,0,127}));
connect(THeaWatSupSet.y, TSetAct.u1)
annotation (Line(points={{-68,160},{-60,160},{-60,128},{-42,128}},color={0,0,127}));
connect(THeaWatRet.y, TRetAct.u1)
annotation (Line(points={{-68,80},{-60,80},{-60,68},{-42,68}},color={0,0,127}));
connect(TChiWatRet.y, TRetAct.u3)
Expand All @@ -283,8 +274,6 @@ equation
annotation (Line(points={{-18,-80},{0,-80},{0,-36},{8,-36}},color={0,0,127}));
connect(pInl_rel1.y,inlHpAmb. p_in)
annotation (Line(points={{-18,-160},{-10,-160},{-10,-32},{8,-32}},color={0,0,127}));
connect(TSetAct.y, hp.TSet)
annotation (Line(points={{-18,120},{80,120},{80,-2.3},{97.9,-2.3}}, color={0,0,127}));
connect(TRet.port_b, hp.port_a1)
annotation (Line(points={{70,0},{86,0},{86,-0.2},{100,-0.2}},color={0,127,255}));
connect(TSup.port_a, hp.port_b1)
Expand All @@ -296,7 +285,7 @@ equation
connect(retAmb.ports[1], hp.port_b2)
annotation (Line(points={{170,-61},{90,-61},{90,-12.8},{100,-12.8}},color={0,127,255}));
connect(y1.y[1], hp.on)
annotation (Line(points={{-158,140},{82,140},{82,-6.5},{97.9,-6.5}}, color={255,0,255}));
annotation (Line(points={{-158,140},{82,140},{82,-8.6},{97.9,-8.6}}, color={255,0,255}));
connect(inlHp.ports[1], TRet.port_a)
annotation (Line(points={{30,0},{50,0}},color={0,127,255}));
connect(TRet1.port_b, hpNrv.port_a1)
Expand All @@ -305,7 +294,7 @@ equation
annotation (Line(points={{130,-100},{126,-100},{126,-100.2},{121,-100.2}},
color={0,127,255}));
connect(y1.y[1], hpNrv.on)
annotation (Line(points={{-158,140},{82,140},{82,-106.5},{97.9,-106.5}},
annotation (Line(points={{-158,140},{82,140},{82,-108.6},{97.9,-108.6}},
color={255,0,255}));
connect(inlHp1.ports[1], TRet1.port_a)
annotation (Line(points={{30,-100},{50,-100}},color={0,127,255}));
Expand All @@ -320,22 +309,24 @@ equation
annotation (Line(points={{-108,-80},{-60,-80},{-60,-136},{8,-136}},color={0,0,127}));
connect(THeaWatRet.y, inlHp1.T_in)
annotation (Line(points={{-68,80},{-4,80},{-4,-96},{8,-96}},color={0,0,127}));
connect(THeaWatSupSet.y, hpNrv.TSet)
annotation (Line(points={{-68,160},{84,160},{84,-102.3},{97.9,-102.3}},
color={0,0,127}));
connect(y1.y[2], TSetAct.u2)
annotation (Line(points={{-158,140},{-50,140},{-50,120},{-42,120}},color={255,0,255}));
connect(THeaWatSupSet.y, hpNrv.THwSet) annotation (Line(points={{-68,160},{84,
160},{84,-102.3},{97.9,-102.3}}, color={0,0,127}));
connect(y1.y[2], TRetAct.u2)
annotation (Line(points={{-158,140},{-50,140},{-50,60},{-42,60}},color={255,0,255}));
connect(y1.y[2], pInl_rel.u2)
annotation (Line(points={{-158,140},{-50,140},{-50,-20},{-42,-20}},color={255,0,255}));
connect(y1.y[2], pInl_rel1.u2)
annotation (Line(points={{-158,140},{-50,140},{-50,-160},{-42,-160}},color={255,0,255}));
connect(y1.y[2], hp.hea)
annotation (Line(points={{-158,140},{82,140},{82,-8.6},{97.9,-8.6}}, color={255,0,255}));
annotation (Line(points={{-158,140},{82,140},{82,-10.7},{97.9,-10.7}},
color={255,0,255}));
connect(y1.y[2],TAmbAct. u2)
annotation (Line(points={{-158,140},{-86,140},{-86,146},{-50,146},{-50,-80},{-42,-80}},
color={255,0,255}));
connect(TChiWatSupSet.y, hp.TChwSet) annotation (Line(points={{-68,120},{80,
120},{80,-6.5},{97.9,-6.5}}, color={0,0,127}));
connect(THeaWatSupSet.y, hp.THwSet) annotation (Line(points={{-68,160},{84,
160},{84,-2.3},{97.9,-2.3}}, color={0,0,127}));
annotation (
Diagram(
coordinateSystem(
Expand Down Expand Up @@ -367,6 +358,13 @@ heat pump (component <code>hpNrv</code>) or a reversible heat pump
revisions="<html>
<ul>
<li>
March 23, 2026, by Antoine Gautier:<br/>
Refactored with two separate connectors
for HW and CHW temperature setpoints.<br/>
This is for
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4507\">#4507</a>.
</li>
<li>
July 1, 2025, by Antoine Gautier:<br/>
First implementation.
</li>
Expand Down
Loading