-
Notifications
You must be signed in to change notification settings - Fork 466
Relax leaf area index (LAI) range for the IndoorLivingWall module #11451
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 6 commits
c6471c7
ab09e04
5f8ecf4
4a1de65
3bc0a8a
e71d6aa
00374d6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -410,27 +410,27 @@ namespace IndoorGreen { | |
| // SUBROUTINE PARAMETER DEFINITIONS: | ||
| static constexpr std::string_view RoutineName("ETModel: "); | ||
| auto &lw = state.dataIndoorGreen; | ||
| Real64 ZonePreTemp; // Indoor air temperature (C) | ||
| Real64 ZonePreHum; // Indoor humidity ratio (kg moisture / kg dry air) | ||
| Real64 ZoneNewTemp; // Indoor air temperature (C) after ET | ||
| Real64 ZoneNewHum; // Indoor humidity ratio (kg moisture / kg dry air) after ET | ||
| Real64 ZoneSatHum; // Saturated humidity ratio | ||
| Real64 ZoneCO2; // Indoor zone co2 concentration (ppm) | ||
| Real64 ZonePPFD; // Indoor net radiation (PPFD) | ||
| Real64 ZoneVPD; // vapor pressure deficit (kpa); local variable | ||
| Real64 Timestep; // s | ||
| Real64 ETTotal; // kg | ||
| Real64 rhoair; // kg/m3 | ||
| Real64 Tdp; // dew point temperature | ||
| Real64 Twb; // wet bulb temperature | ||
| Real64 HCons; // enthalpy (J/kg) | ||
| Real64 HMid; // enthalpy 3rd point (J/kg) | ||
| Real64 ZoneAirVol; // zone air volume (m3) | ||
| Real64 LAI; // leaf area index, the ratio of one-side leaf area per unit plant growing area, maximum LAI =2 if LAI_cal>2.0 | ||
| Real64 LAI_Cal; // calculated leaf area index based on users's input on total leaf area | ||
| Real64 OutPb; // outdoor pressure (kPa) | ||
| Real64 vp; // actual vapor pressure of the air (kpa) | ||
| Real64 vpSat; // saturated vapor pressure at air temperature (kpa) | ||
| Real64 ZonePreTemp; // Indoor air temperature (C) | ||
| Real64 ZonePreHum; // Indoor humidity ratio (kg moisture / kg dry air) | ||
| Real64 ZoneNewTemp; // Indoor air temperature (C) after ET | ||
| Real64 ZoneNewHum; // Indoor humidity ratio (kg moisture / kg dry air) after ET | ||
| Real64 ZoneSatHum; // Saturated humidity ratio | ||
| Real64 ZoneCO2; // Indoor zone co2 concentration (ppm) | ||
| Real64 ZonePPFD; // Indoor net radiation (PPFD) | ||
| Real64 ZoneVPD; // vapor pressure deficit (kpa); local variable | ||
| Real64 Timestep; // s | ||
| Real64 ETTotal; // kg | ||
| Real64 rhoair; // kg/m3 | ||
| Real64 Tdp; // dew point temperature | ||
| Real64 Twb; // wet bulb temperature | ||
| Real64 HCons; // enthalpy (J/kg) | ||
| Real64 HMid; // enthalpy 3rd point (J/kg) | ||
| Real64 ZoneAirVol; // zone air volume (m3) | ||
| Real64 LAI; // leaf area index, the ratio of one-side leaf area per unit plant growing area | ||
| Real64 LAI_Cal; // calculated leaf area index based on users's input on total leaf area | ||
| Real64 OutPb; // outdoor pressure (kPa) | ||
| Real64 vp; // actual vapor pressure of the air (kpa) | ||
| Real64 vpSat; // saturated vapor pressure at air temperature (kpa) | ||
| Timestep = state.dataHVACGlobal->TimeStepSysSec; // unit s | ||
| for (int IndoorGreenNum = 1; IndoorGreenNum <= lw->NumIndoorGreen; ++IndoorGreenNum) { | ||
| auto &ig = lw->indoorGreens(IndoorGreenNum); | ||
|
|
@@ -444,10 +444,10 @@ namespace IndoorGreen { | |
| ig.ZVPD = (vpSat - vp) * 1000; // Pa | ||
| LAI_Cal = ig.LeafArea / state.dataSurface->Surface(ig.SurfPtr).Area; | ||
| LAI = LAI_Cal; | ||
| if (LAI_Cal > 2.0) { | ||
| LAI = 2.0; // maximum LAI=2.0 in the surface heat balance | ||
| if (LAI_Cal > 10.0) { | ||
| LAI = 10.0; | ||
| ShowSevereError(state, | ||
| EnergyPlus::format("Maximum indoor living wall leaf area index (LAI) =2.0 is used,calculated LAI is {}", LAI_Cal)); | ||
| EnergyPlus::format("Maximum indoor living wall leaf area index (LAI) =10.0 is used,calculated LAI is {}", LAI_Cal)); | ||
| } | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Seems like there should be some maximum. Maybe 5 or 10?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you for your comments. Currently, EnergyPlus requires that each living wall be attached to a partition wall. Relaxing the leaf area index (LAI) limit in the model can conceptually represent a larger living wall area within the space. So, users can define a relatively small partition wall, while assigning a larger LAI to represent the total leaf area present in the space. In this approach, the LAI parameter therefore represents the total leaf surface area included in the simulation, rather than the strict physical leaf area index. |
||
| switch (ig.lightingMethod) { | ||
| case LightingMethod::LED: { | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Field limits should be enforced through the IDD. In this instance, you can add
\maximum 10on this field. That change will cause a slight adjustment to this block.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LAI or LAI_Cal is not an input but calculated value at this point based on leaf area.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In that case, it would be good to edit the docs for the Total Leaf Area field to note that only LAI up to 10 are allowed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great thanks! Updated.