From 6ec6057eeba096d084305404e15e4b6c445c37a7 Mon Sep 17 00:00:00 2001 From: Lucas Verleyen Date: Wed, 12 Jun 2024 12:01:48 +0200 Subject: [PATCH 01/14] remove limiter block --- IDEAS/Buildings/Components/Shading/Screen.mo | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/IDEAS/Buildings/Components/Shading/Screen.mo b/IDEAS/Buildings/Components/Shading/Screen.mo index 1e4627cca..e77c15e2d 100644 --- a/IDEAS/Buildings/Components/Shading/Screen.mo +++ b/IDEAS/Buildings/Components/Shading/Screen.mo @@ -2,7 +2,7 @@ within IDEAS.Buildings.Components.Shading; model Screen "Controllable exterior screen" extends IDEAS.Buildings.Components.Shading.Interfaces.PartialShadingDevice( TSha = TShaScreen, - TDryBul_internal = limiter.y*TSha + (1-limiter.y)*Te_internal, + TDryBul_internal = Ctrl*TSha + (1-Ctrl)*Te_internal, epsSw_shading = 1 - shaCorr, final controlled = true, TEnvExpr(y = TEnv_screen), @@ -12,10 +12,8 @@ model Screen "Controllable exterior screen" "Shortwave transmittance of the screen"; protected - Modelica.Units.SI.Temperature TEnv_screen = limiter.y*TSha + (1-limiter.y)*TEnv_internal + Modelica.Units.SI.Temperature TEnv_screen = Ctrl*TSha + (1-Ctrl)*TEnv_internal "Assuming the environment temperature is a weighted average of the shading device temperature and the ambient temperature"; - Modelica.Blocks.Nonlinear.Limiter limiter(uMin=0, uMax=1) - "Limits the control signal to avoid incorrect use by the user"; // This assumes that the window rejects 1-g_glazing of the incoming solar irradation is entirely converted into sensible heat Modelica.Units.SI.Temperature TShaScreen = Te_internal + (HSha*(1-g_glazing) + (H - HSha) * epsSw_shading) /hSha "Modified shading device heat balance"; @@ -23,11 +21,10 @@ initial equation assert(shaCorr + epsSw_shading <= 1, "In " + getInstanceName() + ": The sum of the screen transmittance 'shaCorr' and absorptance 'epsSw_shading' is larger than one. This is non-physical."); equation - HShaDirTil = HDirTil*(1 - limiter.y); - HShaSkyDifTil = HSkyDifTil*(1 - limiter.y) + HSkyDifTil*limiter.y*shaCorr + HDirTil*limiter.y*shaCorr; - HShaGroDifTil = HGroDifTil*(1 - limiter.y) + HGroDifTil*limiter.y*shaCorr; + HShaDirTil = HDirTil*(1 - Ctrl); + HShaSkyDifTil = HSkyDifTil*(1 - Ctrl) + HSkyDifTil*Ctrl*shaCorr + HDirTil*Ctrl*shaCorr; + HShaGroDifTil = HGroDifTil*(1 - Ctrl) + HGroDifTil*Ctrl*shaCorr; - connect(limiter.u, Ctrl); connect(angInc, iAngInc) annotation (Line(points={{-60,-50},{-14,-50},{-14, -50},{40,-50}}, color={0,0,127})); annotation ( @@ -41,6 +38,10 @@ A fraction shaCorr is converted into diffuse light that enters the ", revisions="