-
Notifications
You must be signed in to change notification settings - Fork 64
Closed
Description
In IDEAS.Buildings.Components.BaseClasses.ConvectiveHeatTransfer.ExteriorConvection, the convection coefficient switches suddenly for ceilings and floors when dT passes zero. This generates an event and can even cause chattering. Can we introduce the noEvent() operator?
if isCeiling then
if dT > 0 then
C = C_horz_buoyant;
else
C = C_horz_stable;
end if;
elseif isFloor then
if ndT < 0 then
C = C_horz_buoyant;
else
C = C_horz_stable;
end if;
else
C = C_vertical;
end if;
Changing the code is just changing it to:
if isCeiling then
if noEvent(dT > 0) then
C = C_horz_buoyant;
else
C = C_horz_stable;
end if;
elseif isFloor then
if noEvent(dT < 0) then
C = C_horz_buoyant;
else
C = C_horz_stable;
end if;
else
C = C_vertical;
end if;
But I have little idea on the impact on reference results now. Anyway, I feel like actually forcing an additional calculation at the exact time it passes zero isn't nececarry and it is worth consisdering iit n light of simulation speed.
Metadata
Metadata
Assignees
Labels
No labels