Skip to content

Commit

Permalink
Pull in develop; resolve tiny conflict
Browse files Browse the repository at this point in the history
  • Loading branch information
Myoldmopar committed Sep 19, 2023
2 parents b08f368 + 9819321 commit 67c4e7c
Show file tree
Hide file tree
Showing 356 changed files with 33,620 additions and 31,067 deletions.
17 changes: 8 additions & 9 deletions .github/workflows/mac_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,17 @@ jobs:
# fail-fast: Default is true, switch to false to allow one platform to fail and still run others
fail-fast: false
matrix:
# TODO: macos-10.15 will be EOL on 8/30/22 and removed on 12/1/2022
os: [macos-10.15, macos-11, macos-12]
macos_dev_target: [10.15, 11.6, 12.1]
include:
- os: macos-10.15
allow_failure: true
macos_dev_target: 10.15
- os: macos-11
- macos_dev_target: 10.15
os: macos-11
allow_failure: false
macos_dev_target: 11.6
- os: macos-12
- macos_dev_target: 11.6
os: macos-11
allow_failure: false
- macos_dev_target: 12.1
os: macos-12
allow_failure: false
macos_dev_target: 12.1
permissions:
# Needed permission to upload the release asset
contents: write
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@ cmake-build-*
.vs
.vscode
CMakeSettings.json
CMakeCache.txt
CMakeFiles/

# vim temp file:
*.swp
Expand Down
11 changes: 11 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,15 @@ cmake_policy(SET CMP0048 NEW) # handling project_version_* variables

project(EnergyPlus)

# Raise an error if attempting to compile on macOS older than 10.15 - it does not work
if (APPLE)
if(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
message(FATAL_ERROR "CMAKE_OSX_DEPLOYMENT_TARGET not set. Please set CMAKE_OSX_DEPLOYMENT_TARGET to 10.15 or greater and try again.")
elseif (CMAKE_OSX_DEPLOYMENT_TARGET VERSION_LESS "10.15")
message(FATAL_ERROR "The minimum required version for macOS is 10.15, however CMAKE_OSX_DEPLOYMENT_TARGET is set to ${CMAKE_OSX_DEPLOYMENT_TARGET}.")
endif()
endif()

if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} VERSION_GREATER "3.0")
cmake_policy(SET CMP0054 NEW) # CMake 3.1 added this policy
endif()
Expand Down Expand Up @@ -44,6 +53,8 @@ if(ENABLE_PCH)
)
endif()

option(ENABLE_UNITY "Enable Unity Build" OFF)

add_library(project_fp_options INTERFACE)

add_library(project_warnings INTERFACE)
Expand Down
2 changes: 1 addition & 1 deletion cmake/CompilerFlags.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ endif()

# Make sure expat is compiled as a static library
target_compile_definitions(project_options INTERFACE -DXML_STATIC)
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
option(BUILD_TIME_TRACE "Enable -ftime-trace for investigating build times on clang" OFF)
mark_as_advanced(BUILD_TIME_TRACE)
if (BUILD_TIME_TRACE)
Expand Down
14 changes: 1 addition & 13 deletions cmake/Install.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#elseif(APPLE)
#set(CPACK_GENERATOR "IFW;TGZ")
#elseif(UNIX)
#set(CPACK_GENERATOR "STGZ;TGZ")
#set(CPACK_GENERATOR "IFW;STGZ;TGZ")
#endif()

# So instead, let's cache the default value we want for the individual options for CPACK_BINARY_<GenName>
Expand All @@ -34,25 +34,13 @@ if(UNIX)
set(CPACK_BINARY_PRODUCTBUILD OFF CACHE BOOL "Recommended OFF")

else()
# TODO: Make IFW recommended? Deprecate STGZ?
set(CPACK_BINARY_IFW ON CACHE BOOL "Enable to build IFW package, which is the recommended method")
set(CPACK_BINARY_STGZ ON CACHE BOOL "Enable to build a Linux sh installer script, which is the legacy method")

# Unix (non Apple CACHE BOOL) specific option to turn off
set(CPACK_BINARY_TZ OFF CACHE BOOL "Recommended OFF")
endif()

# TODO: the "FORCE" is temporary to avoid people having an existing build directory miss the fact that the recommended method changed
# TODO: remove after next release
if(UNIX AND NOT APPLE)
if(NOT CPACK_BINARY_IFW)
set(CPACK_BINARY_STGZ OFF CACHE BOOL "This was the legacy method on Linux, superseded by IFW" FORCE)
set(CPACK_BINARY_IFW ON CACHE BOOL "Enable to build IFW package, which is the recommend method" FORCE)
message("Switching from STGZ to IFW as the supported generator has changed on Linux")
endif()
endif()
# END TODO

# Tar.gz for inclusion in other programs for eg
set(CPACK_BINARY_TGZ ON CACHE BOOL "Enable to build a tar.gz package, recommended for an official release")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,8 @@ \subsection{Built-In Variables}\label{built-in-variables}
\midrule
\endhead

Year & 1900--2100 \tabularnewline
Year & 1900--2100 (Read from EPW) \tabularnewline
CalendarYear & 1900--2100 (Assigned from RunPeriod - only valid for Weather File Run Periods) \tabularnewline
Month & 1--12 \tabularnewline
DayOfMonth & 1--31 \tabularnewline
DayOfWeek & 1--7 (1 = Sun, 2 = Mon, \ldots) \tabularnewline
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ \subsubsection{Slab-on-grade and Underground Floors Defined with F-factors}\labe

R\(_{film,in}\) and R\(_{film,out}\) are the air film resistance of the inside and outside surfaces, respectively.

The outside air film resistance R\(_{film,out}\) = 0.03 m\(^{2}\)·K/W. The inside air film resistance R\(_{film,in}\) = 0.125 m\(^{2}\)·K/W, which is the average of the 0.14 m\(^{2}\)·K/W for heat flow up and 0.11 m\(^{2}\)·K/W for heat flow down.
The outside air film resistance R\(_{film,out}\) = 0.03 m\(^{2}\)·K/W. The inside air film resistance R\(_{film,in}\) = 0.135 m\(^{2}\)·K/W, which is the average of the 0.16 m\(^{2}\)·K/W for heat flow down and 0.11 m\(^{2}\)·K/W for heat flow up.

Approximate the thermal mass of the floor construction with a 6-inch (0.15 m) heavy concrete, and use a fictitious insulation layer with no thermal mass to match the thermal resistance of the construction.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3385,7 +3385,7 @@ \subsubsection{Inputs}

\paragraph{Field: G-Function Reference Ratio}\label{field-g-function-reference-ratio}

The G-Functions may be formulated slightly differently based on the program which generated them. The original g-functions as defined by Eskilson are based on an borehole radius to active length ratio of 0.0005. If the physical ratio is different from this, a correction must be applied. EnergyPlus will apply the correction, based on the reference ratio entered in this field. Therefore, therefore two possible input configurations.
The G-Functions may be formulated slightly differently based on the program which generated them. The original g-functions as defined by Eskilson are based on an borehole radius to active length ratio of 0.0005. If the physical ratio is different from this, a correction must be applied. EnergyPlus will apply the correction, based on the reference ratio entered in this field. Therefore, there are two possible input configurations.

\begin{itemize}
\item
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3114,7 +3114,7 @@ \subsubsection{Surface Inside Face Lights Radiation Heat Gain Rate per Area {[}W

\subsubsection{Surface Inside Face Lights Radiation Heat Gain Energy {[}J{]}}\label{surface-inside-face-lights-radiation-heat-gain-energy-j}

These ``inside face lights radiation heat gain'' output variables describe the heat transferred by shortwave radiation onto the inside face. The values are always positive and indicate heat is being added to the surface's face by shortwave radiation that emanated from electric lighting equipment and was absorbed by the surface. Different versions of the report are available including the basic heat gain rate (W), and a per unit area flux (W/m2), and an energy version (J).
These ``inside face lights radiation heat gain'' output variables describe the heat transferred by shortwave radiation onto the inside face. The values are always positive and indicate heat is being added to the surface's face by shortwave radiation that emanated from electric lighting equipment and was absorbed by the surface. Note that this includes light from other zones that are transmitted through interzone windows. Different versions of the report are available including the basic heat gain rate (W), and a per unit area flux (W/m2), and an energy version (J).

\subsubsection{Surface Inside Face Internal Gains Radiation Heat Gain Rate {[}W{]}}\label{surface-inside-face-internal-gains-radiation-heat-gain-rate-w}

Expand Down Expand Up @@ -3341,7 +3341,7 @@ \subsubsection{Surface Inside Face Conduction Heat Loss Rate {[}W{]}}\label{surf

These ``inside face conduction'' output variables describe heat flow by conduction right at the inside face of an opaque heat transfer surface. A positive value means that the conduction is from just inside the inside face toward the inside face. A negative value means that the conduction is from the inside face into the core of the heat transfer surface.

Note that Inside Face Conduction, when positive, does \textbf{not} indicate the heat flow from the surface to the zone air, which is governed by the inside face convection coefficient and the difference in temperature between the inside face and the zone air.
Note that Inside Face Conduction, when positive, does \textbf{not} necessarily indicate the heat flow from the surface to the zone air, which is governed by the inside face convection coefficient, the difference in temperature between the inside face and the zone air, and various radiation terms due to solar, internal gains, and radiant exchange with other surfaces in the zone.

Different versions of the reports are available. The basic heat gain rate (W) and a per unit area flux (W/m\(^{2}\)) can have positive or negative values with the sign convention that positive indicates heat flowing toward the face itself. There are also directed ``gain'' and ``loss'' versions that have only positive values or zero when the heat flow direction opposes.

Expand All @@ -3359,7 +3359,9 @@ \subsubsection{Surface Outside Face Conduction Heat Loss Rate {[}W{]}}\label{sur

These ``outside face conduction'' output variables describe heat flow by conduction right at the outside face of an opaque heat transfer surface. A positive value means that the conduction is from just inside the outside face toward the outside face. A negative value means that the conduction is from the outside face into the core of the heat transfer surface.

Note that outside face conduction, when positive, does \textbf{not} indicate the heat flow from the surface to the surrounding air, which is governed by the outside face convection coefficient and the difference in temperature between the inside face and the surrounding air.
Note that outside face conduction, when positive, does \textbf{not} necessarily indicate the heat flow from the surface to the surrounding air, due to the fact that there could be various terms such as convection and/or radiation terms based on whatever is the ''outside'' environment for this surface.

When the surface in question is a partition, the output for this variable is set to zero because there is no outside face because the surface is fully exposed to the zone. When the surface is an interzone partition, the value will be non-zero because there will potentially be conduction into or out of the zone on the other side at this surface.

Different versions of the reports are available. The basic heat transfer rate (W) and a per unit area flux (W/m\(^{2}\)) can have positive or negative values with the sign convention that positive indicates heat flowing toward the face itself. There are also directed ``gain'' and ``loss'' versions that have only positive values or zero when the heat flow direction opposes.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ \subsubsection{Outputs}\label{outputs-040}
\item
HVAC,Average,Water Heater Total Demand Heat Transfer Rate {[}W{]}
\item
HVAC,Sum,Water Heater Total Demand Energy {[}J{]}
HVAC,Sum,Water Heater Total Demand Heat Transfer Energy {[}J{]}
\item
HVAC,Average,Water Heater Heating Rate {[}W{]}
\item
Expand Down Expand Up @@ -562,7 +562,7 @@ \subsubsection{Outputs}\label{outputs-040}

The average heating rate demanded to maintain the setpoint temperature.

\paragraph{Water Heater Total Demand Energy {[}J{]}}\label{water-heater-total-demand-energy-j}
\paragraph{Water Heater Total Demand Heat Transfer Energy {[}J{]}}\label{water-heater-total-demand-heat-transfer-energy-j}

The heating energy demanded to maintain the setpoint temperature.

Expand Down
28 changes: 25 additions & 3 deletions doc/input-output-reference/src/overview/group-zone-equipment.tex
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,9 @@ \subsection{ZoneHVAC:AirDistributionUnit}\label{zonehvacairdistributionunit}
\item
\hyperref[airterminaldualductvavoutdoorair]{AirTerminal:DualDuct:VAV:OutdoorAir}
\item
\hyperref[airterminalsingleductconstantvolumereheat]{AirTerminal:SingleDuct:ConstantVolume:Reheat}
\hyperref[airterminalsingleductconstantvolumereheat]{AirTerminal:SingleDuct:ConstantVolume:Reheat}
\item
\hyperref[airterminalsingleductconstantvolumenoreheat]{AirTerminal:SingleDuct:ConstantVolume:NoReheat}
\item
\hyperref[airterminalsingleductvavreheat]{AirTerminal:SingleDuct:VAV:Reheat}
\item
Expand All @@ -68,6 +70,8 @@ \subsection{ZoneHVAC:AirDistributionUnit}\label{zonehvacairdistributionunit}
\hyperref[airterminalsingleductparallelpiureheat]{AirTerminal:SingleDuct:ParallelPIU:Reheat}
\item
\hyperref[airterminalsingleductconstantvolumefourpipeinduction]{AirTerminal:SingleDuct:ConstantVolume:FourPipeInduction}
\item
\hyperref[airterminalsingleductconstantvolumefourpipebeam]{AirTerminal:SingleDuct:ConstantVolume:FourPipeBeam}
\item
\hyperref[airterminalsingleductvavreheatvariablespeedfan]{AirTerminal:SingleDuct:VAV:Reheat:VariableSpeedFan}
\item
Expand All @@ -85,7 +89,25 @@ \subsection{ZoneHVAC:AirDistributionUnit}\label{zonehvacairdistributionunit}

Connections between the air distribution unit, the supply air duct, and the zone are specified in the input syntax for the air distribution unit and the \hyperref[airloophvaczonesplitter]{AirLoopHVAC:ZoneSplitter}. The input syntax also explicitly defines an outlet identifier. This implies a connection to a zone through a \hyperref[nodelist]{NodeList} for zone inlets (see the \hyperref[zonehvacequipmentconnections]{ZoneHVAC:EquipmentConnections} statement). Each air distribution unit is essentially a combined component-controller. Since controls are normally based on the zone thermostat, they can work in parallel or series in complex fashion. Each air distribution unit operates to meet all or part of the remaining thermostat load as specified in \hyperref[zonehvacequipmentlist]{ZoneHVAC:EquipmentList}.

The Air Distribution unit also allows the user to specify leaks in the supply air duct system. These inputs are used in the EnergyPlus Simplified Duct Leakage Model (SDLM). This model simulates a specific configuration: supply leaks to a return plenum in a commercial VAV or CV system. The system must have a constant static pressure setpoint. Within these limitations SDLM allows the user to easily evaluate the energy penalty due to duct leakage.
The Air Distribution unit also allows the user to specify leaks in the supply air duct system. These inputs are used in the EnergyPlus Simplified Duct Leakage Model (SDLM). This model simulates a specific configuration: supply leaks to a return plenum in a commercial VAV or CV system. The VAV system must have a constant static pressure setpoint, and a constant upstream air leakage flow rate is calculated using the upstream leakage fraction and design flow rate of the VAV box. For the CV system, a proportional leakage amount is calculated using the upstream leakage fraction and the maximum available air flow rate of the air terminal box. The downstream leakages are always calculated as a fraction of the current flow rate through the air terminal. Within these limitations SDLM allows the user to easily evaluate the energy penalty due to duct leakage.

The Simplified Duct Leakage Model (SDLM) is currently supported for the following air terminals:

\begin{itemize}
\item
\hyperref[airterminalsingleductvavreheat]{AirTerminal:SingleDuct:VAV:Reheat}
\item
\hyperref[airterminalsingleductvavnoreheat]{AirTerminal:SingleDuct:VAV:NoReheat}
\item
\hyperref[airterminalsingleductvavheatandcoolreheat]{AirTerminal:SingleDuct:VAV:HeatAndCool:Reheat}
\item
\hyperref[airterminalsingleductvavheatandcoolnoreheat]{AirTerminal:SingleDuct:VAV:HeatAndCool:NoReheat}
\item
\hyperref[airterminalsingleductconstantvolumereheat]{AirTerminal:SingleDuct:ConstantVolume:Reheat}
\item
\hyperref[airterminalsingleductconstantvolumenoreheat]{AirTerminal:SingleDuct:ConstantVolume:NoReheat}

\end{itemize}

\subsubsection{Inputs}\label{inputs-055}

Expand All @@ -107,7 +129,7 @@ \subsubsection{Inputs}\label{inputs-055}

\paragraph{Field: Nominal Upstream Leakage Fraction}\label{field-nominal-upstream-leakage-fraction}

This is the leakage upstream of the terminal unit as a fraction of the design flow rate through the unit. It is the leakage fraction at the design flow rate. It is used to calculate a leakage flow rate which is then held constant while the system air flow varies. This input is optional; the default is zero.
This is the leakage upstream of the terminal unit as a fraction of the design flow rate or maximum available flow rate through the unit. It is the leakage fraction at the design flow rate for the VAV air terminal and at the current maximum available flow rate for the CV air terminals. For the VAV air terminal, it is used to calculate a leakage flow rate, which is then held constant while the system airflow varies. The calculated leakage rate for the CV air terminal proportionally varies with the current maximum available flow rate. This input is optional; the default is zero.

\paragraph{Field: Constant Downstream Leakage Fraction}\label{field-constant-downstream-leakage-fraction}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1406,15 +1406,15 @@ \subsubsection{Predefined Monthly Summary Reports}\label{predefined-monthly-summ
\begin{itemize}
\item
Water Heater Total Demand Energy (SumOrAverage)
Water Heater Total Demand Heat Transfer Energy (SumOrAverage)
\item
Water Heater Use Side Heat Transfer Energy (SumOrAverage)
\item
Water Heater Burner Heating Energy (SumOrAverage)
\item
Water Heater Gas Consumption (SumOrAverage)
\item
Water Heater Total Demand Energy (HoursNonZero)
Water Heater Total Demand Heat Transfer Energy (HoursNonZero)
\item
Water Heater Loss Demand Energy (SumOrAverage)
\item
Expand Down
3 changes: 2 additions & 1 deletion doc/readthedocs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
sphinx-rtd-theme
sphinx>3
urllib3==1.26.15
Jinja2<3.1 # cannot import name 'environmentfilter' from 'jinja2'
urllib3==1.26.15
2 changes: 1 addition & 1 deletion doc/readthedocs/sphinx/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@
# # OK, now we need to make sure the epJSON schema is generated so we can process it
# Since this will primarily just be run by readthedocs, I'm just going to re-run the schema generator
try:
check_call(['python3', 'scripts/dev/generate_epJSON_schema/generate_epJSON_schema.py', 'idd'], cwd=repo_root)
check_call(['python3', 'idd/schema/generate_epJSON_schema.py', 'idd'], cwd=repo_root)
except CalledProcessError as e:
raise Exception(f"Schema Generation failed! Exception string: {str(e)}") from None
except FileNotFoundError as e:
Expand Down
8 changes: 6 additions & 2 deletions idd/Energy+.idd.in
Original file line number Diff line number Diff line change
Expand Up @@ -100966,7 +100966,9 @@ LifeCycleCost:UsePriceEscalation,
\key ElectricitySurplusSold
\key ElectricityNet
\key NaturalGas
\key Steam
\key DistrictCooling
\key DistrictHeatingWater
\key DistrictHeatingSteam
\key Gasoline
\key Diesel
\key Coal
Expand Down Expand Up @@ -101054,7 +101056,9 @@ LifeCycleCost:UseAdjustment,
\key ElectricitySurplusSold
\key ElectricityNet
\key NaturalGas
\key Steam
\key DistrictCooling
\key DistrictHeatingWater
\key DistrictHeatingSteam
\key Gasoline
\key Diesel
\key Coal
Expand Down
Loading

0 comments on commit 67c4e7c

Please sign in to comment.