diff --git a/.decent_ci-Linux.yaml b/.decent_ci-Linux.yaml index 556c9aef821..113e4de9d5a 100644 --- a/.decent_ci-Linux.yaml +++ b/.decent_ci-Linux.yaml @@ -6,7 +6,7 @@ compilers: - "TGZ" - "IFW" release_build_cmake_extra_flags: -DENABLE_REGRESSION_TESTING:BOOL=ON -DBUILD_DOCS:BOOL=ON - cmake_extra_flags: -DLINK_WITH_PYTHON=ON -DBUILD_DOCS:BOOL=ON -DTEX_INTERACTION="nonstopmode" -DBUILD_FORTRAN=ON -DBUILD_PACKAGE:BOOL=ON -DBUILD_TESTING:BOOL=ON -DENABLE_REGRESSION_TESTING:BOOL=ON -DREGRESSION_BASELINE_PATH:PATH=$REGRESSION_BASELINE -DREGRESSION_SCRIPT_PATH:PATH=$REGRESSION_DIR -DREGRESSION_BASELINE_SHA:STRING=$REGRESSION_BASELINE_SHA -DCOMMIT_SHA=$COMMIT_SHA -DENABLE_GTEST_DEBUG_MODE:BOOL=OFF -DBUILD_PERFORMANCE_TESTS:BOOL=ON -DVALGRIND_ANALYZE_PERFORMANCE_TESTS:BOOL=ON + cmake_extra_flags: -DLINK_WITH_PYTHON=ON -DDOCUMENTATION_BUILD="BuildWithAll" -DTEX_INTERACTION="nonstopmode" -DBUILD_FORTRAN=ON -DBUILD_PACKAGE:BOOL=ON -DBUILD_TESTING:BOOL=ON -DENABLE_REGRESSION_TESTING:BOOL=ON -DREGRESSION_BASELINE_PATH:PATH=$REGRESSION_BASELINE -DREGRESSION_SCRIPT_PATH:PATH=$REGRESSION_DIR -DREGRESSION_BASELINE_SHA:STRING=$REGRESSION_BASELINE_SHA -DCOMMIT_SHA=$COMMIT_SHA -DENABLE_GTEST_DEBUG_MODE:BOOL=OFF -DBUILD_PERFORMANCE_TESTS:BOOL=ON -DVALGRIND_ANALYZE_PERFORMANCE_TESTS:BOOL=ON collect_performance_results: true s3_upload: doc/pdf s3_upload_bucket: energyplus diff --git a/CMakeLists.txt b/CMakeLists.txt index bd03d35f575..b985154e4e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -103,8 +103,8 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) "MinSizeRel" "RelWithDebInfo") endif() -# we are making *a Python 3 Interpreter* a required dependency, so find it here -find_package(PythonInterp 3 REQUIRED) +# we are making *a Python 3.6 Interpreter* a required dependency, so find it here +find_package(PythonInterp 3.6 REQUIRED) if( BUILD_TESTING ) option( ENABLE_REGRESSION_TESTING "Enable Regression Tests" OFF ) @@ -337,6 +337,7 @@ if( BUILD_PACKAGE ) endif() if (BUILD_DOCS) + set(DOCS_TESTING ${BUILD_TESTING} CACHE INTERNAL "" FORCE) add_subdirectory(doc) endif() diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index eb1ec854da4..a8f643d487f 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -4,6 +4,13 @@ cmake_minimum_required(VERSION 3.5.1) set_property(GLOBAL PROPERTY USE_FOLDERS ON) +if(NOT EXISTS ${PYTHON_EXECUTABLE}) + # we are making *a Python 3.6 Interpreter* a required dependency, so find it here + find_package(PythonInterp 3.6 REQUIRED) +endif() + +option( DOCS_TESTING "Test the docs for issues" OFF ) + # this _should_ find the xelatex compiler, but for some reason it isn't populating for me find_package(LATEX) # so we'll create a cache variable which will be available to the add_subdirectory call below @@ -14,7 +21,7 @@ string(REPLACE pdflatex xelatex XELATEX ${PDFLATEX_COMPILER}) set(TEX_INTERACTION "batchmode" CACHE STRING "Choose the interaction mode for TeX.") set_property(CACHE TEX_INTERACTION PROPERTY STRINGS "nonstopmode" "batchmode") if( EXISTS ${XELATEX} ) -# and if it does, just add the doc/CMakeLists commands + # and if it does, just add the doc/CMakeLists commands # let's create a folder to drop ONLY PDFs in once they are built, this will allow easy upload to s3 file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/pdf) file(COPY ${PROJECT_SOURCE_DIR}/index.html DESTINATION ${PROJECT_BINARY_DIR}/pdf) diff --git a/doc/acknowledgments/src/notices-and-acknowledgments/other-software-included-or-referenced.tex b/doc/acknowledgments/src/notices-and-acknowledgments/other-software-included-or-referenced.tex index 01d6ce9f0a9..1106f225e5e 100644 --- a/doc/acknowledgments/src/notices-and-acknowledgments/other-software-included-or-referenced.tex +++ b/doc/acknowledgments/src/notices-and-acknowledgments/other-software-included-or-referenced.tex @@ -128,7 +128,7 @@ \subsection{MODELISAR Notice}\label{modelisar-notice} This file is licensed by the copyright holders under the BSD License\footnote{\url{http://www.opensource.org/licenses/bsd-license.html\textgreater}}: -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} Redistribution and use in source and binary forms, with or withoutmodification, are permitted provided that the following conditions are met: diff --git a/doc/cmake/doc-targets.cmake b/doc/cmake/doc-targets.cmake index 91af9e5fcc9..f4304e4dd26 100644 --- a/doc/cmake/doc-targets.cmake +++ b/doc/cmake/doc-targets.cmake @@ -11,5 +11,13 @@ macro( CREATE_DOC_TARGET SOURCE_FILENAME OUTPUT_FILENAME ) ) add_dependencies(docs zPDF_${OUTPUT_FILENAME}) + set_target_properties(zPDF_${OUTPUT_FILENAME} PROPERTIES FOLDER Documentation) + + if (DOCS_TESTING) + add_custom_command(TARGET zPDF_${OUTPUT_FILENAME} + POST_BUILD + COMMAND ${PYTHON_EXECUTABLE} "${PROJECT_SOURCE_DIR}/tools/parse_latex_log.py" "${PROJECT_SOURCE_DIR}/${SOURCE_FILENAME}/${SOURCE_FILENAME}.log" "${PROJECT_SOURCE_DIR}/${SOURCE_FILENAME}" "${PROJECT_BINARY_DIR}/${OUTPUT_FILENAME}_errors.json" + ) + endif() endmacro() diff --git a/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/climate-calculations.tex b/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/climate-calculations.tex index cf1e0321744..c9ebfa2db59 100644 --- a/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/climate-calculations.tex +++ b/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/climate-calculations.tex @@ -76,7 +76,7 @@ \subsection{Sky Radiation Modeling}\label{sky-radiation-modeling} \begin{table}[hbtp] \centering \begin{tabular}{cl} -\textbf{Author} & \epsilon_{sky, clear} \\ \\ +\textbf{Author} & $\epsilon_{sky, clear}$ \\ \\ Clark \& Allen & $= 0.787 + 0.764 \ln\left(T_{dp}/273\right)$ \\ \\ Martin \& Berdahl & $= 0.758 + 0.521 \left(T_{dp}/100\right) + 0.625 \left(T_{dp} / 100\right)^2$ \\ \\ Brunt & $= 0.618 + 0.056 \left(P_{wv}\right)^{0.5}$ \\ \\ @@ -111,10 +111,10 @@ \subsection{Sky Radiation Modeling}\label{sky-radiation-modeling} \noindent Example: \newline -Clear sky ($N=0$), $T_{db} = 20 + 273.15 = \SI{293.15}{\kelivin}$, $T_{dp} = 10 + 273.15 = \SI{283.15}{\kelvin}$ +Clear sky ($N=0$), $T_{db} = 20 + 273.15 = \SI{293.15}{\kelvin}$, $T_{dp} = 10 + 273.15 = \SI{283.15}{\kelvin}$ \newline -$\epsilon_{sky} = \left(0.787 + 0.764 \ln\left(283.15/273\right)\right) \left(1 + 0.0224 N - 0.0035 N^2 + 0.00028 N^3) = 0.815$ +$\epsilon_{sky} = \left(0.787 + 0.764 \ln\left(283.15/273\right)\right) \left(1 + 0.0224 N - 0.0035 N^2 + 0.00028 N^3 \right) = 0.815$ \newline $IR_H = 0.815 5.6697E-8 293.15^4 = \SI{341.2}{\watt\per\meter\squared}$ diff --git a/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/shading-module.tex b/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/shading-module.tex index e627075eec2..553518cbd1c 100644 --- a/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/shading-module.tex +++ b/doc/engineering-reference/src/climate-sky-and-solar-shading-calculations/shading-module.tex @@ -173,8 +173,8 @@ \subsection{Shadow Projection}\label{shadow-projection} \begin{enumerate} \item Polygon Clipping: The shadow algorithm is based on coordinate transformation methods similar to Groth and Lokmanhekim and the shadow overlap method of Walton. \item Pixel Counting: GPU-rendering based calculations based on the method developed by Jones et al 2011. - \item Scheduled: Pre-calculated sunlit fractions are input through a schedule in the \textbf{\hyperref[surfacePropertylocalEnvironment]{SurfaceProperty:LocalEnvironment}} object. - \item Imported: Pre-calculated sunlit fractions are input through a \textbf{\hyperref[schedulefileshading]{Schedule:File:Shading}} object. + \item Scheduled: Pre-calculated sunlit fractions are input through a schedule in the \textbf{SurfaceProperty:LocalEnvironment} object. + \item Imported: Pre-calculated sunlit fractions are input through a \textbf{Schedule:File:Shading} object. \end{enumerate} \subsection{Polygon Clipping} diff --git a/doc/engineering-reference/src/daylighting-and-window-calculations/time-step-daylighting-calculation.tex b/doc/engineering-reference/src/daylighting-and-window-calculations/time-step-daylighting-calculation.tex index 2fa3199fdf2..421e8041f61 100644 --- a/doc/engineering-reference/src/daylighting-and-window-calculations/time-step-daylighting-calculation.tex +++ b/doc/engineering-reference/src/daylighting-and-window-calculations/time-step-daylighting-calculation.tex @@ -196,7 +196,7 @@ \subsection{Interior Illuminance}\label{interior-illuminance} The total illuminance at a reference point from all of the exterior windows in a zone is \begin{equation} - {I_{tot}}({i_L}) = \sum\limits_{\scriptstyle{\rm{windows}}\atop\scriptstyle{\rm{in~zone}}} {{I_{win}}({i_s},{i_L})} + {I_{tot}}({i_L}) = \sum\limits_{\genfrac{}{}{0pt}{2}{\rm{windows}}{\rm{in~zone}}} {{I_{win}}({i_s},{i_L})} \end{equation} where i\(_{S}\) = 1 if the window is unshaded and \emph{i\(_{S}\)} = 2 if the window is shaded that time step. (Before the illuminance calculation is done the window shading control will have been simulated to determine whether or not the window is shaded.) @@ -204,7 +204,7 @@ \subsection{Interior Illuminance}\label{interior-illuminance} Similarly, the total background luminance is calculated: \begin{equation} -{B_{tot}}({i_L}) = \sum\limits_{\scriptstyle{\rm{windows}}\atop\scriptstyle{\rm{in~zone}}} {{B_{win}}({i_s},{i_L})} + {B_{tot}}({i_L}) = \sum\limits_{\genfrac{}{}{0pt}{2}{\rm{windows}}{\rm{in~zone}}} {{B_{win}}({i_s},{i_L})} \end{equation} \subsection{Glare Index}\label{glare-index-000} @@ -212,7 +212,7 @@ \subsection{Glare Index}\label{glare-index-000} The net glare index at each reference point is calculated as: \begin{equation} -{G_I}({i_L}) = 10{\log_{10}}\sum\limits_{\scriptstyle{\rm{windows}}\atop\scriptstyle{\rm{in zone}}} {\frac{{{S_{win}}{{({i_L},{i_S})}^{1.6}}\Omega {{({i_L})}^{0.8}}}}{{B({i_L}) + 0.07\omega {{({i_L})}^{0.5}}{S_{win}}({i_L},{i_S})}}} + {G_I}({i_L}) = 10{\log_{10}}\sum\limits_{\genfrac{}{}{0pt}{2}{\rm{windows}}{\rm{in~zone}}} {\frac{{{S_{win}}{{({i_L},{i_S})}^{1.6}}\Omega {{({i_L})}^{0.8}}}}{{B({i_L}) + 0.07\omega {{({i_L})}^{0.5}}{S_{win}}({i_L},{i_S})}}} \end{equation} where diff --git a/doc/engineering-reference/src/demand-limiting.tex b/doc/engineering-reference/src/demand-limiting.tex index 8a6c2931bf3..4c3e3bc4e8a 100644 --- a/doc/engineering-reference/src/demand-limiting.tex +++ b/doc/engineering-reference/src/demand-limiting.tex @@ -19,7 +19,7 @@ \chapter{Demand Limiting}\label{demand-limiting} The demand limiting controls implemented in EnergyPlus are intended to allow some of the more common demand limiting strategies.~ The DemandManagerAssignmentList object is a high level control that makes demand limiting decisions based on a list of possible demand limiting strategies.~ Each demand limiting strategy is described in a separate DemandManager object.~ Each DemandManager object controls a group of similar load objects of the same type, such as DemandManager:Lights, DemandManager:ElectricEquipment, DemandManager:Thermostats, or DemandManager:Ventilation objects. -\subsection{Algorithm}\label{algorithm} +\section{Algorithm}\label{algorithm} In EnergyPlus the DemandManagerAssignmentList and DemandManager objects are simulated by the Demand Manager module.~ The Demand Manager is built into the overall solution method for the program.~ For each zone time step, the program executes three major segments of code: @@ -60,7 +60,7 @@ \subsection{Algorithm}\label{algorithm} All demand limiting controls are disabled during warmup days and sizing runs. -\subsubsection{Sequential Priority}\label{sequential-priority} +\subsection{Sequential Priority}\label{sequential-priority} If the \emph{Demand Manager Priority} field of the DemandManagerAssignmentList object is set to SEQUENTIAL, each DemandManager in the list is activated in sequence from first to last until demand is reduced below the limit or until all managers are activated.~ A DemandManager is skipped if it cannot reduce the demand.~ Possible reasons that a manager cannot reduce demand include: @@ -77,6 +77,6 @@ \subsubsection{Sequential Priority}\label{sequential-priority} The implication of sequential priority is that a DemandManagerAssignmentList with many DemandManagers may make many passes through the Demand Manager before all demand limiting decisions are finalized.~ Each pass requires an additional resimulation of the current time step.~ In some cases this could significantly slow down the overall simulation runtime.~ The use of the \emph{Minimum Limit Duration} field can help to ensure that not every DemandManager is being activated at every time step. -\subsubsection{All Priority}\label{all-priority} +\subsection{All Priority}\label{all-priority} If the \emph{Demand Manager Priority} field of the DemandManagerAssignmentList object is set to ALL, all DemandManagers in the list are activated simultaneously to achieve the maximum demand reduction.~ This priority option requires only one final resimulation after all DemandManagers are activated. diff --git a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-001/coils.tex b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-001/coils.tex index fe208b38b8d..09c0ed18eb7 100644 --- a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-001/coils.tex +++ b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-001/coils.tex @@ -1611,38 +1611,38 @@ \subsubsection{Special Calculations for Coil:Cooling:DX:TwoStageWithHumidityCont 1. No latent control - Perform normal operation with SHR_{Normal} + Perform normal operation with SHR\(_{Normal}\) 2. Latent control -a. If CoilSHR >= SHR_{Normal} +a. If CoilSHR >= SHR\(_{Normal}\) Perform normal operation to meet sensible load, adjusted by PLR for a single capacity equipmentl SenLoad = SenOut * PLR -b. Else if (SHR_{Normal} > CoilSHR And CoilSHR >= SHR_{Sub}) +b. Else if SHR\(_{Normal}\) > CoilSHR And CoilSHR >= SHR\(_{Sub}\) Perform combination between normal and subcooling operation - CoilSHR = SHR_{Sub} * r_{Sub} + SHR_{Normal} * (1 - r_{Sub}) + CoilSHR = SHR\(_{Sub}\) * r\(_{Sub}\) + SHR\(_{Normal}\) * (1 - r\(_{Sub})\) - SenLoad = [SenOut_{Sub} * r_{Sub} + SenOut_{Normal} * (1 - r_{Sub})] * PLR + SenLoad = [SenOut\(_{Sub}\) * r\(_{Sub}\) + SenOut\(_{Normal}\) * (1 - r\(_{Sub}\))] * PLR -c. Else if (SHR_{Sub} > CoilSHR And CoilSHR >= SHR_{Reheat}) +c. Else if SHR\(_{Sub}\) > CoilSHR And CoilSHR >= SHR\(_{Reheat}\) Perform combination between normal and reheat operation - CoilSHR = SHR_{Reheat} * r_{Reheat} + SHR_{Normal} * (1 - r_{Sub}) + CoilSHR = SHR\(_{Reheat}\) * r\(_{Reheat}\) + SHR\(_{Normal}\) * (1 - r\(_{Sub}\)) - SenLoad = [SenOut_{Sub} * r_{Sub} + SenOut_{Normal} * (1 - r_{Sub})] * PLR + SenLoad = [SenOut\(_{Sub}\) * r\(_{Sub}\) + SenOut\(_{Normal}\) * (1 - r\(_{Sub}\))] * PLR Else Performreheatg operation - SenLoad = SenOut_{Reheat} * PLR + SenLoad = SenOut\(_{Reheat}\) * PLR End If @@ -5190,7 +5190,7 @@ \subsubsection{Model Description}\label{model-description-7} The temperature of the water leaving the desuperheater is then calculated as \begin{equation} -{T_{water,outlet}} = {T_{water,inlet}} + \frac{{{Q_{coil}}}}{{{{\dot m}_{water}}\cdot {C_{p,water}}}} ~for~ {\dot m_{water}} \textgreater{} 0 +{T_{water,outlet}} = {T_{water,inlet}} + \frac{{{Q_{coil}}}}{{{{\dot m}_{water}}\cdot {C_{p,water}}}} ~for~ {\dot m_{water}} > 0 \end{equation} \begin{equation} diff --git a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-002/heat-exchangers.tex b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-002/heat-exchangers.tex index 97678099dbb..e4b11a0d040 100644 --- a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-002/heat-exchangers.tex +++ b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-002/heat-exchangers.tex @@ -1224,7 +1224,7 @@ \subsubsection{Model Simplifications for Computational Efficiency}\label{model-s \begin{figure}[htbp] \centering -\includegraphics{media/image8001.png} +\includegraphics[width=0.5\textwidth]{media/image8001.png} \caption{Schematic of first and second improvements to the algorithm for computational efficiency \protect \label{fig:slinky-first-and-second-improvements}} \end{figure} diff --git a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-004/refrigeration-equipment.tex b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-004/refrigeration-equipment.tex index 3dc165dcbd1..e42db152530 100644 --- a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-004/refrigeration-equipment.tex +++ b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-004/refrigeration-equipment.tex @@ -1965,7 +1965,7 @@ \subsubsection{Secondary Loop Pumping Power and Secondary Loop Load}\label{secon The needed flow rate is used to determine the number of pumps required and the total pumping power, which produces a new estimate for the total load. A few iterations converge upon the final secondary loop load for each time step.~ The total load on the heat exchanger is therefore the sum of the refrigeration loads, any pipe heat gains, and the portion of the pump power that is absorbed by the circulating fluid. -\subsection{Transcritical CO\(_{2}\) Refrigeration System}\label{transcritical-co2-refrigeration-system} +\subsection{Transcritical CO\texorpdfstring{\(_{2}\)}{2} Refrigeration System}\label{transcritical-co2-refrigeration-system} The Refrigeration:TranscriticalSystem object allows users to model detailed transcritical carbon dioxide (CO\(_{2}\)) booster refrigeration systems used in supermarkets.~ The object allows for modeling either a single stage system with medium-temperature loads or a two stage system with both medium- and low-temperature loads. diff --git a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-005/water-systems.tex b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-005/water-systems.tex index c8f9ec8330f..b6d06c8f926 100644 --- a/doc/engineering-reference/src/simulation-models-encyclopedic-reference-005/water-systems.tex +++ b/doc/engineering-reference/src/simulation-models-encyclopedic-reference-005/water-systems.tex @@ -493,7 +493,7 @@ \subsubsection{Calculate Connections Heat Recovery}\label{calculate-connections- \end{equation} \begin{equation} -\varepsilon = \frac{{1 - EXP\left( { - NTU\left( {1 - {R_c}} \right)} \right)}}{{1 - {R_c}EXP\left( { - NTU\left( {1 - {R_c}} \right)} \right)}},~if~{R_c}~\textless{}~1 +\varepsilon = \frac{{1 - EXP\left( { - NTU\left( {1 - {R_c}} \right)} \right)}}{{1 - {R_c}EXP\left( { - NTU\left( {1 - {R_c}} \right)} \right)}},~if~{R_c}~<~1 \end{equation} For the ``crossflow'' heat exchanger: diff --git a/doc/engineering-reference/src/special-modules-reporting/heat-emissions.tex b/doc/engineering-reference/src/special-modules-reporting/heat-emissions.tex index 0375b795b53..ddf9ac1e466 100644 --- a/doc/engineering-reference/src/special-modules-reporting/heat-emissions.tex +++ b/doc/engineering-reference/src/special-modules-reporting/heat-emissions.tex @@ -86,6 +86,11 @@ \subsection{Heat Rejection from HVAC System Equipment}\label{emission-from-HVAC- \toprule Object Group & Component & Calculation Methods \tabularnewline \midrule +\endfirsthead +\caption{Heat Rejection Calculation for Different HVAC Component Types} \tabularnewline +\toprule +Object Group & Component & Calculation Methods \tabularnewline +\midrule \endhead Coils & Chilled water cooling coil & Emit heat in condensing unit defined in Condenser Equipment \tabularnewline & Heating coil (fuel heated) & Fuel Consumed + Heating Coil Defrost Electric Consumption + Heating Coil Crankcase Heater Electric Consumption – Heating Coil Total Heating Energy \tabularnewline diff --git a/doc/getting-started/src/idf-editor-brief-introduction.tex b/doc/getting-started/src/idf-editor-brief-introduction.tex index 2bb93c5c8cf..45cf193e2d0 100644 --- a/doc/getting-started/src/idf-editor-brief-introduction.tex +++ b/doc/getting-started/src/idf-editor-brief-introduction.tex @@ -12,15 +12,15 @@ \chapter{IDF Editor -- Brief Introduction}\label{idf-editor-brief-introduction} \caption{IDF Editor Screen. \protect \label{fig:idf-editor-screen.}} \end{figure} -\subsection{Start IDF Editor}\label{start-idf-editor} +\section{Start IDF Editor}\label{start-idf-editor} IDF Editor should be located in the EnergyPlus\textbackslash{}PreProcessor\textbackslash{}IDFEditor directory where you installed EnergyPlus. By double clicking on the IDF Editor icon you will get a screen similar to the one shown above. IDF Editor works in conjunction with the current EnergyPlus Input Data Directory (IDD) file that resides in the directory where EnergyPlus is installed. Another way to start the IDF Editor is from EP-Launch. Multiple IDF files can be opened at once. -\subsection{Creating or Selecting an Input Data File}\label{creating-or-selecting-an-input-data-file} +\section{Creating or Selecting an Input Data File}\label{creating-or-selecting-an-input-data-file} Creating a new input data file or selecting an existing input data file can be accomplished either through use of the File menu on the menu bar at the top of the screen or through use of the New File icon button or Open File icon button on the tool bar. -\subsection{Class List}\label{class-list} +\section{Class List}\label{class-list} The class list shows how the items for the IDF are grouped.~ This class list follows the Data Dictionary (IDD) description. Select a class from the list by clicking on and highlighting the class. The field to the left of the selected class in the `Class List' will either contain {[}------{]} to indicate that this class has no objects in the IDF file or it will contain a number like {[}0003{]} to indicate the number of times the object currently appears in the IDF file. For example, for the BuildingSurface:Detailed class selected in the screen above under the Thermal Zone Description/Geometry group, there are 40 objects in the IDF file. The details for these 40 objects or any new object that is defined are displayed in columns within the grid. Each object is made up of fields and can be used to further define the object. Any units attached to each field are shown in the second column. You may need to scroll down the `field' list or maximize the application to see all of the fields. Likewise, you may need to scroll to the right of the main grid to see other objects. @@ -28,7 +28,7 @@ \subsection{Class List}\label{class-list} The ``Show Quick Select Dropdowns'' view menu option adds two new input fields to the main screen. The input fields can be used to go quickly to different classes in the main list of classes. By typing in the top input field, the group that start with those letters are displayed. After selecting one and pressing the tab button, classes in that group are shown and by typing the first few letters, you can easily select a specific class. Pressing tab again displays that class and it objects. This method allow for quick selection of classes if you remember the group name and class name. -\subsection{Changing Values}\label{changing-values} +\section{Changing Values}\label{changing-values} By clicking and highlighting a value within an object, several things happen: @@ -44,11 +44,11 @@ \subsection{Changing Values}\label{changing-values} 6)~~~For values that are names of nodes, a new dialog box titled ``Edit or Select Node Name'' can be shown when the small button is pressed that is on the right side in each node name cell. -\subsection{Working with Objects}\label{working-with-objects} +\section{Working with Objects}\label{working-with-objects} To delete an object, first click on any value for the object and then click on the ``Del Obj'' button. To add a new object, click on the ``New Obj'' button and a new object column with fields set to blanks, zeros, or default values will be added to the far right of the grid. The ``Dup Obj'' button is similar to ``New Obj'', but copies the values of the fields of the currently selected object. Copying and pasting an object or groups of objects is also possible using the ``Copy Obj'' and ``Paste Obj'' buttons.~ These allow objects to be copied between files are also good for copying from files in the DataSets subdirectory. (Also see the Edit menu to perform these functions.) -\subsection{File Menu}\label{file-menu-000} +\section{File Menu}\label{file-menu-000} The File menu can be used for creating or selecting input files just like the buttons on the IDF Editor screen (see the \emph{Creating or Selecting an Input File} section above). In addition, the File menu is used to save a file or exit the IDF Editor. More than one file can be opened at a time. @@ -66,11 +66,11 @@ \subsection{File Menu}\label{file-menu-000} Also on the File menu is the Open DataSet menu and submenu. This allows you to open any input file that appears in the DataSet subdirectory and copy objects from them into another file. This is required because EnergyPlus does not read the DataSet files, it is up to you to include objects from them. -\subsection{Edit Menu}\label{edit-menu-000} +\section{Edit Menu}\label{edit-menu-000} The Edit Menu offers options to create a new object, duplicate an object, and delete an object as well as finding and searching. The object options are the same operations as can be accomplished by using the `New Obj', `Dup Obj' and `Del Obj' buttons (see the \emph{Working with Objects} section above). In addition, the ``Next Row after Enter'' option can be toggled. When this option is on, the selection moves down one row after pressing Enter. The copy and paste object commands allow a single object to be copied within a file or between files. The pasted object appears as the last object in the class. This capability makes it easier to utilize the data in the DataSets directory. The Find Class and Search and Replace options can be used to search through the list of classes or the values of a file quickly. If renaming objects, the recommended approach is to rename the object and select the cell again and open the Search and Replace dialog. This will show other places in the file that use that object name that also may need to be changed. -\subsection{View Menu}\label{view-menu-000} +\section{View Menu}\label{view-menu-000} The View menu offers options for units and column widths. The Narrow/Medium/Wide Column options set the standard column width for items in the object grid. Individual columns can also be resized by dragging the column separator. The displayed value is rounded and/or expressed in scientific notation to fit within the column width. @@ -88,6 +88,6 @@ \subsection{View Menu}\label{view-menu-000} The ``Validity Check'' function has replaced and expanded upon the old~ ``Check Out-of-Range'' function. It can also be started by using CTRL-R. The ``Validity Check'' function performs three kinds of validity checks. It displays the values and locations for objects with values that are either above the maximum or below the minimum values.~ It also displays fields that contain invalid references. The ``Validity Check'' dialog also shows when an entry for a field is not one of the possible lists of choices. The Perform Validity Check When Saving File can be turned on and off and automatically performs the check whenever the file is saved. -\subsection{Help Menu}\label{help-menu-000} +\section{Help Menu}\label{help-menu-000} The Help menu offers options to open the EnergyPlus documentation files. diff --git a/doc/input-output-reference/src/energyplus-economics/cost-estimating.tex b/doc/input-output-reference/src/energyplus-economics/cost-estimating.tex index e200ae4c5ad..6bc4698baf4 100644 --- a/doc/input-output-reference/src/energyplus-economics/cost-estimating.tex +++ b/doc/input-output-reference/src/energyplus-economics/cost-estimating.tex @@ -8,7 +8,7 @@ \subsection{ComponentCost:LineItem}\label{componentcostlineitem} Cost estimates are not currently general in that they cannot be performed for every type of component that could be included in an EnergyPlus model. Although a ``General'' option is available where all information needed for the cost line item is input by the user, the usefulness of cost modeling within EnergyPlus is expected to be enhanced when quantities are obtained from elsewhere in the input file or computed during a simulation. The cost computations are programmed in selected ways for selected objects. The objects available and the type of cost modeling that may be performed are discussed in detail in the discussion of Reference Object Type field. A particular instance of this object will always have many blank fields. Entering values in too many fields may cause an error because the program may determine how a particular cost is to be calculated based on the presence of non-zero values in particular fields. The input object includes fields that are reserved for future use in expanded cost estimate and investment analyses planned for future versions of EnergyPlus. If you would like to request additional objects or different methods of modeling component costs, feel free to describe your needs and submit a request via email to energyplus-support@gard.com. -\subsubsection{Inputs}\label{inputs} +\subsubsection{Inputs} \paragraph{Field: Name}\label{componentcostlineitem-field-name} @@ -169,7 +169,7 @@ \subsection{ComponentCost:Adjustments}\label{componentcostadjustments} This object can be used to perform various modifications to the construction costs to arrive at an estimate for total project costs. This object allows extending the line item model so that the overall costs of the project will reflect various profit and fees. Only one object of this type can be included in the input file. The results are included in the Construction Cost Estimate Summary table by request using the \hyperref[outputtablesummaryreports]{Output:Table:SummaryReports} object with the Component Cost Economics Summary option selected. -\subsubsection{Inputs}\label{inputs-1} +\subsubsection{Inputs} \paragraph{Field: Miscellaneous Cost per Conditioned Area}\label{field-miscellaneous-cost-per-conditioned-area} @@ -216,7 +216,7 @@ \subsection{ComponentCost:Reference}\label{componentcostreference} This object can be used to allow comparing the current cost estimate to the results of a previous estimate for a reference building. This object parallels the ComponentCost:Adjustment object but adds a field for entering the cost line item model result for the reference building. All the various adjustments to the project cost estimate are available here to allow using factors that differ between the current and the reference building models. The factors entered in the field associated with this object are applied to the reference building while the factors listed in the ComponentCost:Adjustment object are applied to the current building model cost estimate. Only one object of this type can be included in the input file. The results are included in the Construction Cost Estimate Summary table by request using the \hyperref[outputtablesummaryreports]{Output:Table:SummaryReports} object with the Component Cost Economics Summary option selected. -\subsubsection{Inputs}\label{inputs-2} +\subsubsection{Inputs} \paragraph{Field: Reference Building Line Item Costs}\label{field-reference-building-line-item-costs} diff --git a/doc/input-output-reference/src/energyplus-economics/currencytype.tex b/doc/input-output-reference/src/energyplus-economics/currencytype.tex index 0230c6ce017..131a7d03881 100644 --- a/doc/input-output-reference/src/energyplus-economics/currencytype.tex +++ b/doc/input-output-reference/src/energyplus-economics/currencytype.tex @@ -1,7 +1,7 @@ \section{CurrencyType}\label{currencytype} By default, the predefined reports related to economics use the \$ symbol. If a different symbol should be shown in the predefined reports to represent the local currency this object can be used. If the object is not used, the \$ sign is used in the reports. Only one CurrencyType object is allowed in the input file. -\subsection{Inputs}\label{inputs-061} +\subsection{Inputs} \paragraph{Field: Monetary Unit}\label{field-monetary-unit} @@ -15,4 +15,4 @@ \subsection{Inputs}\label{inputs-061} For text reports, an ASCII representation of the currency code will be used. Since ASCII is much more limited than UNICODE, many times the three letter currency code will be shown in the reports. -Since forms of currency change, please contact EnergyPlus support if a new currency code and symbol are needed. \ No newline at end of file +Since forms of currency change, please contact EnergyPlus support if a new currency code and symbol are needed. diff --git a/doc/input-output-reference/src/hvac-template-objects/group-hvac-templates.tex b/doc/input-output-reference/src/hvac-template-objects/group-hvac-templates.tex index 4c2b4b6d051..df7605902ec 100644 --- a/doc/input-output-reference/src/hvac-template-objects/group-hvac-templates.tex +++ b/doc/input-output-reference/src/hvac-template-objects/group-hvac-templates.tex @@ -756,7 +756,7 @@ \subsubsection{Inputs}\label{inputs-3-018} This numerical field specifies the ratio of the medium speed flow rate to the maximum supply air flow rate. Its value should be greater than the \emph{Low Speed Supply Air Flow Ratio} but less than 1.If left blank, the default value is 0.66. This field is ignored if the capacity control method selected is not \emph{CyclingFan}. -\paragraph{Field: Outdoor Air Schedule Name}\label{field-outdoor-air-schedule-name} +\paragraph{Field: Outdoor Air Schedule Name} \paragraph{The name of a schedule whose values (0.0 to 1.0) are used as multipliers to alter the outdoor air flow rate. If this field is left blank, the values will default to 1.0. This schedule is ignored if the zone is served by an HVACTemplate dedicated outdoor air system.}\label{the-name-of-a-schedule-whose-values-0.0-to-1.0-are-used-as-multipliers-to-alter-the-outdoor-air-flow-rate.-if-this-field-is-left-blank-the-values-will-default-to-1.0.-this-schedule-is-ignored-if-the-zone-is-served-by-an-hvactemplate-dedicated-outdoor-air-system.} @@ -1018,7 +1018,7 @@ \subsubsection{Inputs}\label{inputs-4-016} Enter autosize to allow the sizing algorithm to determine the proper capacity required based on the loads experienced during the heating design day. If a value is specified, it is the maximum amount of heat that the baseboard heating can deliver in Watts. Note that EnergyPlus autosizing will autosize the baseboard heating to meet the full heating load of the zone, regardless of the heating capability of the PTAC system. The baseboard heating will be set to heating sequence 2, which means it will meet any remaining heating load not met by the PTAC system. -\paragraph{Field: Capacity Control Method}\label{field-capacity-control-method-2} +\paragraph{Field: Capacity Control Method} This input denotes how the unit's output is controlled in order to meet zone heating or cooling requirement. The choices are \textbf{\emph{None}} or \textbf{\emph{SingleZoneVAV}}. For \emph{None}, the unit varies the fan and/or coil speed to meet the load. If constant fan operating mode is selected the fan operates at the design cooling or heating air flow rate while the coil modulates to meet the load. If cycling fan operating mode is selected the fan and coil modulate in unison to meet the load. For \emph{SingleZoneVAV}, the fan air flow rate is reduced to the no load supply air flow rate when the zone sensible load is low such that the maximum supply air temperature limit is not exceeded. If the unit cannot meet the load at this lower air flow rate, the fan speed increases while maintaining the maximum supply air temperature. If the unit still cannot meet the load the unit will operate at the maximum supply air flow rate and the maximum supply air temperature limit can be exceeded. Supply air temperature limits are identified in the \hyperref[zonehvacpackagedterminalairconditioner]{ZoneHVAC:PackagedTerminalAirConditioner} input fields for Minimum Supply Air Temperature in Cooling Mode and Maximum Supply Air Temperature in Heating Mode. Additionally, specific coil types are required for the SingleZoneVAV capacity control method. The cooling coil type is \hyperref[coilcoolingdxsinglespeed]{Coil:Cooling:DX:SingleSpeed} while the heating coil types are \hyperref[coilheatingwater]{Coil:Heating:Water}, \hyperref[coilheatinggas-000]{Coil:Heating:Fuel} and \hyperref[coilheatingelectric]{Coil:Heating:Electric}. If alternate coil types are used they are modeled using the load based control method. @@ -1304,7 +1304,7 @@ \subsubsection{Inputs}\label{inputs-5-014} Enter autosize to allow the sizing algorithm to determine the proper capacity required based on the loads experienced during the heating design day. If a value is specified, it is the maximum amount of heat that the baseboard heating can deliver in Watts. Note that EnergyPlus autosizing will autosize the baseboard heating to meet the full heating load of the zone, regardless of the heating capability of the PTHP system. The baseboard heating will be set to heating sequence 2, which means it will meet any remaining heating load not met by the PTHP system. -\paragraph{Field: Capacity Control Method}\label{field-capacity-control-method-3} +\paragraph{Field: Capacity Control Method} This input denotes how the unit's output is controlled in order to meet zone heating or cooling requirement. The choices are \textbf{\emph{None}} or \textbf{\emph{SingleZoneVAV}}. For \emph{None}, the unit varies the fan and/or coil speed to meet the load. If constant fan operating mode is selected the fan operates at the design cooling or heating air flow rate while the coil modulates to meet the load. If cycling fan operating mode is selected the fan and coil modulate in unison to meet the load. For \emph{SingleZoneVAV}, the fan air flow rate is reduced to the no load supply air flow rate when the zone sensible load is low such that the maximum supply air temperature limit is not exceeded. If the unit cannot meet the load at this lower air flow rate, the fan speed increases while maintaining the maximum supply air temperature. If the unit still cannot meet the load the unit will operate at the maximum supply air flow rate and the maximum supply air temperature limit can be exceeded. Supply air temperature limits are identified in the \hyperref[zonehvacpackagedterminalheatpump]{ZoneHVAC:PackagedTerminalHeatPump} input fields for Minimum Supply Air Temperature in Cooling Mode and Maximum Supply Air Temperature in Heating Mode. Additionally, specific coil types are required for the SingleZoneVAV capacity control method. The cooling coil type is \hyperref[coilcoolingdxsinglespeed]{Coil:Cooling:DX:SingleSpeed} while the heating coil type is \hyperref[coilheatingdxsinglespeed]{Coil:Heating:DX:SingleSpeed}. @@ -2682,7 +2682,7 @@ \subsubsection{Inputs}\label{inputs-11-006} \subsection{HVACTemplate:Zone:ConstantVolume}\label{hvactemplatezoneconstantvolume} -This object simulates the zone portion of a constant volume HVAC configuration with or without reheat. One or more HVACTemplate:Zone:ConstantVolume objects will be used with a single \hyperref[hvactemplatesystemconstantvolume]{HVACTemplate:System:ConstantVolume} which has optional chilled water cooling and several types of heating. Reference \hyperref[airterminalsingleductuncontrolled]{AirTerminal:SingleDuct:ConstantVolume:NoReheat} and \hyperref[airterminalsingleductconstantvolumereheat]{AirTerminal:SingleDuct:ConstantVolume:Reheat} for more details about the terminal units. +This object simulates the zone portion of a constant volume HVAC configuration with or without reheat. One or more HVACTemplate:Zone:ConstantVolume objects will be used with a single \hyperref[hvactemplatesystemconstantvolume]{HVACTemplate:System:ConstantVolume} which has optional chilled water cooling and several types of heating. Reference \hyperref[airterminalsingleductconstantvolumenoreheat]{AirTerminal:SingleDuct:ConstantVolume:NoReheat} and \hyperref[airterminalsingleductconstantvolumereheat]{AirTerminal:SingleDuct:ConstantVolume:Reheat} for more details about the terminal units. \subsubsection{Inputs}\label{inputs-12-006} @@ -7557,7 +7557,7 @@ \subsubsection{Inputs}\label{inputs-25-000} The name of this object. -\paragraph{Field: Chiller Object Type}\label{field-chiller-object-type} +\paragraph{Field: Chiller Object Type} The object type of the referenced chiller. Select from one of the following supported chiller object types: @@ -8071,7 +8071,7 @@ \subsubsection{Inputs}\label{inputs-30-000} The name of this object. -\paragraph{Field: Boiler Object Type}\label{field-boiler-object-type} +\paragraph{Field: Boiler Object Type} The object type of the referenced boiler. Select from one of the following supported boiler object types: diff --git a/doc/input-output-reference/src/overview/group-advanced-surface-concepts.tex b/doc/input-output-reference/src/overview/group-advanced-surface-concepts.tex index 232d0bb24c5..cdf68da4d48 100644 --- a/doc/input-output-reference/src/overview/group-advanced-surface-concepts.tex +++ b/doc/input-output-reference/src/overview/group-advanced-surface-concepts.tex @@ -123,7 +123,7 @@ \subsection{SurfaceProperty:HeatTransferAlgorithm:SurfaceList}\label{surfaceprop \subsubsection{Inputs}\label{inputs-2-000} -\paragraph{Field: Name}\label{field-name-1} +\paragraph{Field: Name} This is a unique, user-defined name for the object. @@ -176,7 +176,7 @@ \subsection{SurfaceProperty:HeatTransferAlgorithm:Construction}\label{surfacepro \subsubsection{Inputs}\label{inputs-3} -\paragraph{Field: Name}\label{field-name-2} +\paragraph{Field: Name} This is a unique, user-defined name for the object. @@ -381,7 +381,7 @@ \subsubsection{Inputs}\label{inputs-4} ; !- Maximum Other Side Temperature Limit {C} \end{lstlisting} -\subsubsection{Outputs}\label{outputs} +\subsubsection{Outputs} \begin{lstlisting} Zone,Average,Surface Other Side Coefficients Exterior Air Drybulb Temperature diff --git a/doc/input-output-reference/src/overview/group-air-distribution-equipment.tex b/doc/input-output-reference/src/overview/group-air-distribution-equipment.tex index 9a9e3e5b89a..b5f6f6b87af 100644 --- a/doc/input-output-reference/src/overview/group-air-distribution-equipment.tex +++ b/doc/input-output-reference/src/overview/group-air-distribution-equipment.tex @@ -6,25 +6,25 @@ \subsection{AirTerminal:SingleDuct:ConstantVolume:Reheat}\label{airterminalsingl The AirTerminal:SingleDuct:ConstantVolume:Reheat or terminal reheat system is a constant volume reheat system. The systems cooling capabilities are provided by way of cooling coil that supplies cooling to the entire supply air volume. The cooling coil is controlled by a controller setpoint specified for the cooling coil. Zone control is accomplished by heating (reheating) the airflow into each zone as determined by the zone thermostat. Currently the reheat can be supplied by a electric, gas, or hot water coil that tries to meet the zone demand. -\subsubsection{Inputs}\label{inputs-1-001} +\subsubsection{Inputs} -\paragraph{Field: Name}\label{field-name-1-000} +\paragraph{Field: Name} Unique name for the terminal reheat Air Distribution Unit (ADU). -\paragraph{Field: Availability Schedule Name}\label{field-availability-schedule-name-1} +\paragraph{Field: Availability Schedule Name} Schedule that this component will operate or is available to operate. A schedule value greater than 0 (usually 1 is used) indicates that the component can be on during the time period. A value less than or equal to 0 (usually 0 is used) denotes that the component must be off for the time period. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Air Outlet Node Name}\label{field-air-outlet-node-name} +\paragraph{Field: Air Outlet Node Name} The outlet node from the ADU to the zone. This is the same node as the reheat component air outlet node. -\paragraph{Field: Air Inlet Node Name}\label{field-air-inlet-node-name} +\paragraph{Field: Air Inlet Node Name} The air-inlet node name that connects the air splitter to the individual zone ADU. This is the same node as the reheat component air inlet node. -\paragraph{Field: Maximum Air Flow Rate}\label{field-maximum-air-flow-rate-1} +\paragraph{Field: Maximum Air Flow Rate} The design constant volume flow rate (m\(^{3}\)/sec) specified for the terminal reheat ADU. @@ -70,7 +70,7 @@ \subsubsection{Outputs} HVAC,Average,Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]} \end{itemize} -\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}}\label{zone-air-terminal-outdoor-air-volume-flow-rate-m3s} +\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}} This output is the amount of outdoor air entering the zone. This is the average value over the frequency being reported. The amount of outdoor air is defined as the terminal unit air volume flow rate multiplied by the fraction of outdoor air entering the air loop's outside air system. @@ -118,7 +118,7 @@ \subsubsection{Inputs}\label{inputs-1-001} The design maximum volume flow rate~ (m\(^{3}\)/sec). This field is autosizable. -\paragraph{Field: Design Specification Outdoor Air Object Name}\label{field-DSOA-object-name} +\paragraph{Field: Design Specification Outdoor Air Object Name} This field is used to modulate the terminal unit flow rate based on the specified outdoor air requirement. When the name of a \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object is entered, the terminal unit will adjust flow to meet this outdoor air requirement and no more. Load is still "Uncontrolled." If Outdoor Air Flow per Person is non-zero, then the outdoor air requirement will be computed based on either the current or design occupancy as specified in the \textit{Per Person Ventilation Rate Mode} input field below. At no time will the supply air flow rate exceed the value for Maximum Air Flow Rate. The requested flow rate may not be fully met if the system is operating with cycling fan. The volume flow rate is converted to mass flow rate using the standard density of air at Pressure = 101325 Pa, Temperature = 20C, and Humidity Ratio = 0.0. If this field is blank, then the terminal unit will not be controlled for outdoor air flow. This field is optional. @@ -280,7 +280,7 @@ \subsubsection{Inputs}\label{inputs-2-001} This alpha field specifies the name of a \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object. When this field is used, the terminal unit will increase flow as needed to meet this outdoor air requirement. If Outdoor Air Flow per Person is non-zero, then the outdoor air requirement will be computed based on the current number of occupants in the zone. At no time will the supply air flow rate exceed the value for Maximum Air Flow Rate. If this field is blank, then the terminal unit will not be controlled for outdoor air flow. See documentation for the zone HVAC outdoor air object for further information (Ref \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir}). -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts the \textit{Constant Minimum Air Flow Fraction}, \textit{Fixed Minimum Air Flow Rate}, or \textit{Minimum Air Flow Fraction Schedule} value by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1. @@ -371,7 +371,7 @@ \subsubsection{Outputs}\label{outputs-2-000} This output is the value for the minimum air flow fraction setting on a VAV terminal.~~ This is the average value over the frequency being reported. The minimum air flow fraction is defined as the lower limit on the terminal unit air mass flow rate divided by the terminal units maximum air mass flow rate. -\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}}\label{zone-air-terminal-outdoor-air-volume-flow-rate-m3s} +\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}} This output is the amount of outdoor air entering the zone. This is the average value over the frequency being reported. The amount of outdoor air is defined as the terminal unit air volume flow rate multiplied by the fraction of outdoor air entering the air loop's outside air system. @@ -448,7 +448,7 @@ \subsubsection{Inputs}\label{inputs-3-000} The minimum hot water or steam volumetric flow rate in m\(^{3}\)/s through the unit's heating coil. The steam volumetric flow rate is calculated at 100C and 101325 Pa. If the heating coil is not a hot water or steam coil this field should be left blank. -\paragraph{Field: Heating Convergence Tolerance}\label{field-heating-convergence-tolerance} +\paragraph{Field: Heating Convergence Tolerance} The control tolerance for the unit heating output. The unit is controlled by matching the unit output to the zone demand. The model must be numerically inverted to obtain a specified output. The convergence tolerance is the error tolerance used to terminate the numerical inversion procedure. Basically, this is the fraction: @@ -462,7 +462,7 @@ \subsubsection{Inputs}\label{inputs-3-000} The default is 0.001. -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts \textit{Zone Minimum Air Flow Fraction} by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1 and the VAV air terminal uses the fixed fraction specified in in the field \textit{Zone Minimum Air Flow Fraction}. @@ -616,7 +616,7 @@ \subsubsection{Inputs}\label{inputs-4-000} This is the upper limit on the temperature in degrees C of the air leaving the terminal unit -- reheat coil (and being delivered to the zone). If the user leaves this field blank, no maximum reheat air temperature is enforced. -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts the \textit{Zone Minimum Air Flow Fraction} by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1 and uses the fixed fraction specified in the field \textit{Zone Minimum Air Flow Fraction}. @@ -707,7 +707,7 @@ \subsubsection{Inputs}\label{inputs-5-000} This alpha field specifies the name of a \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object. When this field is used, the terminal unit will increase flow as needed to meet this outdoor air requirement. If Outdoor Air Flow per Person is non-zero, then the outdoor air requirement will be computed based on the current number of occupants in the zone. At no time will the supply air flow rate exceed the value for Maximum Air Flow Rate. If this field is blank, then the terminal unit will not be controlled for outdoor air flow. See documentation for the zone HVAC outdoor air object for further information (Ref \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir}). -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts the \textit{Constant Minimum Air Flow Fraction}, \textit{Fixed Minimum Air Flow Rate}, or \textit{Minimum Air Flow Fraction Schedule} value by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1. @@ -817,7 +817,7 @@ \subsubsection{Inputs}\label{inputs-6-000} This numeric field defines the minimum air volume flow rate to the zone while the system is operating, specified as a fraction of the maximum air flow rate. The minimum zone fraction is normally specified to meet the minimum ventilation requirement for the occupants. This value must be between 0 and 1. -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts the \textit{Zone Minimum Air Flow Fraction} by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1 and uses the fixed fraction specified in the field \textit{Zone Minimum Air Flow Fraction}. @@ -1769,7 +1769,7 @@ \subsubsection{Inputs}\label{inputs-12-000} This field allows modifying the behavior of this air terminal so that it is modulated to supply the required outdoor air to the zone. This field is optional. When the name of an \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object is entered, the model is changed to adjust the flow rate to provide the volume of outdoor air described by that object. This feature allows modeling demand controlled ventilation on a zone-by-zone basis using the Outdoor Air Flow per Person rate (specified in the \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object) and the number of occupants (specified in the \hyperref[people]{People} object schedules). If the outdoor air fraction of the supply air is 1.0, as for a dedicated outdoor air system, the air flow rate will match the outdoor air requirement. When the outdoor air fraction is less than 1.0, as for a recirculating air system, the terminal air flow will be modulated upward to account for the increased total air flow needed to provide the required flow rate of outdoor air. The total air flow rate will not exceed the Maximum Air Flow Rate specified above. The volume flow rate is converted to mass flow rate using the standard density of air at Pressure = 101325 Pa, Temperature = 20C, and Humidity Ratio = 0.0. -\paragraph{Field: Per Person Ventilation Rate Mode}\label{field-per-person-ventilation-rate-mode} +\paragraph{Field: Per Person Ventilation Rate Mode} This field specifies how the outdoor air ventilation rates are calculated when based on a rate per person.~ It can be either based on the current number of people as affected by time-varying occupancy schedules, or on the constant value for the maximum number of people.~~ Enter the key CurrentOccupancy for the former and DesignOccupancy for the later. @@ -1899,7 +1899,7 @@ \subsubsection{Inputs}\label{inputs-15-000} This alpha field specifies the name of a \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object. When this field is used, the terminal unit will increase flow as needed to meet this outdoor air requirement. If Outdoor Air Flow per Person is non-zero, then the outdoor air requirement will be computed based on the current number of occupants in the zone. At no time will the supply air flow rate exceed the value for Maximum Air Flow Rate. If this field is blank, then the terminal unit will not be controlled for outdoor air flow. See documentation for the zone HVAC outdoor air object for further information (Ref \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir}). -\paragraph{Field: Minimum Air Flow Turndown Schedule Name}\label{field-minimum-air-flow-turndown-schedule-name} +\paragraph{Field: Minimum Air Flow Turndown Schedule Name} This field adjusts \textit{Zone Minimum Air Flow Fraction} by multiplying it using this schedule. Schedule values are fractions, 0.0 to 1.0. This field adjusts the minimum airflow turndown value below the zone design minimum air flow and is intended for use with ASHRAE Standard 170. This field can also be used to adjust the design minimum air flow sizing calculation by applying a desired fraction values to summer and winter design days turndown schedule. If this field is left blank, then the turndown minimum air flow fraction value is set to 1 and the VAV air terminal uses the fixed fraction specified in in the field \textit{Zone Minimum Air Flow Fraction}. @@ -2013,7 +2013,7 @@ \subsubsection{Inputs}\label{inputs-16-000} This field specifies the name of a \hyperref[designspecificationoutdoorair]{DesignSpecification:OutdoorAir} object.~ This field is required for this object.~ The terminal unit will modulate the Outdoor Air stream to meet this outdoor air requirement.~ If Outdoor Air Flow per Person is applied, then the outdoor air required will be based on either the current number of occupants in the zone, as for demand controlled ventilation, or the design level of occupants depending on the setting in the next field. -\paragraph{Field: Per Person Ventilation Rate Mode}\label{field-per-person-ventilation-rate-mode} +\paragraph{Field: Per Person Ventilation Rate Mode} This field specifies how the outdoor air ventilation rates are calculated when based on a rate per person.~ It can be either based on the current number of people as affected by time-varying occupancy schedules, or on the constant value for the maximum number of people.~~ Enter the key CurrentOccupancy for the former and DesignOccupancy for the later. diff --git a/doc/input-output-reference/src/overview/group-air-distribution.tex b/doc/input-output-reference/src/overview/group-air-distribution.tex index cbfd6be0b8b..26732c8e760 100644 --- a/doc/input-output-reference/src/overview/group-air-distribution.tex +++ b/doc/input-output-reference/src/overview/group-air-distribution.tex @@ -8,12 +8,12 @@ \subsection{AirLoopHVAC}\label{airloophvac} The next series of names refer to nodes for the various inlet and outlet points of the air loop. The air loop starts where the zone equipment ends. This is a single point consisting of the return air duct once all of the zone return air streams have been collected (if the loop has a return path). While in reality, there is really only one point, for clarity within the simulation components and consistency with the other HVAC loop sections, this point in the systems is defined as two points: one that resides with the zone equipment simulation and one that is acted upon by the air loop simulation. Both node names must be entered into the input file (if the loop has a return path), and both nodes must have unique names. Similarly, the end points of the air loop that also correspond to the beginning points of the zone equipment loop must also be defined. These consist of names referencing lists of up to three pairs of node names as shown below. Up to three air loop outlets are allowed to accommodate the simulation of three deck systems. -\paragraph{Schedules And Availability Manager}\label{schedules-and-availability-manager} +\paragraph{Schedules And Availability Manager} Regarding component schedules, the general rule is don't schedule any components except the supply fan and the corresponding availability manager(s). Beyond that, every component should always be available and let the controls determine what runs or doesn't run. If a component other than the supply fan is scheduled off, then it will remain off even if the night cycle manager turns on the system. \subsubsection{Inputs}\label{inputs-002} -\paragraph{Field: Name}\label{field-name-002} +\paragraph{Field: Name} This field is a unique, user assigned name for a single instance of an AirLoopHVAC object. Any other object referencing this AirLoopHVAC will use this name. @@ -813,7 +813,7 @@ \subsubsection{Inputs}\label{inputs-5-001} This field is used to specify whether the pressure curve is symmetric or not. \textbf{Yes} for curves that should be evaluated from 0 to 180 degrees. \textbf{No} for curves that should be evaluated from 0 to 360 degrees. -\paragraph{Field: Wind Angle Type}\label{field-wind-angle-type} +\paragraph{Field: Wind Angle Type} This field is used to specify whether the angle used to compute the wind pressure coefficient is absolute or relative. \textbf{Relative} for computing the angle between the wind direction and the surface azimuth. \textbf{Absolute} for using the wind direction angle directly. diff --git a/doc/input-output-reference/src/overview/group-air-path.tex b/doc/input-output-reference/src/overview/group-air-path.tex index 97faa5cba51..250b77a5da2 100644 --- a/doc/input-output-reference/src/overview/group-air-path.tex +++ b/doc/input-output-reference/src/overview/group-air-path.tex @@ -223,17 +223,17 @@ \subsection{AirLoopHVAC:ZoneSplitter}\label{airloophvaczonesplitter} The AirLoopHVAC:ZoneSplitter is a component that splits airflow from a single inlet to multiple outlets. This component must be referenced in an \hyperref[airloophvacsupplypath]{AirLoopHVAC:SupplyPath} object. The input contains only node connection information. -\subsubsection{Inputs}\label{inputs-4-002} +\subsubsection{Inputs} -\paragraph{Field: Name}\label{field-name-4-002} +\paragraph{Field: Name} Unique name for this zone splitter. -\paragraph{Field: Inlet Node Name}\label{field-inlet-node-name-2} +\paragraph{Field: Inlet Node Name} The name of the single inlet node going into the splitter. -\paragraph{Field: Outlet \textless{}\#\textgreater{} Node Name}\label{field-outlet-node-name-2} +\paragraph{Field: Outlet \textless{}\#\textgreater{} Node Name} The name of a splitter outlet node. There is no limit to the number of outlet nodes, and there may be no duplicate outlet node names. (Note that some EnergyPlus editing tools may allow only 500 outlet node names, but this may be increased by extending the object in the Energy+.idd file.) @@ -253,17 +253,17 @@ \subsection{AirLoopHVAC:ZoneMixer}\label{airloophvaczonemixer} The AirLoopHVAC:ZoneMixer takes the air from multiple inlets and mixes the streams together to be sent out of a single outlet node. This is a simple process of summing flows and averaging the air properties. This compoment may be part of an air loop return path or part of an induction terminal unit. When used as a return air mixer, this component must be listed in an \hyperref[airloophvacreturnpath]{AirLoopHVAC:ReturnPath} object, and the inlets may be zone return air nodes or \hyperref[airloophvacreturnplenum]{AirLoopHVAC:ReturnPlenum} outlet nodes. When used in an induction terminal unit (ref. \hyperref[airterminalsingleductseriespiureheat]{AirTerminal:SingleDuct:SeriesPIU:Reheat}, \hyperref[airterminalsingleductparallelpiureheat]{AirTerminal:SingleDuct:ParallelPIU:Reheat}, and \hyperref[airterminalsingleductconstantvolumefourpipeinduction]{AirTerminal:SingleDuct:ConstantVolume:FourPipeInduction}), one inlet node is the supply (primary) air inlet from the central air handler, and the second inlet node is the induced (secondary) air inlet. These node names should match equivalent node names in the terminal unit. -\subsubsection{Inputs}\label{inputs-5-002} +\subsubsection{Inputs} -\paragraph{Field: Name}\label{field-name-5-002} +\paragraph{Field: Name} Unique name for this zone mixer. -\paragraph{Field: Outlet Node Name}\label{field-outlet-node-name-3} +\paragraph{Field: Outlet Node Name} The name of the single outlet node leaving the mixer. -\paragraph{Field: Inlet \textless{}\#\textgreater{} Node Name}\label{field-inlet-node-name-3} +\paragraph{Field: Inlet \textless{}\#\textgreater{} Node Name} The name of a mixer inlet node. There is no limit to the number of inlet nodes, and there may be no duplicate inlet node names. (Note that some EnergyPlus editing tools may allow only 500 inlet node names, but this may be increased by extending the object in the Energy+.idd file.) @@ -281,7 +281,7 @@ \subsubsection{Inputs}\label{inputs-5-002} \subsection{AirLoopHVAC:DedicatedOutdoorAirSystem}\label{airloophvacdedicatedoutdoorairsystem} -The AirLoopHVAC:DedicatedOutdoorAirSystem is a central dedicated outdoor air system (DOAS) and deliveres outdoor air to multiple \hyperref[airloophvac]{AirLoopHVAC} systems. The amount of delivered outdoor air is based on a sum of outdoor air flow rates from outdoor air stream nodes defined in the \hyperref[outdoorairmixe]{OutdoorAir:Mixer}. These OutdoorAir:Mixer objects are a component of served multiple AirLoopHVAC systems. The central DOAS system also pretreates outdoor air before outdoor air distribution into multiple AirLoopHVAC, with given precool and preheat air conditions. +The AirLoopHVAC:DedicatedOutdoorAirSystem is a central dedicated outdoor air system (DOAS) and deliveres outdoor air to multiple \hyperref[airloophvac]{AirLoopHVAC} systems. The amount of delivered outdoor air is based on a sum of outdoor air flow rates from outdoor air stream nodes defined in the \hyperref[outdoorairmixer]{OutdoorAir:Mixer}. These OutdoorAir:Mixer objects are a component of served multiple AirLoopHVAC systems. The central DOAS system also pretreates outdoor air before outdoor air distribution into multiple AirLoopHVAC, with given precool and preheat air conditions. After the object name, the object has four fields to provide the name of AirLoopHVAC:OutdoorAirSystem, system availability, and names of AirLoopHVAC:Mixer and AirLoopHVAC:Splitter. The AirLoopHVAC:OutdoorAirSystem lists a controller to perform controls, and coils and fans to pretreat outdoor air before delivery to served AirLoopHVAC. The Availability Schedule determines times when a system is operationa or shutdownl. The AirLoopHVAC:Mixer and AirLoopHVAC:Splitter provide connection into distribution and relief nodes, respectively. @@ -289,9 +289,9 @@ \subsection{AirLoopHVAC:DedicatedOutdoorAirSystem}\label{airloophvacdedicatedout The last section lists the number of AirLoopHVAC to be served and names of served AirLoopHVAC objects. -\subsubsection{Inputs}\label{inputs-002} +\subsubsection{Inputs} -\paragraph{Field: Name}\label{field-name-002} +\paragraph{Field: Name} This field is a unique, user assigned name for a single instance of an AirLoopHVAC:DedicatedOutdoorAirSystem object. Any other object referencing this AirLoopHVAC:DedicatedOutdoorAirSystem will use this name. @@ -303,19 +303,19 @@ \subsubsection{Inputs}\label{inputs-002} The name of a schedule that specifies when the system is available. -\paragraph{Field: Preheat Design Temperature}\label{field-preheat-design-temperature} +\paragraph{Field: Preheat Design Temperature} The design air temperature exiting the preheat coil (if any) in degrees Celsius. -\paragraph{Field: Preheat Design Humidity Ratio}\label{field-preheat-design-humidity-ratio} +\paragraph{Field: Preheat Design Humidity Ratio} The design humidity ratio exiting the preheat coil (if any) in kilograms of water per kilogram of dry air. (kgWater/kgDryAir) -\paragraph{Field: Precool Design Temperature}\label{field-precool-design-temperature} +\paragraph{Field: Precool Design Temperature} The design air temperature exiting the precooling coil (if any) in degrees Celsius. -\paragraph{Field: Precool Design Humidity Ratio}\label{field-precool-design-humidity-ratio} +\paragraph{Field: Precool Design Humidity Ratio} The design humidity ratio exiting the precooling coil (if any) in kilograms of water per kilogram of dry air. (kgWater/kgDryAir) @@ -351,7 +351,7 @@ \subsubsection{Inputs}\label{inputs-002} \subsection{AirLoopHVAC:Mixer}\label{airloophvacmixer} -The AirLoopHVAC:Mixer takes the air from multiple inlets and mixes the streams together to be sent out of a single outlet node. This is a simple process of summing flows and averaging the air properties. This component must be referenced in an \hyperref[airloophvacdedicatedoutdoorairsystem]{AirLoopHVAC:DedicatedOutdoorAirSystem} object. The multiple inlet nodes are relief nodes of \hyperref[outdoorairmixe]{OutdoorAir:Mixer}, whihc is a component of AirLoopHVAC, served by the AirLoopHVAC:DedicatedOutdoorAirSystem object. The single outlet node is connected into either outdoor or a heat exchanger. The heat exchanger must be listed as a component in AirLoopHVAC:OutdoorAirSystem, referenced in the AirLoopHVAC:DedicatedOutdoorAirSystem object. +The AirLoopHVAC:Mixer takes the air from multiple inlets and mixes the streams together to be sent out of a single outlet node. This is a simple process of summing flows and averaging the air properties. This component must be referenced in an \hyperref[airloophvacdedicatedoutdoorairsystem]{AirLoopHVAC:DedicatedOutdoorAirSystem} object. The multiple inlet nodes are relief nodes of \hyperref[outdoorairmixer]{OutdoorAir:Mixer}, whihc is a component of AirLoopHVAC, served by the AirLoopHVAC:DedicatedOutdoorAirSystem object. The single outlet node is connected into either outdoor or a heat exchanger. The heat exchanger must be listed as a component in AirLoopHVAC:OutdoorAirSystem, referenced in the AirLoopHVAC:DedicatedOutdoorAirSystem object. \subsubsection{Inputs}\label{inputs-5-002} @@ -383,7 +383,7 @@ \subsubsection{Inputs}\label{inputs-5-002} \subsection{AirLoopHVAC:Splitter}\label{airloophvacsplitter} -The AirLoopHVAC:Splitter is a component that splits airflow from a single inlet to multiple outlets. This component must be referenced in an \hyperref[airloophvacdedicatedoutdoorairsystem]{AirLoopHVAC:DedicatedOutdoorAirSystem} object. The input contains only node connection information. The multiple outlet nodes must be outdoor air stream nodes of \hyperref[outdoorairmixe]{OutdoorAir:Mixer}, whihc is a component of AirLoopHVAC, served by the AirLoopHVAC:DedicatedOutdoorAirSystem object. +The AirLoopHVAC:Splitter is a component that splits airflow from a single inlet to multiple outlets. This component must be referenced in an \hyperref[airloophvacdedicatedoutdoorairsystem]{AirLoopHVAC:DedicatedOutdoorAirSystem} object. The input contains only node connection information. The multiple outlet nodes must be outdoor air stream nodes of \hyperref[outdoorairmixer]{OutdoorAir:Mixer}, whihc is a component of AirLoopHVAC, served by the AirLoopHVAC:DedicatedOutdoorAirSystem object. \subsubsection{Inputs}\label{inputs-4-002} diff --git a/doc/input-output-reference/src/overview/group-airflow-network.tex b/doc/input-output-reference/src/overview/group-airflow-network.tex index efdf2978493..24ccd32cbae 100644 --- a/doc/input-output-reference/src/overview/group-airflow-network.tex +++ b/doc/input-output-reference/src/overview/group-airflow-network.tex @@ -600,7 +600,7 @@ \subsubsection{Field: External Node Name}\label{field-external-node-name} object, this field is not used and a blank may be entered. If the surface is an interior (i.e., interzone) surface, leave this field blank. -When there is an input object of either \hyperref[zonepropertylocalenvironment]{ZoneProperty:LocalEnvironment} or \hyperref[surfacepropertylocalenvironment]{SurfaceProperty:LocalEnvironment}, LocalEnvironment is enable, so that entered names of \hyperref[outdoorairnode]{OutdoorAir:Node} can be used as inputs for this field. More descrption of use can be found in OutdoorAir:Node. +When there is an input object of either \hyperref[ZonePropertylocalEnvironment]{ZoneProperty:LocalEnvironment} or \hyperref[surfacePropertylocalEnvironment]{SurfaceProperty:LocalEnvironment}, LocalEnvironment is enable, so that entered names of \hyperref[outdoorairnode]{OutdoorAir:Node} can be used as inputs for this field. More descrption of use can be found in OutdoorAir:Node. \subsubsection{Field: Window/Door Opening Factor, or Crack Factor}\label{field-windowdoor-opening-factor-or-crack-factor} @@ -2270,7 +2270,7 @@ \subsubsection{Inputs}\label{inputs-AFN-outdoorairflow} This is the name for this instance of the AirflowNetwork:Distribution:Component:OutdoorAirFlow object. -\paragraph{Field: Outdoor Air Mixer Name}\label{field-name-outdoor-air-mixer} +\paragraph{Field: Outdoor Air Mixer Name} The name identifying an AirflowNetwork OutdoorAirFlow defined in an air loop as an \hyperref[outdoorairmixer]{OutdoorAir:Mixer} object. This name must be the same name as the associated \hyperref[outdoorairmixer]{OutdoorAir:Mixer} object. diff --git a/doc/input-output-reference/src/overview/group-coil-cooling-dx.tex b/doc/input-output-reference/src/overview/group-coil-cooling-dx.tex index fd7dc7ada50..5bad7304e8c 100644 --- a/doc/input-output-reference/src/overview/group-coil-cooling-dx.tex +++ b/doc/input-output-reference/src/overview/group-coil-cooling-dx.tex @@ -36,7 +36,7 @@ \subsubsection{Inputs}\label{inputs-01} The name of the HVAC system node to which the evaporator of the DX cooling coil sends its outlet air. -\paragraph{Field: Availability Schedule Name}\label{field-availability-schedule-name-6-001} +\paragraph{Field: Availability Schedule Name} The name of the schedule (ref: Schedule) that denotes whether the DX cooling coil can run during a given time period. A schedule value greater than 0 (usually 1 is used) indicates that the unit can be on during a given time period. A value less than or equal to 0 (usually 0 is used) denotes that the unit must be off. If this field is blank, the schedule has values of 1 for all time periods. @@ -56,7 +56,7 @@ \subsubsection{Inputs}\label{inputs-01} The name of the Coil:Cooling:DX:CurveFit:Performance object that defines this coil's performance specifications. -\paragraph{Field: Condensate Collection Water Storage Tank Name}\label{field-condensate-collection-water-storage-tank-name-2} +\paragraph{Field: Condensate Collection Water Storage Tank Name} This field is optional. It is used to describe where condensate from the coil is collected. If blank or omitted, then any coil condensate is discarded. Enter the name of a WaterUse:Storage object defined elsewhere and the condensate will then be collected in that tank. @@ -74,23 +74,23 @@ \subsubsection{Inputs}\label{inputs-02} A unique user-assigned name for an instance of a cooling coil performance specification. Any reference to this cooling coil performance specification by a cooling coil object will use this name. -\paragraph{Field: Crankcase Heater Capacity}\label{field-crankcase-heater-capacity} +\paragraph{Field: Crankcase Heater Capacity} This numeric field defines the crankcase heater capacity in Watts. When the outdoor air dry-bulb temperature is below the value specified in the input field Maximum Outdoor Dry-bulb Temperature for Crankcase Heater Operation (described below), the crankcase heater is enabled during the time that the compressor is not running. If this cooling coil is used as part of an air-to-air heat pump (Ref. AirLoopHVAC:UnitaryHeatPump:AirToAir or PackageTerminal: HeatPump:AirToAir), the crankcase heater defined for this DX cooling coil is ignored and the crankcase heater power defined for the DX heating coil (Ref. Coil:Heating:DX:SingleSpeed) is enabled during the time that the compressor is not running for either heating or cooling. The value for this input field must be greater than or equal to 0, and the default value is 0. To simulate a DX cooling coil without a crankcase heater, enter a value of 0. -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the default value is -25 °C (-13 °F). -\paragraph{Field: Maximum Outdoor Dry-Bulb Temperature for Crankcase Heater Operation}\label{field-maximum-outdoor-dry-bulb-temperature-for-crankcase-heater-operation} +\paragraph{Field: Maximum Outdoor Dry-Bulb Temperature for Crankcase Heater Operation} This numeric field defines the outdoor air dry-bulb temperature above which the compressor's crankcase heater is disabled. The value for this input field must be greater than or equal to 0.0 °C (32 °F), and the default value is 10 °C (50 °F). -\paragraph{Field: Unit Internal Static Air Pressure}\label{field-unit-internal-static-air-pressure} +\paragraph{Field: Unit Internal Static Air Pressure} If this coil is used with a Fan:VariableVolume to model a packaged variable-air-volume unit, then ratings for standard rated net capacity, EER, and IEER will be calculated per ANSI/AHRI Standard 340/360-2007 with Addenda 1 and 2. This field is to specify the internal static air pressure, in units of Pascals, associated with the unit's supply air flow for rating purposes. This field does not affect the performance during operation. This field is optional. If this field is used, then the internal static air pressure is used with the associated fan characteristics when calculating standard rated net capacity, EER, and IEER. If this field is not used, then the standard ratings are still performed but use a default for specific fan power of 773.3 (W/(m\(^{3}\)/s)). The air pressure drop/rise input here should be internal in the sense that it is for the entire package of unitary equipment as it would be tested in a laboratory (including other non-cooling sections inside the package for filters, dampers, and/or heating coils) but none of the external pressure drop for distributing supply air throughout the building. This is different from the input field called Pressure Rise in the fan object which includes both the external static pressure and the internal static pressure. The results of standard rating calculations are reported to the EIO file and to predefined output tables called DX Cooling Coils and VAV DX Cooling Standard Rating Details. -\paragraph{Field: Capacity Control Method}\label{field-capacity-control-method} +\paragraph{Field: Capacity Control Method} This choice field defined the capacity control method. Valid choices for this input field are \textbf{Discrete} \textbf{Continuous}. The default for this field is \textbf{Discrete}. \textbf{Discrete} control mode allow the coil to operate at discrete speed levels. \textbf{Continuous} control mode allows the coil performance to be operated at continuously variable speeds. @@ -100,7 +100,7 @@ \subsubsection{Inputs}\label{inputs-02} \paragraph{Field: Evaporative Condenser Basin Heater Setpoint Temperature}\label{field-evaporative-condenser-basin-heater-setpoint-temperature-000} -This numeric field contains the set point temperature (\SI{\celsius}) for the basin heater described in the previous field. This field only applies for Condenser Type = \textbf{EvaporativelyCooled}. The basin heater is active when the outdoor air dry-bulb temperature falls below this setpoint temperature, as long as the DX coil is off. This set point temperature must be greater than or equal to \SI{2}{\celsius} (\SI{35.6}{\fahrenheit}), and the default value is \SI{2}{\celsius} (\SI{35.6}{\fahrenheit}) if this field is left blank. +This numeric field contains the set point temperature (\si{\celsius}) for the basin heater described in the previous field. This field only applies for Condenser Type = \textbf{EvaporativelyCooled}. The basin heater is active when the outdoor air dry-bulb temperature falls below this setpoint temperature, as long as the DX coil is off. This set point temperature must be greater than or equal to \SI{2}{\celsius} (\SI{35.6}{\fahrenheit}), and the default value is \SI{2}{\celsius} (\SI{35.6}{\fahrenheit}) if this field is left blank. \paragraph{Field: Evaporative Condenser Basin Heater Operating Schedule Name}\label{field-evaporative-condenser-basin-heater-operating-schedule-name-000} @@ -146,29 +146,29 @@ \subsubsection{Inputs}\label{inputs-03} The air volume flow rate, in m\(^{3}\) per second, entering the evaporative condenser. This value is used to calculate the amount of water used to evaporatively cool the condenser inlet air. The minimum value for this field must be greater than zero, and this input field is autosizable (equivalent to 0.000144 m\(^{3}\)/s per watt of rated total cooling capacity {[}850 cfm/ton{]}). This field is not used when Condenser Type = \textbf{AirCooled}. -\paragraph{Field: Maximum Cycling Rate}\label{field-maximum-cycling-rate} +\paragraph{Field: Maximum Cycling Rate} The maximum on-off cycling rate for the compressor (cycles per hour), which occurs at 50\% run time fraction. Suggested value is 3; zero value means latent degradation model is disabled. The default value for this field is zero. The supply air fan operating mode must be continuous (i.e., the supply air fan operating mode may be specified in other parent objects and is assumed continuous in some objects (e.g., CoilSystem:Cooling:DX) or can be scheduled in other objects (e.g., AirloopHVAC:UnitaryHeatCool); and this field, the previous two fields and the next field must have positive values in order to model latent capacity degradation. -\paragraph{Field: Ratio of Initial Moisture Evaporation Rate and Steady State Latent Capacity}\label{field-ratio-of-initial-moisture-evaporation-rate-and-steady-state-latent-capacity} +\paragraph{Field: Ratio of Initial Moisture Evaporation Rate and Steady State Latent Capacity} Ratio of the initial moisture evaporation rate from the cooling coil (when the compressor first turns off, in Watts) and the coil's steady-state latent capacity (Watts) at rated airflow and temperature conditions. Suggested value is 1.5; zero value means the latent degradation model is disabled. The default value for this field is zero. The supply air fan operating mode must be continuous (i.e., the supply air fan operating mode may be specified in other parent objects and is assumed continuous in some objects (e.g., CoilSystem:Cooling:DX) or can be scheduled in other objects (e.g., AirloopHVAC:UnitaryHeatCool); and this field, the previous field and the next two fields must have positive values in order to model latent capacity degradation. -\paragraph{Field: Latent Capacity Time Constant}\label{field-latent-capacity-time-constant} +\paragraph{Field: Latent Capacity Time Constant} Time constant (in seconds) for the cooling coil's latent capacity to reach steady state after startup. Suggested value is 45: supply air fan operating mode must be continuous. That is, the supply air fan operating mode may be specified in other parent objects and is assumed continuous in some objects (e.g., CoilSystem:Cooling:DX) or can be scheduled in other objects (e.g., AirloopHVAC:UnitaryHeatCool). -\paragraph{Field: Nominal Time for Condensate Removal to Begin}\label{field-nominal-time-for-condensate-removal-to-begin} +\paragraph{Field: Nominal Time for Condensate Removal to Begin} The nominal time (in seconds) after startup for condensate to begin leaving the coil's condensate drain line at the coil's rated airflow and temperature conditions, starting with a dry coil. Nominal time is equal to the ratio of the energy of the coil's maximum condensate holding capacity (J) to the coil's steady-state latent capacity (W). Suggested value is 1000; zero value means the latent degradation model is disabled. The default value for this field is zero. The supply air fan operating mode must be continuous (i.e., the supply air fan operating mode may be specified in other parent objects and is assumed continuous in some objects (e.g., CoilSystem:Cooling:DX) or can be scheduled in other objects (e.g., AirloopHVAC:UnitaryHeatCool), and this field as well as the previous three input fields for this object must have positive values in order to model latent capacity degradation. -\paragraph{Field: Apply Latent Degradation to Speeds Greater than 1}\label{field-apply-latent-degradation-to-speeds-greater-than-1} +\paragraph{Field: Apply Latent Degradation to Speeds Greater than 1} This field determines whether latent capacity degradation is applied when the coil is operating at speeds greater than speed 1. The allowed choices are \textbf{Yes} or \textbf{No}, with the default being \textbf{No} if this field is left blank. Other input fields in this object allow the user to specify latent capacity degradation at each speed. The latent capacity degradation model only applies when the ContinuousFanWithCyclingCompressor supply air fan operating mode is specified, to account for moisture evaporation from the wet cooling coil when the compressor cycles off but the supply air fan continues to operate. For the case of a single multi-speed compressor, latent capacity degradation may only be significant when the compressor cycles between speed 1 and off, but the losses may be extremely small when the compressor operates between speed 1 and speed 2 (or between speeds 2 and 3, etc.). In this case, the user may choose to specify \textbf{No} for this input field to neglect latent capacity degradation impacts at higher operating speeds. If latent capacity degradation is thought to be significant (e.g., intertwined or row-split cooling coil with multiple compressors feeding individual refrigerant circuits), then the user may choose to specify \textbf{Yes} and the latent capacity degradation model will be applied for speeds 2 through 10 as appropriate. The selection for this input field does not affect latent capacity degradation between speed 1 and off. -\paragraph{Field: Condenser Type}\label{field-condenser-type-3} +\paragraph{Field: Condenser Type} The type of condenser used by the DX cooling coil. Valid choices for this input field are \textbf{AirCooled} or \textbf{EvaporativelyCooled}. The default for this field is \textbf{AirCooled}. @@ -210,7 +210,7 @@ \subsubsection{Inputs}\label{inputs-04} This numeric field defines the gross sensible heat ratio (sensible capacity divided by total cooling capacity) of the DX cooling coil at rated conditions for a specific speed. Both the sensible and total cooling capacities used should be gross (i.e., the effect of supply air fan heat is NOT accounted for). -\paragraph{Field: Gross Cooling COP}\label{field-gross-rated-cooling-cop} +\paragraph{Field: Gross Cooling COP} The coefficient of performance is the ratio of the gross total cooling capacity in Watts to electrical power input in Watts of the DX cooling coil unit at rated conditions (air entering the cooling coil at 26.7 °C drybulb/19.4 °C wetbulb (80 °F drybulb/67 °F wetbulb), air entering the outdoor condenser coil at 35 °C drybulb/ 23.9 °C wetbulb (95 °F drybulb/75 °F wetbulb), and a cooling coil air flow rate defined by field rated air flow rate below). The input power includes electric power for the compressor(s) and condenser fan(s) but does not include the power consumption of the supply air fan. The gross COP should NOT account for the supply air fan. If this input field is left blank, the default value is 3.0. @@ -218,7 +218,7 @@ \subsubsection{Inputs}\label{inputs-04} Defines the fraction of the cooling coil face which is actively cooled at a specific speed. Value varies between 0.0 and 1.0. For non-split-face coils, this should be 1.0. -\paragraph{Field: Rated Evaporator Fan Power Per Volume Flow Rate}\label{field-rated-evaporator-fan-power-per-volume-flow-rate} +\paragraph{Field: Rated Evaporator Fan Power Per Volume Flow Rate} This field is the electric power for the evaporator (cooling coil) fan per air volume flow rate through the coil at the rated conditions in W/(m\(^{3}\)/s). The default value is 773.3 W/(m\(^{3}\)/s) (365 W/1000 cfm) if this field is left blank. If a value is entered, it must be \textgreater{} = 0.0 and \textless{} = 1250 W/(m\(^{3}\)/s). This value is only used to calculate Seasonal Energy Efficiency Ratio (SEER), Energy Efficiency Ratio (EER), Integrated Energy Efficiency Ratio (IEER) and the Standard Rating (Net) Cooling Capacity which will be outputs in the EnergyPlus eio file (ref. EnergyPlus Engineering Reference, Single Speed DX Cooling Coil, Standard Ratings). This value is not used for modeling the evaporator (cooling coil) fan during simulations; instead, it is used for calculating SEER, EER, IEER and Standard Rating Cooling Capacity to assist the user in verifying their inputs for modeling this type of equipment. @@ -226,7 +226,7 @@ \subsubsection{Inputs}\label{inputs-04} The ratio of evaporative condenser pump power at a specific speed to the operating mode's \textit{Nominal Evaporative Condenser Pump Power}. This field is not used when Condenser Type = \textbf{AirCooled}. -\paragraph{Field: Evaporative Condenser Effectiveness}\label{field-evaporative-condenser-effectiveness} +\paragraph{Field: Evaporative Condenser Effectiveness} The effectiveness of the evaporative condenser at a specific speed, which is used to determine the temperature of the air entering the outdoor condenser coil as follows: @@ -250,7 +250,7 @@ \subsubsection{Inputs}\label{inputs-04} If the user wishes to model an air-cooled condenser that has evaporative media placed in front of it to cool the air entering the condenser coil, then the user should specify Condenser Type = \textbf{EvaporativelyCooled}. The user must also enter the appropriate evaporative effectiveness for the media. In this case, the Total Cooling Capacity Modifier Function of Temperature Curve and the Energy Input Ratio Modifier Function of Temperature Curve input fields for this object should reference performance curves that are a function of outdoor dry-bulb temperature. Be aware that the evaporative media will significantly reduce the dry-bulb temperature of the air entering the condenser coil, so the Total Cooling Capacity and EIR Modifier Function of Air Flow Fraction Curves must be valid for the expected range of dry-bulb temperatures that will be entering the condenser coil. -\paragraph{Field: Total Cooling Capacity Modifier Function of Temperature Curve Name}\label{field-total-cooling-capacity-function-of-temperature-curve-name} +\paragraph{Field: Total Cooling Capacity Modifier Function of Temperature Curve Name} The name of a bivariate (e.g. biquadratic) or univariate (e.g. quadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the gross total cooling capacity for a specific speed as a function of the wet-bulb temperature of the air entering the evaporator section, and the dry-bulb temperature of the air entering the condenser section (wet-bulb temperature if modeling an evaporative-cooled condenser). If a univariate curve or table is specified, then the independent variable is the entering condenser temperature. The curve is normalized to 1 at 19.44 °C (67 °F) indoor wet-bulb temperature and 35 °C (95 °F) outdoor dry-bulb temperature. The output of this curve is multiplied by the operating mode's \textit{Rated Gross Total Cooling Capacity} to give the gross total cooling capacity at specific temperature operating conditions (i.e., at temperatures different from the rating point temperatures). The curve is normalized to have the value of 1.0 at the rating point. @@ -258,7 +258,7 @@ \subsubsection{Inputs}\label{inputs-04} The name of a univariate (e.g. quadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the gross total cooling capacity for a specific speed as a function of the ratio of actual air flow rate across the cooling coil to the rated air flow rate for a specific speed (i.e., fraction of full load flow). The output of this curve is multiplied by the operating mode's \textit{Rated Gross Total Cooling Capacity} and the total cooling capacity modifier curve (function of temperature) to give the gross total cooling capacity for a specific speed at the specific temperature and air flow conditions at which the coil is operating. The curve is normalized to have the value of 1.0 when the actual air flow rate equals the rated air flow rate for Speed \textless{}x\textgreater{}. -\paragraph{Field: Energy Input Ratio Modifier Function of Temperature Curve Name}\label{field-energy-input-ratio-function-of-temperature-curve-name} +\paragraph{Field: Energy Input Ratio Modifier Function of Temperature Curve Name} The name of a bivariate (e.g. biquadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the energy input ratio (EIR) for a specific speed as a function of the wetbulb temperature of the air entering the evaporator section and the drybulb temperature of the air entering the condenser section (wetbulb temperature if modeling an evaporative-cooled condenser). The curve is normalized to 1 at 19.44 °C (67 °F) indoor wet-bulb temperature and 35 °C (95 °F) outdoor dry-bulb temperature. The EIR is the inverse of the COP. The output of this curve is multiplied by the rated EIR for a specific speed (inverse of rated COP for a specific speed) to give the EIR for a specific speed at specific temperature operating conditions (i.e., at temperatures different from the rating point temperatures). @@ -266,7 +266,7 @@ \subsubsection{Inputs}\label{inputs-04} The name of a univariate (e.g. quadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the energy input ratio (EIR) for a specific speed as a function of the ratio of actual air flow rate across the cooling coil to the rated air flow rate for a specific speed (i.e., fraction of full load flow). The EIR is the inverse of the COP. The output of this curve is multiplied by the rated EIR and the EIR modifier curve (function of temperature) to give the EIR for a specific speed at the specific temperature and air flow conditions at which the cooling coil is operating. This curve is normalized to a value of 1.0 when the actual air flow rate equals the rated air flow rate for a specific speed. -\paragraph{Field: Part Load Fraction Correlation Curve Name}\label{field-part-load-fraction-correlation-curve-name} +\paragraph{Field: Part Load Fraction Correlation Curve Name} The name of a univariate (e.g. quadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of electrical power input to the DX unit as a function of the part load ratio (PLR, sensible cooling load/steady-state sensible cooling capacity for a specific speed). The product of the rated EIR and EIR modifier curves is divided by the output of this curve to give the effective EIR for a given simulation timestep for a specific speed. The part load fraction (PLF) correlation accounts for efficiency losses due to compressor cycling. @@ -298,11 +298,11 @@ \subsubsection{Inputs}\label{inputs-04} The name of a bivariate (e.g. biquadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the waste heat recovery as a function of outdoor dry-bulb temperature and the entering coil dry-bulb temperature at a specific speed. The output of this curve is multiplied by the rated waste heat fraction at specific temperature operating conditions (i.e., at temperatures different from the rating point). The curve is normalized to a value of 1.0 at the rating point. When the fuel type is electricity, this field can remain blank since it is ignored by the program in this instance. When the fuel type is not electricity and the parent object AirLoopHVAC:UnitaryHeatPump:AirToAir:MultiSpeed does not require waste heat calculations, this field is ignored. If the field is blank, a warning will be issued and simulation continues. When the fuel type is not electricity and the parent object AirLoopHVAC:UnitaryHeatPump:AirToAir:MultiSpeed requires waste heat calculations, if this field is left blank, the program assumes a constant value of 1 to make simulation continue and a warning will be issued. -\paragraph{Field: Sensible Heat Ratio Modifier Function of Temperature Curve Name}\label{field-sensible-heat-ratio-modifier-function-of-temperature-curve-name} +\paragraph{Field: Sensible Heat Ratio Modifier Function of Temperature Curve Name} The name of a bivariate (e.g. biquadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the sensible heat ratio (SHR) as a function of DX cooling coil entering air wet-bulb and dry-bulb temperatures. The output of this curve is multiplied by the rated SHR and the SHR modifier curve (function of flow fraction) to give the SHR at the specific coil entering air temperature and air flow conditions at which the cooling coil is operating. This curve is normalized to a value of 1.0 at the rated condition. This input field is optional. If this input is not blank then the \textit{Sensible Heat Ratio Modifier Function of Flow Fraction Curve Name} must also be entered. If left blank, SHR is calculated using the apparatus dew point method based on total capacity and coil bypass factor. -\paragraph{Field: Sensible Heat Ratio Modifier Function of Flow Fraction Curve Name}\label{field-sensible-heat-ratio-modifier-function-of-flow-fraction-curve-name} +\paragraph{Field: Sensible Heat Ratio Modifier Function of Flow Fraction Curve Name} The name of a univariate (e.g. quadratic) curve or table object (ref Curve:* and Table:*) that parameterizes the variation of the sensible heat ratio (SHR) as a function of the ratio of actual air flow rate across the cooling coil to the rated air flow rate (i.e., fraction of full load flow). The output of this curve is multiplied by the rated SHR and the SHR modifier curve (function of temperature) to give the SHR at the specific temperature and air flow conditions at which the cooling coil is operating. This curve is normalized to a value of 1.0 when the actual air flow rate equals the rated air flow rate. This input field is optional. If this input is not blank then the \textit{Sensible Heat Ratio Modifier Function of Temperature Curve Name} must also be entered. If left blank, SHR is calculated using the apparatus dew point method based on total capacity and coil bypass factor. @@ -656,39 +656,39 @@ \subsubsection{Outputs}\label{outputs-01} HVAC,Average,SubcoolReheat Cooling Coil Recovered Heat Energy {[}J{]} \end{itemize} -\paragraph{Cooling Coil Total Cooling Rate {[}W{]}}\label{cooling-coil-total-cooling-rate-w} +\paragraph{Cooling Coil Total Cooling Rate {[}W{]}} This field is the total (sensible and latent) cooling rate output of the DX coil in Watts. This is determined by the coil inlet and outlet air conditions and the air mass flow rate through the coil. -\paragraph{Cooling Coil Total Cooling Energy {[}J{]}}\label{cooling-coil-total-cooling-energy-j} +\paragraph{Cooling Coil Total Cooling Energy {[}J{]}} This is the total (sensible plus latent) cooling output of the DX coil in Joules over the timestep being reported. This is determined by the coil inlet and outlet air conditions and the air mass flow rate through the coil. This output is also added to a meter with Resource Type = EnergyTransfer, End Use Key = CoolingCoils, Group Key = System (Ref. Output:Meter objects). -\paragraph{Cooling Coil Sensible Cooling Rate {[}W{]}}\label{cooling-coil-sensible-cooling-rate-w} +\paragraph{Cooling Coil Sensible Cooling Rate {[}W{]}} This output is the moist air sensible cooling rate output of the DX coil in Watts. This is determined by the inlet and outlet air conditions and the air mass flow rate through the coil. -\paragraph{Cooling Coil Sensible Cooling Energy {[}J{]}}\label{cooling-coil-sensible-cooling-energy-j} +\paragraph{Cooling Coil Sensible Cooling Energy {[}J{]}} This is the moist air sensible cooling output of the DX coil in Joules for the timestep being reported. This is determined by the inlet and outlet air conditions and the air mass flow rate through the coil. -\paragraph{Cooling Coil Latent Cooling Rate {[}W{]}}\label{cooling-coil-latent-cooling-rate-w-2} +\paragraph{Cooling Coil Latent Cooling Rate {[}W{]}} This is the latent cooling rate output of the DX coil in Watts. This is determined by the inlet and outlet air conditions and the air mass flow rate through the coil. -\paragraph{Cooling Coil Latent Cooling Energy {[}J{]}}\label{cooling-coil-latent-cooling-energy-j} +\paragraph{Cooling Coil Latent Cooling Energy {[}J{]}} This is the latent cooling output of the DX coil in Joules for the timestep being reported. This is determined by the inlet and outlet air conditions and the air mass flow rate through the coil. -\paragraph{Cooling Coil Electric Power {[}W{]}}\label{cooling-coil-electric-power-w} +\paragraph{Cooling Coil Electric Power {[}W{]}} This output is the electricity consumption rate of the DX coil compressor and condenser fan(s) in Watts. This value is calculated for each HVAC system timestep, and the results are averaged for the timestep being reported. -\paragraph{Cooling Coil Electric Energy {[}J{]}}\label{cooling-coil-electric-energy-j} +\paragraph{Cooling Coil Electric Energy {[}J{]}} This is the electricity consumption of the DX coil compressor and condenser fan(s) in Joules for the timestep being reported. This output is also added to a meter with Resource Type = Electricity, End Use Key = Cooling, Group Key = System (Ref. Output:Meter objects). -\paragraph{Cooling Coil Runtime Fraction {[]}}\label{cooling-coil-runtime-fraction} +\paragraph{Cooling Coil Runtime Fraction {[]}} This is the runtime fraction of the DX coil compressor and condenser fan(s) for the timestep being reported. diff --git a/doc/input-output-reference/src/overview/group-condenser-equipment.tex b/doc/input-output-reference/src/overview/group-condenser-equipment.tex index dcf41a30e05..888378b515a 100644 --- a/doc/input-output-reference/src/overview/group-condenser-equipment.tex +++ b/doc/input-output-reference/src/overview/group-condenser-equipment.tex @@ -53,7 +53,7 @@ \subsubsection{Inputs}\label{inputs-007} where a fan pressure rise of 190 Pascals and total fan efficiency of 0.5 are assumed. -\paragraph{Field: Design Fan Power}\label{field-design-fan-power} +\paragraph{Field: Design Fan Power} This numeric field contains the fan power (in watts) at the design air flow rate specified in the previous field. A value greater than zero must be specified regardless of the tower performance input method, or this field can be autosized. If autosized, the fan power is calculated as follows: @@ -121,7 +121,7 @@ \subsubsection{Inputs}\label{inputs-007} This numeric field specifies the design inlet air wet-bulb temperature of the tower. The default is \SI{25.6}{\celsius}. -\paragraph{Field: Design Approach Temperature}\label{field-design-approach-temperature} +\paragraph{Field: Design Approach Temperature} This numeric field specifies the design approach temperature of the tower corresponding to the design inlet air wet-bulb temperature and the design temperature range. The approach temperature should be the outlet water temperature minus the inlet air wet-bulb temperature at design conditions. @@ -3540,11 +3540,11 @@ \subsubsection{Inputs}\label{inputs-11-002} This numeric field is the center-to-center distance in between parallel trenches, in meters. -\paragraph{Field: Type of Undisturbed Ground Temperature Object}\label{field-type-of-undisturbed-ground-temperature-object} +\paragraph{Field: Type of Undisturbed Ground Temperature Object} The type of undisturbed ground temperature object used to determine ground temperature for the farfield boundary conditions. -\paragraph{Field: Name of Undisturbed Ground Temperature Object}\label{field-name-of-undisturbed-ground-temperature-object} +\paragraph{Field: Name of Undisturbed Ground Temperature Object} The name of the undisturbed ground temperature object used to determine ground temperature for the farfield boundary conditions. diff --git a/doc/input-output-reference/src/overview/group-daylighting.tex b/doc/input-output-reference/src/overview/group-daylighting.tex index 3ac34d59bb3..4d6b9eccd9e 100644 --- a/doc/input-output-reference/src/overview/group-daylighting.tex +++ b/doc/input-output-reference/src/overview/group-daylighting.tex @@ -1081,6 +1081,6 @@ \subsection{Daylighting Modeling Options}\label{daylighting-modeling-options} *Used only with \hyperref[daylightingcontrols-000]{Daylighting:Controls} with the SplitFlux Daylighting Method. -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} \protect\hyperlink{ux5fftnref1}{{[}1{]}} Formerly, only the exterior windows in a zone could provide daylight to that zone. diff --git a/doc/input-output-reference/src/overview/group-demand-limiting-controls.tex b/doc/input-output-reference/src/overview/group-demand-limiting-controls.tex index 7519dffa1f1..043d4c46e9a 100644 --- a/doc/input-output-reference/src/overview/group-demand-limiting-controls.tex +++ b/doc/input-output-reference/src/overview/group-demand-limiting-controls.tex @@ -36,7 +36,7 @@ \subsection{DemandManagerAssignmentList}\label{demandmanagerassignmentlist} already activated; load limited during a previous timestep. \end{itemize} -\subsubsection{Inputs}\label{inputs-010} +\subsubsection{Inputs} \paragraph{Field: Name}\label{field-name-009} diff --git a/doc/input-output-reference/src/overview/group-electric-load-center-generator.tex b/doc/input-output-reference/src/overview/group-electric-load-center-generator.tex index 29d7a785864..974baba776b 100644 --- a/doc/input-output-reference/src/overview/group-electric-load-center-generator.tex +++ b/doc/input-output-reference/src/overview/group-electric-load-center-generator.tex @@ -5164,7 +5164,7 @@ \subsubsection{Outputs}\label{outputs-12-001} This report is the azimuth angle between the relative flow velocity and the plane of chord. It varies as the wind speed increases, so that the lift and drag forces change. -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} \protect\hyperlink{ux5fftnref1}{{[}1{]}} Ulleberg Ø . (1997) Simulation of autonomous PV-H2 systems: analysis of the PHOEBUS plant design, operation and energy management. In \emph{Proceedings of ISES 1997 Solar World Congress}, August 24-30, Taejon, Korea. diff --git a/doc/input-output-reference/src/overview/group-evaporative-coolers.tex b/doc/input-output-reference/src/overview/group-evaporative-coolers.tex index 18900f3b3e0..fee3c4ef6ca 100644 --- a/doc/input-output-reference/src/overview/group-evaporative-coolers.tex +++ b/doc/input-output-reference/src/overview/group-evaporative-coolers.tex @@ -78,7 +78,7 @@ \subsubsection{Inputs}\label{inputs-016} Supply Outlet Node; !- Air Outlet Node Name \end{lstlisting} -\subsubsection{Outputs}\label{outputs-011} +\subsubsection{Outputs} The output variables that are available for this direct evaporative cooler are shown below: @@ -161,7 +161,7 @@ \subsubsection{Inputs}\label{inputs-1-014} This numeric field is the primary air design air flow rate in \si{\volumeFlowRate}. This input field is autosizable. If the evaporative cooler is on the main air loop branch, the design flow rate is the same as branch design flow rate. If the evaporative cooler is in the outdoor air system the design flow rate will be the maximum of the outdoor air design flow rate and one-half of the primary air flow rate on the main air loop branch. -\paragraph{Field: Recirculating Water Pump Design Power}\label{field-recirculating-water-pump-design-power} +\paragraph{Field: Recirculating Water Pump Design Power} This numeric field is the recirculating and spray pump electric power at the Primary Design Air Flow Rate in \si{\watt}. This is the nominal water recirculating and spray pump power of evaporative cooler at primary air design flow rates and cooler design effectiveness. @@ -176,7 +176,7 @@ \subsubsection{Inputs}\label{inputs-1-014} \paragraph{Field: Water Pump Power Modifier Curve Name}\label{field-water-pump-power-modifier-curve-name} -This alpha field is the name of a dimensionless normalized pump power modifying curve. This curve modifies the pump electric power in the previous field by multiplying the design power by the result of this curve. The normalized curve is a function of the primary air flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the ratio of the primary air flow rate divided by primary air Design Air Flow Rate. If this input field is left blank, the pump power is assumed to vary linearly with the load (including air system cycling, if any). If pump power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and \hyperref[tableoneindependentvariable]{Table:OneIndependentVariable}. +This alpha field is the name of a dimensionless normalized pump power modifying curve. This curve modifies the pump electric power in the previous field by multiplying the design power by the result of this curve. The normalized curve is a function of the primary air flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the ratio of the primary air flow rate divided by primary air Design Air Flow Rate. If this input field is left blank, the pump power is assumed to vary linearly with the load (including air system cycling, if any). If pump power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and one-dimensional \hyperref[tablelookup]{Table:Lookup}. \paragraph{Field: Air Inlet Node Name}\label{field-air-inlet-node-name-1-001} @@ -615,7 +615,7 @@ \subsubsection{Inputs}\label{inputs-4-011} \paragraph{Field: Wet Bulb Effectiveness Flow Ratio Modifier Curve Name}\label{field-wet-bulb-effectiveness-flow-ratio-modifier-curve-name} -This alpha field is the name of a curve that modifies the wet bulb effectiveness design value specified in the previous field by multiplying that value by the result of this curve. The modifying curve is a function of flow fraction, which is the ratio of the sum of the primary and secondary flow rates divided by the sum of the design flow rates. If this input field is left blank, the effectiveness is assumed to be constant. The wet bulb effectiveness modifier curve is required for proper operation of secondary air flow modulation in wet cooling operating mode, and is used with the three input fields \textit{Evaporative Operation Minimum Limit Secondary Air Drybulb Temperature}, \textit{Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature}, and \textit{Operation Maximum Limit Outdoor Drybulb Temperature}. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and \hyperref[tableoneindependentvariable]{Table:OneIndependentVariable}. +This alpha field is the name of a curve that modifies the wet bulb effectiveness design value specified in the previous field by multiplying that value by the result of this curve. The modifying curve is a function of flow fraction, which is the ratio of the sum of the primary and secondary flow rates divided by the sum of the design flow rates. If this input field is left blank, the effectiveness is assumed to be constant. The wet bulb effectiveness modifier curve is required for proper operation of secondary air flow modulation in wet cooling operating mode, and is used with the three input fields \textit{Evaporative Operation Minimum Limit Secondary Air Drybulb Temperature}, \textit{Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature}, and \textit{Operation Maximum Limit Outdoor Drybulb Temperature}. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and one-dimensional \hyperref[tablelookup]{Table:Lookup}. \paragraph{Field: Cooler Drybulb Design Effectiveness}\label{field-cooler-drybulb-design-effectiveness} @@ -623,7 +623,7 @@ \subsubsection{Inputs}\label{inputs-4-011} \paragraph{Field Drybulb Effectiveness Flow Ratio Modifier Curve Name}\label{field-drybulb-effectiveness-flow-ratio-modifier-curve-name} -This alpha field is the name of a curve that modifies the drybulb effectiveness in the previous field (eff\_db\_design) by multiplying the design effectiveness value by the result of this curve. The curve is evaluated using the flow fraction as the independent variable. The flow fraction is the ratio of sum of the primary and secondary flow rates divided by the sum of the design flow rates. If this input field is left blank, the effectiveness is assumed to be constant. The dry bulb effectiveness modifier curve is required for proper operation of secondary air flow modulation in dry cooling operating mode, and is used with the three input fields \textit{Evaporative Operation Minimum Limit Secondary Air Drybulb Temperature}, \textit{Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature}, and \textit{Operation Maximum Limit Outdoor Drybulb Temperature}. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and \hyperref[tableoneindependentvariable]{Table:OneIndependentVariable}. +This alpha field is the name of a curve that modifies the drybulb effectiveness in the previous field (eff\_db\_design) by multiplying the design effectiveness value by the result of this curve. The curve is evaluated using the flow fraction as the independent variable. The flow fraction is the ratio of sum of the primary and secondary flow rates divided by the sum of the design flow rates. If this input field is left blank, the effectiveness is assumed to be constant. The dry bulb effectiveness modifier curve is required for proper operation of secondary air flow modulation in dry cooling operating mode, and is used with the three input fields \textit{Evaporative Operation Minimum Limit Secondary Air Drybulb Temperature}, \textit{Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature}, and \textit{Operation Maximum Limit Outdoor Drybulb Temperature}. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and one-dimensional \hyperref[tablelookup]{Table:Lookup}. \paragraph{Field: Recirculating Water Pump Design Power}\label{field-recirculating-water-pump-design-power} @@ -635,7 +635,7 @@ \subsubsection{Inputs}\label{inputs-4-011} \paragraph{Field: Water Pump Power Modifier Curve Name}\label{field-water-pump-power-modifier-curve-name-1} -This alpha field is the name of a dimensionless normalized pump power modifying curve. This curve modifies the pump electric power in the previous field by multiplying the design power by the result of this curve. The normalized curve is a function of the secondary side flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the secondary air flow rate during operation divided by Secondary Design Air Flow Rate. If this input field is left blank, the pump power is assumed to vary linearly with the load. If pump power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and \hyperref[tableoneindependentvariable]{Table:OneIndependentVariable}. +This alpha field is the name of a dimensionless normalized pump power modifying curve. This curve modifies the pump electric power in the previous field by multiplying the design power by the result of this curve. The normalized curve is a function of the secondary side flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the secondary air flow rate during operation divided by Secondary Design Air Flow Rate. If this input field is left blank, the pump power is assumed to vary linearly with the load. If pump power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and one-dimensional \hyperref[tablelookup]{Table:Lookup}. \paragraph{Field: Secondary Air Design Flow Rate}\label{field-secondary-air-design-flow-rate} @@ -655,7 +655,7 @@ \subsubsection{Inputs}\label{inputs-4-011} \paragraph{Field: Secondary Air Fan Power Modifier Curve Name}\label{field-secondary-air-fan-power-modifier-curve-name} -This alpha field is the name of a dimensionless normalized curve. The normalized curve modifies the design secondary air fan power in the previous field by multiplying that value by the result of this curve. The normalized curve is a function of the secondary side flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the secondary air flow rate divided by Secondary Design Air Flow Rate. If this input field is left blank, the fan power will vary linearly with load (includes air system cycling, if any). If fan power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and \hyperref[tableoneindependentvariable]{Table:OneIndependentVariable}. +This alpha field is the name of a dimensionless normalized curve. The normalized curve modifies the design secondary air fan power in the previous field by multiplying that value by the result of this curve. The normalized curve is a function of the secondary side flow fraction as the independent variable. The curve shall yield a value of 1.0 at a flow fraction of 1.0. The flow fraction is the secondary air flow rate divided by Secondary Design Air Flow Rate. If this input field is left blank, the fan power will vary linearly with load (includes air system cycling, if any). If fan power does not vary linearly with load this curve should be used. Any curve or table with one independent variable can be used: \hyperref[curvelinear]{Curve:Linear}, \hyperref[curvequadratic]{Curve:Quadratic}, \hyperref[curvecubic]{Curve:Cubic}, \hyperref[curvequartic]{Curve:Quartic}, \hyperref[curveexponent]{Curve:Exponent}, \hyperref[curveexponentialskewnormal]{Curve:ExponentialSkewNormal}, \hyperref[curvesigmoid]{Curve:Sigmoid}, Curve:RectuangularHyperbola1, \hyperref[curverectangularhyperbola2]{Curve:RectangularHyperbola2}, \hyperref[curveexponentialdecay]{Curve:ExponentialDecay}, \hyperref[curvedoubleexponentialdecay]{Curve:DoubleExponentialDecay}, and one-dimensional \hyperref[tablelookup]{Table:Lookup}. \paragraph{Field: Primary Air Inlet Node Name}\label{field-primary-air-inlet-node-name-2} diff --git a/doc/input-output-reference/src/overview/group-fans.tex b/doc/input-output-reference/src/overview/group-fans.tex index cf7404f4402..22b803ec268 100644 --- a/doc/input-output-reference/src/overview/group-fans.tex +++ b/doc/input-output-reference/src/overview/group-fans.tex @@ -74,7 +74,7 @@ \subsubsection{Inputs}\label{inputs-fansysmodel} This numeric field is the electric power consumption at the full Design Maximum Air Flow Rate and Design Pressure Rise, in Watts. The value entered in this field is used to determine the fan efficiency. This field is autosizable and defaults to autosize. When autosized there are three different options available for the method used to size the design power and can be selected in the following field. -\paragraph{Field: Design Power Sizing Method}\label{field-design-power-sizing-method} +\paragraph{Field: Design Power Sizing Method} This field is used to select how the fan's Design Electric Power Consumption is sized when the previous field is set to autosize. There are three choices: PowerPerFlow, PowerPerFlowPerPressure, or TotalEfficiencyAndPressure. The default is PowerPerFlowPerPressure. When PowerPerFlow is selected, the value entered in the input field called Electric Power Per Unit Flow Rate is used to size the Design Electric Power Consumption. This method is useful during early-phase design modeling when little information is available for determining the Design Pressure Rise. Although the pressure rise is not used to size the Design Electric Power Consumption it is still used to determine the heat added to the air stream as a result of the work done by the fan. @@ -378,7 +378,7 @@ \subsubsection{Inputs}\label{inputs-1-017} Enter the name of a quadratic or cubic performance curve. This optional alpha field is used to simulate multi-speed fan motors. This curve represents the ratio of actual fan total efficiency to rated fan total efficiency when a change in fan speed occurs. Leave this field blank when simulating constant-speed fan motors. -\paragraph{Field: End-Use Subcategory}\label{field-end-use-subcategory-1-000} +\paragraph{Field: End-Use Subcategory} Allows you to specify a user-defined end-use subcategory, e.g., ``Main Fans'', etc. A new meter for reporting is created for each unique subcategory (ref: \hyperref[outputmeter-and-outputmetermeterfileonly]{Output:Meter} objects). Subcategories are also reported in the ABUPS table. If this field is omitted or blank, the fan will be assigned to the ``General'' end-use subcategory. @@ -531,7 +531,7 @@ \subsubsection{Inputs}\label{inputs-2-016} The name of the HVAC system node to which the fan sends its outlet air. -\paragraph{Field: End-Use Subcategory}\label{field-end-use-subcategory-2-000} +\paragraph{Field: End-Use Subcategory} Allows you to specify a user-defined end-use subcategory, e.g., ``Central System'', etc. A new meter for reporting is created for each unique subcategory (ref: \hyperref[outputmeter-and-outputmetermeterfileonly]{Output:Meter} objects). Any text may be used here to categorize the end-uses in the ABUPS End Uses by Subcategory table and in the LEED Summary EAp2-4/5 Performance Rating Method Compliance table. If this field is omitted or blank, the fan will be assigned to the ``General'' end-use subcategory. diff --git a/doc/input-output-reference/src/overview/group-heating-and-cooling-coils.tex b/doc/input-output-reference/src/overview/group-heating-and-cooling-coils.tex index c69013e9cce..55df8345ebf 100644 --- a/doc/input-output-reference/src/overview/group-heating-and-cooling-coils.tex +++ b/doc/input-output-reference/src/overview/group-heating-and-cooling-coils.tex @@ -84,7 +84,8 @@ \subsubsection{Inputs}\label{inputs-022} This field is optional. It is used to describe where condensate from the coil is collected. If blank or omitted, then any coil condensate is discarded. Enter the name of Water Storage Tank object defined elsewhere and the condensate will then be collected in that tank. -\paragraph{Field: Design Water Temperature Difference}\label{field-design-water-temperature-difference} +\paragraph{Field: Design Water Temperature Difference} + This input field is optional. If specified, it is used for sizing the \textit{Design Water Flow Rate}. If blank or omitted, the \textit{Loop Design Temperature Difference} value specified in \textit{\hyperref[sizingplant]{Sizing:Plant}} object is used for sizing the \textit{Design Water Flow Rate}. Examples when auto sized in an IDF are as below: @@ -268,7 +269,7 @@ \subsubsection{Inputs}\label{inputs-1-020} \emph{A} is the surface area -\paragraph{Field: Design Water Temperature Difference}\label{field-design-water-temperature-difference} +\paragraph{Field: Design Water Temperature Difference} This input field is optional. If specified, it is used for sizing the \textit{Design Water Flow Rate}. If blank or omitted, the \textit{Loop Design Temperature Difference} value specified in \textit{\hyperref[sizingplant]{Sizing:Plant}} object is used for sizing the \textit{Design Water Flow Rate}. @@ -1238,7 +1239,7 @@ \subsubsection{Inputs}\label{inputs-10-006} Schedule that defines when the coil is available. If the schedule's value is 0.0, then the coil is not available and flow will not be requested. If the schedule's value is \textgreater{} 0.0 (usually 1 is used), the coil is available. If this field is blank, the schedule has values of 1 for all time periods. Schedule values must be \textgreater{} = 0 and \textless{} = 1. -\paragraph{Field: Fuel Type}\label{field-gas-burner-efficiency} +\paragraph{Field: Fuel Type} This field designates the appropriate fuel type for the coil. Valid fuel types are: Gas, NaturalGas, Propane, FuelOilNo1, FuelOilNo2, Diesel, Gasoline, Coal, Steam, \hyperref[districtheating]{DistrictHeating}, \hyperref[districtcooling]{DistrictCooling}, OtherFuel1 and OtherFuel2. The fuel type triggers the application of consumption amounts to the appropriate energy meters. NaturalGas is the default. @@ -1825,7 +1826,7 @@ \subsubsection{Inputs}\label{inputs-13-004} PLF = 1.0 + 0.0(PLR) \end{lstlisting} -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the default value is -25 °C. @@ -2075,7 +2076,7 @@ \subsubsection{Inputs}\label{inputs-14-004} The type of condenser used by the multi-speed DX cooling coil. Valid choices for this input field are \textbf{AirCooled} or \textbf{EvaporativelyCooled}. The default for this field is \textbf{AirCooled}. -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the value defaults to that specified in the IDD (e.g., -25 °C). If this field is not included in the input, the default value is -25 °C. @@ -2345,7 +2346,7 @@ \subsubsection{Inputs}\label{inputs-15-004} This field is optional. It is used to describe where condensate from the coil is collected. If blank or omitted, then any coil condensate is discarded. Enter the name of Water Storage Tank object defined elsewhere and the condensate will then be collected in that tank. -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the value defaults to that specified in the IDD (e.g., -25 °C). If this field is not included in the input, the default value is -25 °C. @@ -2446,7 +2447,7 @@ \subsubsection{Inputs}\label{inputs-16-003} This numeric field defines the outdoor air dry-bulb temperature above which the compressor's crankcase heater is disabled. The value for this input field must be greater than or equal to 0.0 °C. If this input field is left blank, the default value is 10 °C. -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the value defaults to that specified in the IDD (e.g., -25 °C). @@ -2971,7 +2972,7 @@ \subsubsection{Inputs}\label{inputs-17-001} This numeric field defines the outdoor air dry-bulb temperature above which the compressor's crankcase heater is disabled. The value for this input field must be greater than or equal to 0.0 °C, and the default value is 10 °C. -\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation}\label{field-minimum-outdoor-dry-bulb-temperature-for-compressor-operation} +\paragraph{Field: Minimum Outdoor Dry-Bulb Temperature for Compressor Operation} This numeric field defines the minimum outdoor air dry-bulb temperature where the cooling coil compressor turns off. If this input field is left blank, the value defaults to that specified in the IDD (e.g., -25 °C). @@ -3896,7 +3897,7 @@ \subsubsection{Outputs}\label{outputs-15-000} This is the electricity consumption of the DX coil compressor's crankcase heater in Joules for the timestep being reported. This output is also added to a meter with Resource Type = Electricity, End Use Key = Miscellaneous, Group Key = System (ref. Output:Meter objects). -\paragraph{Heating Coil Runtime Fraction {[]}}\label{heating-coil-runtime-fraction-4} +\paragraph{Heating Coil Runtime Fraction {[]}} This is the runtime fraction of the DX heating coil compressor and outdoor fan(s) for the timestep being reported. @@ -4195,7 +4196,7 @@ \subsubsection{Outputs}\label{outputs-16} This is the total heating output of the DX coil in Joules over the timestep being reported. This is determined by the coil inlet and outlet air conditions and the air mass flow rate through the coil. This output is also added to a meter with Resource Type = EnergyTransfer, End Use Key = HeatingCoil, Group Key = System (ref. Output:Meter objects). -\paragraph{Heating Coil Electric Power {[}W{]}}\label{heating-coil-electric-power-w-6} +\paragraph{Heating Coil Electric Power {[}W{]}} This output variable is the input fuel type power for the heating coil in the unit of Watts, averaged during the report period. If Fuel Type is not Electricity, the value is zero. @@ -4227,7 +4228,7 @@ \subsubsection{Outputs}\label{outputs-16} This is the electricity consumption of the DX coil compressor's crankcase heater in Joules for the timestep being reported. This output is also added to a meter with Resource Type = Electricity, End Use Key = Heating, Group Key = System (ref. Output:Meter objects). When a companion cooling coil exits, the crankcase heater power of the companion cool coil is alos reported in this variable. -\paragraph{Heating Coil Runtime Fraction {[]}}\label{heating-coil-runtime-fraction-5} +\paragraph{Heating Coil Runtime Fraction {[]}} This is the runtime fraction of the DX heating coil compressor and outdoor fan(s) for the timestep being reported. When the heating speed is above 1, this output is the run time fraction for the higher speed. @@ -4598,7 +4599,7 @@ \subsubsection{Outputs}\label{outputs-17} The output variable is the average power used for crankcase heater, in Watts over the timestep being reported. -\paragraph{Heating Coil Crankcase Heater Electric Energy {[}J{]}}\label{heating-coil-crankcase-heater-electric-energy-j-2} +\paragraph{Heating Coil Crankcase Heater Electric Energy {[}J{]}} The output variable is the total electric energy usage of the coil for crankcase heater, in Joules over the timestep being reported. @@ -4989,7 +4990,7 @@ \subsubsection{Outputs}\label{outputs-19} The system may operate for the entire system timestep, but to meet the load the compressor can cycle on and off. This reports the fraction of the system timestep that the compressor is operating. (1.0 is continuous, 0.0 is off). For Coil:Cooling:VariableSpeed this description is true when compressor speed = 1. At higher compressor speeds Coil System Cycling Ratio = 1. -\paragraph{Coil System Compressor Speed Ratio}\label{coil-system-compressor-speed-ratio} +\paragraph{Coil System Compressor Speed Ratio} This is the ratio of time in a system timestep that the compressor is at rated speed. The compressor speed ratio reports (1.0 is max, 0.0 is min) and any value in between as it is averaged over the timestep. This report is a duplicate of the report in Coil:Cooling:DX:VaraibleSpeed named Cooling Coil Neighboring Speed Levels Ratio. @@ -6954,7 +6955,7 @@ \subsubsection{Outputs}\label{outputs-25} The output variable is the total source side heat transfer of the coil in Joules over the timestep being reported -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} \protect\hyperlink{ux5fftnref1}{{[}1{]}} The 23.9 °C wet-bulb temperature condition is not applicable for air-cooled condensers which do not evaporate condensate. diff --git a/doc/input-output-reference/src/overview/group-location-climate-weather-file-access.tex b/doc/input-output-reference/src/overview/group-location-climate-weather-file-access.tex index 9152e092e35..627d1999db1 100644 --- a/doc/input-output-reference/src/overview/group-location-climate-weather-file-access.tex +++ b/doc/input-output-reference/src/overview/group-location-climate-weather-file-access.tex @@ -863,7 +863,7 @@ \subsubsection{Inputs}\label{inputs-8-011} \textbf{Idso} -- the clear sky emissivity are calculated using Idso model. -\textbf{BerdahlMartin} -- the clear sky emissivity are calculated using Berdahl & Martin model. +\textbf{BerdahlMartin} -- the clear sky emissivity are calculated using Berdahl \& Martin model. \textbf{ScheduleValue} -- the values in the schedule are used as the sky temperature. diff --git a/doc/input-output-reference/src/overview/group-operational-faults.tex b/doc/input-output-reference/src/overview/group-operational-faults.tex index 37638524d86..94297b312d9 100644 --- a/doc/input-output-reference/src/overview/group-operational-faults.tex +++ b/doc/input-output-reference/src/overview/group-operational-faults.tex @@ -71,7 +71,7 @@ \subsubsection{Inputs}\label{inputs-029} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. @@ -496,19 +496,19 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Chiller Object Type}\label{field-chiller-object-type} +\paragraph{Field: Chiller Object Type} This field defines the chiller object type that this fault is associated with. Choices are from a list of applicable chiller types, including \hyperref[chillerelectric]{Chiller:Electric}, \hyperref[chillerelectriceir]{Chiller:Electric:EIR}, \hyperref[chillerelectricreformulatedeir]{Chiller:Electric:ReformulatedEIR}, \hyperref[chillerconstantcop]{Chiller:ConstantCOP}, \hyperref[chillerenginedriven]{Chiller:EngineDriven}, \hyperref[chillercombustionturbine]{Chiller:CombustionTurbine}, \hyperref[chillerabsorption]{Chiller:Absorption}, \hyperref[chillerabsorptionindirect]{Chiller:Absorption:Indirect}. -\paragraph{Field: Chiller Object Name}\label{field-chiller-object-name} +\paragraph{Field: Chiller Object Name} This field defines the name of the chiller object associated with the fault. It should be one of the objects with the defined types. -\paragraph{Field: Reference Sensor Offset}\label{field-reference-sensor-offset} +\paragraph{Field: Reference Sensor Offset} This field defines the reference offset of the temperature sensor. A positive value means the sensor reads a temperature that is higher than the real value. A negative value means the sensor reads a temperature that is lower than the real value. A 0.0 value means no offset. Default is 0.0. The units are in degrees Celsius. @@ -571,19 +571,19 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Cooling Tower Object Type}\label{field-tower-object-type} +\paragraph{Field: Cooling Tower Object Type} This field defines the cooling tower object type that this fault is associated with. Choices are from a list of applicable tower types, including \hyperref[coolingtowersinglespeed]{CoolingTower:SingleSpeed}, \hyperref[coolingtowertwospeed]{CoolingTower:TwoSpeed}, \hyperref[coolingtowervariablespeed]{CoolingTower:VariableSpeed}, and CoolingTower:VariableSpeed:MERKEL. -\paragraph{Field: Cooling Tower Object Name}\label{field-tower-object-name} +\paragraph{Field: Cooling Tower Object Name} This field defines the name of the cooling tower object associated with the fault. It should be one of the objects with the defined types. -\paragraph{Field: Reference Sensor Offset}\label{field-reference-sensor-offset} +\paragraph{Field: Reference Sensor Offset} This field defines the reference offset of the temperature sensor. A positive value means the sensor reads a temperature that is higher than the real value. A negative value means the sensor reads a temperature that is lower than the real value. A 0.0 value means no offset. Default is 0.0. The units are in degrees Celsius. @@ -644,7 +644,7 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. This is used to increase or decrease the fouling by a percentage. For example, if the schedule has a value of 1.2, it implies 20\% more fouling: if the Fouling Factor is 0.8, then resulting Fouling Factor would be $0.8 / 1.2 = 0.67$. @@ -710,7 +710,7 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. This is used to increase or decrease the fouling by a percentage. For example, if the schedule has a value of 1.2, it implies 20\% more fouling: if the Fouling Factor is 0.8, then resulting Fouling Factor would be $0.8 / 1.2 = 0.67$. @@ -723,7 +723,7 @@ \subsubsection{Inputs} This field defines the name of the boiler object associated with the fault. It should be one of the objects with the defined types. -\paragraph{Field: Fouling Factor}\label{field-fouling-factor} +\paragraph{Field: Fouling Factor} This field defines the fouling factor of the faulty boiler. The factor indicates the decrease of the nominal capacity of the boiler. It is the ratio between the nominal capacity at fouling case and that at fault free case. @@ -776,7 +776,7 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. This is used to increase or decrease the fouling by a percentage. For example, if the schedule has a value of 1.2, it implies 20\% more fouling: if the Fouling Factor is 0.8, then resulting Fouling Factor would be $0.8 / 1.2 = 0.67$. @@ -789,7 +789,7 @@ \subsubsection{Inputs} This field defines the name of the chiller object associated with the fault. It should be one of the objects with the defined types. -\paragraph{Field: Fouling Factor}\label{field-fouling-factor} +\paragraph{Field: Fouling Factor} This field defines the fouling factor of the faulty chiller. The factor indicates the decrease of the nominal capacity of the chiller. It is the ratio between the nominal capacity at fouling case and that at fault free case. @@ -852,7 +852,7 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. This is used to increase or decrease the fouling by a percentage. For example, if the schedule has a value of 1.2, it implies 20\% more fouling: if the Fouling Factor is 0.8, then resulting Fouling Factor would be $0.8 / 1.2 = 0.67$. @@ -915,11 +915,11 @@ \subsubsection{Inputs} This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to 1.0 when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Severity Schedule Name}\label{field-severity-schedule-name} +\paragraph{Field: Severity Schedule Name} This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and 0.0 when it is not. If this field is blank, the schedule has values of 1 for all time periods. -\paragraph{Field: Coil Object Type}\label{field-coil-object-type} +\paragraph{Field: Coil Object Type} This field defines the coil object type that this fault is associated with. Choices are from a list of applicable coils with temperature-based control, including \hyperref[coilheatingelectric]{Coil:Heating:Electric}, Coil:Heating:Gas, \hyperref[coilheatingsteam]{Coil:Heating:Steam}, \hyperref[coilheatingdesuperheater]{Coil:Heating:Desuperheater}, \hyperref[coilheatingwater]{Coil:Heating:Water}, \hyperref[coilcoolingwater]{Coil:Cooling:Water}, \hyperref[coilcoolingwaterdetailedgeometry]{Coil:Cooling:Water:DetailedGeometry} and AirloopHVAC:UnitarySystem using set point control. diff --git a/doc/input-output-reference/src/overview/group-performance-tables.tex b/doc/input-output-reference/src/overview/group-performance-tables.tex index 68f1178ce59..6cc15f0f2d2 100644 --- a/doc/input-output-reference/src/overview/group-performance-tables.tex +++ b/doc/input-output-reference/src/overview/group-performance-tables.tex @@ -7,7 +7,7 @@ \subsection{Table:Lookup}\label{tablelookup} Input for tables representing data with one or more independent variables. -\subsubsection{Inputs}\label{inputs} +\subsubsection{Inputs} \paragraph{Field: Name}\label{field-name} @@ -51,7 +51,7 @@ \subsubsection{Inputs}\label{inputs} and extrapolation. Values greater than the maximum will be replaced by the maximum. If this field is left blank, no limit is imposed. -\paragraph{Field: Output Unit Type}\label{field-output-unit-type} +\paragraph{Field: Output Unit Type} This field is used to indicate the kind of units that may be associated with the output values. It is used by interfaces or input editors (e.g., IDF Editor) to display the @@ -221,7 +221,7 @@ \subsubsection{Inputs}\label{inputs} \bottomrule \end{longtable} -\subsubsection{Example IDF}\label{example-idf} +\subsubsection{Example IDF} \begin{lstlisting} Table:Lookup, @@ -243,10 +243,10 @@ \subsubsection{Example IDF}\label{example-idf} 33988.3473, 32330.1846, 30681.4701, 29314.75872, 29042.2038, 27683.36592, 26301.11353; \end{lstlisting} -\subsubsection{Outputs}\label{outputs} +\subsubsection{Outputs} \paragraph{Performance Curve Output Value -{[}{]}}\label{performance-curve-output-value} +{[}{]}} The current value of the performance table. Performance curves and tables use the same output variable. This value is averaged over the @@ -336,7 +336,7 @@ \subsection{Table:IndependentVariableList}\label{tableindependentvariablelist} \subsubsection{Inputs}\label{inputs-1} -\paragraph{Field: Name}\label{field-name-1} +\paragraph{Field: Name} A unique user-assigned name for a list of independent variables. This name is referenced by Table:Lookup objects. The name of this list object @@ -367,7 +367,7 @@ \subsection{Table:IndependentVariable}\label{tableindependentvariable} \subsubsection{Inputs}\label{inputs-2} -\paragraph{Field: Name}\label{field-name-2} +\paragraph{Field: Name} A unique user-assigned name for an independent variables. This name is referenced by Table:IndependentVariableList objects. The name of this @@ -440,7 +440,7 @@ \subsubsection{Inputs}\label{inputs-2} Reference Value of all other Table:IndependentVariable objects within the same Table:IndependentVariableList must also be left blank. -\paragraph{Field: Unit Type}\label{field-unit-type} +\paragraph{Field: Unit Type} This field is used to indicate the kind of units that may be associated with this independent variable. It is used by interfaces or input editors (e.g., IDF Editor) to display the diff --git a/doc/input-output-reference/src/overview/group-plant-equipment.tex b/doc/input-output-reference/src/overview/group-plant-equipment.tex index 7850297c9d3..f38b94fa6a8 100644 --- a/doc/input-output-reference/src/overview/group-plant-equipment.tex +++ b/doc/input-output-reference/src/overview/group-plant-equipment.tex @@ -1550,7 +1550,7 @@ \subsubsection{Inputs}\label{inputs-4-023} This field is optional.~ It can be used to refine the model and controls for heat recovery operation of the chiller.~ The node named here should have a setpoint placed on it by a setpoint manager.~ If the plant loop's demand calculation scheme is set to SingleSetpoint, then a single setpoint manager should be used.~ If the plant loop's demand calculation is set to DualSetpointDeadband then a dual setpoint manager should be used and the upper setpoint is used for control.~ When this field is used, a different model is used for determining the distribution of rejected heat between the two bundles that is more appropriate for series bundle arrangements and for chiller's that are able to produce relatively higher temperature heated fluilds. -\paragraph{Field: End-Use Subcategory}\label{end-use-subcategory-11} +\paragraph{Field: End-Use Subcategory} This optional field allows you to specify a user-defined end-use subcategory, e.g., ``Process''. A new meter for reporting is created for each unique subcategory (ref: \hyperref[outputmeter-and-outputmetermeterfileonly]{Output:Meter} objects). Any text may be used here to further subcategorize the end-uses in the ABUPS End Uses by Subcategory table and in the LEED Summary EAp2-4/5 Performance Rating Method Compliance table. If this field is omitted or blank, the chiller will be assigned to the ``General'' end-use subcategory. diff --git a/doc/input-output-reference/src/overview/group-pumps.tex b/doc/input-output-reference/src/overview/group-pumps.tex index 471dbec2d41..247272661ae 100644 --- a/doc/input-output-reference/src/overview/group-pumps.tex +++ b/doc/input-output-reference/src/overview/group-pumps.tex @@ -432,7 +432,7 @@ \subsection{Pump:VariableSpeed:Condensate}\label{pumpvariablespeedcondensate} \subsubsection{Inputs}\label{inputs-2-031} -\paragraph{Field: Name}\label{field-name-2-030} +\paragraph{Field: Name} This alpha field contains the identifying unique name for the pump. @@ -510,7 +510,7 @@ \subsubsection{Inputs}\label{inputs-2-031} This field is optional. This input is used when the input field Design Power Consumption is set to autosize and the Design Power Sizing Method is set to PowerPerFlowPerPressure. It allows setting the efficiency of the impeller and drive assembly when calculating the pump power consumption for the design flow rate, motor efficiency, and pump head. If omitted the default value of 1.282051 W/((m\(^{3}\)/s)-Pa) will be used. -\paragraph{Field: End-Use Subcategory}\label{field-end-use-subcategory-3-000} +\paragraph{Field: End-Use Subcategory} Allows you to specify a user-defined end-use subcategory, e.g., ``Main Pumps'', etc. A new meter for reporting is created for each unique subcategory (ref: Output:Meter objects). Subcategories are also reported in the ABUPS table. If this field is omitted or blank, the pump will be assigned to the ``General'' end-use subcategory. @@ -685,7 +685,7 @@ \subsubsection{Inputs}\label{inputs-3-027} This field is optional. This input is used when the input field Design Power Consumption is set to autosize and the Design Power Sizing Method is set to PowerPerFlowPerPressure. It allows setting the efficiency of the impeller and drive assembly when calculating the pump power consumption for the design flow rate, motor efficiency, and pump head. If omitted the default value of 1.282051 W/((m\(^{3}\)/s)-Pa) will be used. -\paragraph{Field: End-Use Subcategory}\label{field-end-use-subcategory-4-000} +\paragraph{Field: End-Use Subcategory} Allows you to specify a user-defined end-use subcategory, e.g., ``Main Pumps'', etc. A new meter for reporting is created for each unique subcategory (ref: Output:Meter objects). Subcategories are also reported in the ABUPS table. If this field is omitted or blank, the pump will be assigned to the ``General'' end-use subcategory. @@ -877,7 +877,7 @@ \subsubsection{Inputs}\label{inputs-4-024} This field is optional. This input is used when the input field Design Power Consumption is set to autosize and the Design Power Sizing Method is set to PowerPerFlowPerPressure. It allows setting the efficiency of the impeller and drive assembly when calculating the pump power consumption for the design flow rate, motor efficiency, and pump head. If omitted the default value of 1.282051 W/((m\(^{3}\)/s)-Pa) will be used. -\paragraph{Field: End-Use Subcategory}\label{field-end-use-subcategory-5-000} +\paragraph{Field: End-Use Subcategory} Allows you to specify a user-defined end-use subcategory, e.g., ``Main Pumps'', etc. A new meter for reporting is created for each unique subcategory (ref: Output:Meter objects). Subcategories are also reported in the ABUPS table. If this field is omitted or blank, the pump will be assigned to the ``General'' end-use subcategory. @@ -972,4 +972,4 @@ \subsubsection{Outputs}\label{outputs-4-011} \paragraph{Pump Zone Radiative Heating Rate {[}W{]}}\label{pump-zone-radiative-heating-rate-w-4} -This output is the thermal loss from the pump to the surrounding Zone in the form of thermal radiation gains directly to the inside face of the zone's surfaces. It is only available if a Zone was named in the pump input. \ No newline at end of file +This output is the thermal loss from the pump to the surrounding Zone in the form of thermal radiation gains directly to the inside face of the zone's surfaces. It is only available if a Zone was named in the pump input. diff --git a/doc/input-output-reference/src/overview/group-radiative-convective-units.tex b/doc/input-output-reference/src/overview/group-radiative-convective-units.tex index 2f2a584d66e..178665857b9 100644 --- a/doc/input-output-reference/src/overview/group-radiative-convective-units.tex +++ b/doc/input-output-reference/src/overview/group-radiative-convective-units.tex @@ -51,7 +51,7 @@ \subsubsection{Inputs}\label{inputs-038} This field is the rated average water temperature for the baseboard heater which is published in the manufacturer's literature in degree Celsius. It typically ranges from 65.56°C to 115.36°C in the I = B = R rating document while the lowest allowable temperature is 32.22°C. The default value is 87.78°C. If the user does not enter this field, the default value is assumed. -\paragraph{Field: Rated Water Mass Flow Rate}\label{field-rated-water-mass-flow-rate} +\paragraph{Field: Rated Water Mass Flow Rate} This field is the rated standard water flow rate in kg/s which is published as part of the manufacturer's literature. It is used by the manufacturers when determining the rated capacity (see next field). The default value is 0.063kg/s. If it is blank or zero, the default values is assumed. @@ -561,7 +561,7 @@ \subsubsection{Inputs}\label{inputs-3-028-1} The name of the water outlet node for the radiant cooling panel. -\paragraph{Field: Rated Inlet Water Temperature}\label{field-rated-inlet-water-temperature} +\paragraph{Field: Rated Inlet Water Temperature} This field is the inlet temperature to the panel under conditions used to rate the capacity of the panel. This value along with the other rating condition parameters is used to calculate the overall heat transfer coefficient (U-Value) that will be used to characterize the heat transfer between the water being circulated through the panel and the air in the zone. The default value is 5°C (41°F). @@ -593,7 +593,7 @@ \subsubsection{Inputs}\label{inputs-3-028-1} This field specifies the maximum chilled water volumetric flow rate in m3/sec. This field can also be autosized. -\paragraph{Field: Control Type}\label{field-control-type} +\paragraph{Field: Control Type} This field specifies two different types of control categories: temperature or zone load. For one of the temperature based controls, this field along with the throttling range and setpoint schedules determines how the user wishes to control the radiant cooling panel. The temperature denoted in the setpoint schedule can refer to one of five different temperatures: the zone mean air temperature, the zone mean radiant temperature, the zone operative temperature, the outdoor dry-bulb temperature, or the outdoor wet-bulb temperature. The current field controls the choice of temperature. For controls that are based more on zone load, the user can make one of two choices based on whether the zone load is met by only the convective output of the unit or the total output of the unit. These zone load controls will not perform as precisely as air-based systems. The convective zone load control will come close to meeting the current setpoint temperature (defined by the typical zone thermostat input by the user) since the convective output of the unit will be set to match the remaining zone load. However, in the long run, this will likely overcool the space since radiant energy is being absorbed by surfaces and this will impact the zone conditions at later time steps. The total zone load control will likely undercool the space in the short term since the total output (radiant and convective) of the unit will be set to meet the remaining zone load. However, this will not fully impact the zone air temperature immediately since some of the energy is being absorbed from surfaces rather than the zone air. The user must select from the following options: @@ -617,15 +617,15 @@ \subsubsection{Inputs}\label{inputs-3-028-1} Operative temperature for radiant system controls is the average of Mean Air Temperature and Mean Radiant Temperature. If the user does not select a control type, MeanAirTemperature control is assumed by EnergyPlus. See the throttling range and control temperature schedule fields below for more information. -\paragraph{Field: Cooling Control Throttling Range}\label{field-cooling-control-throttling-range} +\paragraph{Field: Cooling Control Throttling Range} This field specifies the range of temperature in degrees Celsuis over which the radiant cooling panel throttles from zero flow rate up to the maximum defined by the maximum chilled water flow rate field described above. The throttling range parameter is used in conjunction with the control temperature to define the response of the system to various zone conditions. The cooling control temperature schedule specifies the “setpoint” temperature where the flow rate to the system is at half of the maximum flow rate. For example, if the cooling control temperature setpoint is currently 25 C and the cooling throttling range is 2 C, the water flow rate to the radiant system will be zero when the controlling temperature (MAT, MRT, Operative Temperature, ODB, or OWB; see control type field above) is at or below 24 C and the maximum flow rate when the controlling temperature is at or above 26 C. This represents a throttling range of 2 C around the setpoint of 25 C. In between 24 C and 26 C, the flow rate to the radiant system is varied linearly. Note that this field is ignored when the control type is either ZoneLoadConvective or ZoneLoadTotal. For the two zone load controls, the user must use a typical zone thermostat and the system output will be dependent on the remaining zone load. -\paragraph{Field: Cooling Control Temperature Schedule Name}\label{field-cooling-control-temperature-schedule-name} +\paragraph{Field: Cooling Control Temperature Schedule Name} This field specifies the cooling setpoint or control temperature for the radiant cooling panel in degrees Celsius. Used in conjunction with the previous field (cooling control throttling range), it will define whether or not the system is running and the current flow rate. Water flow rate to the system is varied linearly around the setpoint temperature based on the throttling range and the maximum cooling flow rate parameters (see above). It should be noted that this control schedule will allow different setpoint temperatures throughout the year for cooling. The control of the radiant cooling panel is based solely on the cooling control throttling range listed above, the cooling control temperature schedule, and the control temperature type listed above. The radiant cooling panel will not use any zone thermostat that might be used by other systems serving the zone in which this radiant cooling panel resides. Note that this field is ignored when the control type is either ZoneLoadConvective or ZoneLoadTotal. For the two zone load controls, the user must use a typical zone thermostat and the system output will be dependent on the remaining zone load. -\paragraph{Field: Condensation Control Type}\label{field-condensation-control-type} +\paragraph{Field: Condensation Control Type} Since radiant cooling panels provide a cold surface in what could be a humid zone, there is the possibility that condensation will occur on the surface of the panel. This is due to the fact that the surface temperature may drop below the dew-point temperature of the space. When this occurs, condensation on the surface will occur. Since there is no direct calculation of the surface temperature of the radiant cooling panel, the condensation check will be made at the inlet water temperature to the panel. Since the user can utilize the next parameter to adjust the differential between the dewpoint temperature and the inlet water temperature, this will allow some flexibility in controlling when the panel will shutdown to avoid condensation. There are three options for handling potential condensation: Off, SimpleOff, and VariableOff. This parameter is optional and will default to SimpleOff. @@ -638,7 +638,7 @@ \subsubsection{Inputs}\label{inputs-3-028-1} VariableOff - the program will attempt to reduce the inlet temperature to the panel by locally recirculating some of the water leaving the panel and mixing it with water from the overall demand side flow. This also means that some of the demand side water will bypass the panel. In reality, this would require a pump to achieve such mixing and recirculation, but due to the simple nature of this model, no pump definition will be required. Like the SimpleOff option, the VariableOff option uses the condensation dewpoint offset parameter to adjust when the system will try to adjust for the possibility of condensation. \end{itemize} -\paragraph{Field: Condensation Control Dewpoint Offset}\label{field-condensation-control-dewpoint-offset} +\paragraph{Field: Condensation Control Dewpoint Offset} This optional parameter is only valid with the SimpleOff and VariableOff condensation handling algorithm (see previous input parameter). It establishes the difference between the calculated dew-point temperature of the space and the allowed inlet water temperature to the radiant cooling panel before the system shuts down in degrees Celsius. This parameter can be any positive, negative, or zero value. When this parameter is zero, the radiant system will shut down or recirculate water (depending on whether SimpleOff or VariableOff is used) when the inlet temperature drops to the dew-point temperature or below. When this parameter is positive, the radiant system will shut down or recirculate water when the inlet water temperature is the number of degrees Celsius above the dew-point temperature. This allows some extra safety to avoid condensation. When this parameter is negative, the radiant system will shut down or recirculate water when the inlet water temperature is the number of degrees Celsius below the dew-point temperature. This strategy allows the user to simulate a situation where small amounts of condensation are tolerable or the resistance of the panel from the water loop to the panel surface is being taken into account as condensation would likely happen at the panel surface. The default value for this parameter is 1°C. @@ -2024,7 +2024,7 @@ \subsubsection{Inputs}\label{inputs-10-014} This field is a node name used to identify the node that serves as the outlet from the ventilated slab system to the zone when using the ``SlabAndZone'' configuration. It is the node exiting the slab section of the system. This node will typically be the same node as a zone inlet node. In the case of ``SlabOnly'' or ``SeriesSlabs'' configuration, this field will be ignored and it should be left BLANK. -\paragraph{Field: Outdoor Air Node Name}\label{field-outdoor-air-node-name} +\paragraph{Field: Outdoor Air Node Name} This field is a node name used to identify the node associated with fresh outdoor air brought into the ventilated slab system outdoor air mixer.~ This node should also be specified in an \hyperref[outdoorairnode]{OutdoorAir:Node} or \hyperref[outdoorairnodelist]{OutdoorAir:NodeList} object. @@ -2334,4 +2334,4 @@ \subsubsection{Inputs}\label{inputs-11-013} 20, !- Core Numbers for Surface 3 Z5VentSlabIn, !- Slab In Node Name for Surface 3 Z5VentSlabOut; !- Slab Outlet Node Name for Surface 3 -\end{lstlisting} \ No newline at end of file +\end{lstlisting} diff --git a/doc/input-output-reference/src/overview/group-room-air-models.tex b/doc/input-output-reference/src/overview/group-room-air-models.tex index 78aa90eca58..7011e0f3e25 100644 --- a/doc/input-output-reference/src/overview/group-room-air-models.tex +++ b/doc/input-output-reference/src/overview/group-room-air-models.tex @@ -674,7 +674,7 @@ \subsubsection{Inputs}\label{inputs-9-018} Possible choices: Jet or Recirculation. -\subsubsection{Outputs}\label{outputs-030} +\subsubsection{Outputs} \begin{itemize} \item diff --git a/doc/input-output-reference/src/overview/group-simulation-parameters.tex b/doc/input-output-reference/src/overview/group-simulation-parameters.tex index eb05c13a87c..7377b55cbdc 100644 --- a/doc/input-output-reference/src/overview/group-simulation-parameters.tex +++ b/doc/input-output-reference/src/overview/group-simulation-parameters.tex @@ -831,7 +831,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} \paragraph{Tuning using the \_perflog.csv file}\label{tuning-using-perlog-csv-file} -Every time a simulation includes the PerformancePrecisionTradeoffs object, a file is generated with the same name as the input but ending with \erflog.csv file (the performance log file). This file can be opened using a spreadsheet program and may be helpful in adjusting the input field values for the PerformancePrecisionTradeoffs object. Unlike most EnergyPlus output files, a new line of results is appended (added to the end of the file) every time the input file is simulated. The \_perflog.csv file contains a log of results from each run and allows the examination of the impacts of the changes to the PerformancePrecisionTradeoffs object and any other simulation inputs. You are encouraged to not make changes to any other portions of your input file other than the PerformancePrecisionTradeoffs object when you are tuning that object. Also, if you are looking at the \_perflog.csv in a spreadsheet program, make sure you close the file before each simulation. A spreadsheet program will often lock a CSV file and prevent it from being modified by another program like EnergyPlus. +Every time a simulation includes the PerformancePrecisionTradeoffs object, a file is generated with the same name as the input but ending with \_perflog.csv file (the performance log file). This file can be opened using a spreadsheet program and may be helpful in adjusting the input field values for the PerformancePrecisionTradeoffs object. Unlike most EnergyPlus output files, a new line of results is appended (added to the end of the file) every time the input file is simulated. The \_perflog.csv file contains a log of results from each run and allows the examination of the impacts of the changes to the PerformancePrecisionTradeoffs object and any other simulation inputs. You are encouraged to not make changes to any other portions of your input file other than the PerformancePrecisionTradeoffs object when you are tuning that object. Also, if you are looking at the \_perflog.csv in a spreadsheet program, make sure you close the file before each simulation. A spreadsheet program will often lock a CSV file and prevent it from being modified by another program like EnergyPlus. To illustrate how to use the PerformancePrecisionTradeoffs object and the \_perflog.csv file together, here is an example using an IDF file with 100 zones, one window per zone, and is served by fan coil units and a central boiler and chiller. Thirteen simulations were made, and the results in the \_perflog.csv for various options in the PerformancePrecisionTradeoffs object are shown below in the following tables. @@ -840,7 +840,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} {\scriptsize \begin{longtable}[c]{p{0.2in}p{0.4in}p{0.6in}p{0.6in}p{0.5in}p{0.5in}p{0.6in}p{0.6in}p{0.65in}} % \begin{longtable}[c]{cccccccrr} -\caption{PerfLog Mode Columns\label{table:perflog_mode_columns}} \tabularnewline +\caption{PerfLog Mode Columns} \tabularnewline \toprule Run & Direct Coil & @@ -879,7 +879,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} % table X {\scriptsize \begin{longtable}[c]{p{0.2in}p{0.4in}p{0.6in}p{0.7in}p{0.5in}p{0.5in}p{0.7in}p{0.7in}p{0.65in}} -\caption{PerfLog Energy Columns\label{table:perflog_mode_columns}} \tabularnewline +\caption{PerfLog Energy Columns} \tabularnewline \toprule Run & Direct Coil & @@ -916,7 +916,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} % table X {\scriptsize \begin{longtable}[c]{p{0.2in}p{0.4in}p{0.6in}p{0.7in}p{0.5in}p{0.5in}p{0.7in}p{0.6in}p{0.65in}} -\caption{PerfLog Oscillation Columns\label{table:perflog_mode_columns}} \tabularnewline +\caption{PerfLog Oscillation Columns} \tabularnewline \toprule Run & Direct Coil & @@ -963,7 +963,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} The Part Load Ratio (PLR) for a single speed coil or a multiple speed coil at speed 1 is calculated using the equation below \begin{equation} -{\left {PLR}\right} = \frac{SystemLoad-OutputOff}{OutputFull - OutputOff} +PLR = \frac{SystemLoad-OutputOff}{OutputFull - OutputOff} \end{equation} where @@ -979,7 +979,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} The Speed Ratio for a multiple speed coil at speed > 1 is calculated using the equation below \begin{equation} -{\left {SpeedRatio}\right} = \frac{SystemLoad-OutputFull_{i-1}}{OutputFull_{i} - OutputFull_{i-1}} +SpeedRatio = \frac{SystemLoad-OutputFull_{i-1}}{OutputFull_{i} - OutputFull_{i-1}} \end{equation} where @@ -988,9 +988,9 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} SystemLoad = Load requested to meet thermostat setpoint -OutputFull_{i} = System full output at the higher speed +OutputFull\(_{i}\) = System full output at the higher speed -OutputFull_{i-1} = System full output at the lower speed +OutputFull\(_{i-1}\) = System full output at the lower speed Note: When a DX cooling coil with a constant volume fan is used, latent degradation is disabled. @@ -999,7 +999,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} The Part Load Ratio (PLR) for a single speed coil or a multiple speed coil at speed 1 is calculated using the equation below \begin{equation} -{\left {PLR}\right} = \frac{DesOutTemp - InletTemp}{OutTempFull - InletTemp} +PLR = \frac{DesOutTemp - InletTemp}{OutTempFull - InletTemp} \end{equation} where @@ -1015,7 +1015,7 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} The Speed Ratio for a multiple speed coil at speed > 1 is calculated using the equation below \begin{equation} -{\left {SpeedRatio}\right} = \frac{DesOutTemp - OutTempFull_{i-1}}{OutTempFull_{i} - OutTempFull_{i-1}} +SpeedRatio = \frac{DesOutTemp - OutTempFull_{i-1}}{OutTempFull_{i} - OutTempFull_{i-1}} \end{equation} where @@ -1024,9 +1024,9 @@ \subsection{PerformancePrecisionTradeoffs}\label{performanceprecisiontradeoffs} DesOutTemp = Desired outlet temperature to meet setpoint -OutTempFull_{i} = Outlet temperature of full output at the higher speed +OutTempFull\(_{i}\) = Outlet temperature of full output at the higher speed -OutTempFull_{i-1} = Outlet temperature of full output at the lower speed +OutTempFull\(_{i-1}\) = Outlet temperature of full output at the lower speed % table 2 \begin{longtable}[c]{p{4in}p{2.5in}} diff --git a/doc/input-output-reference/src/overview/group-system-availability-managers.tex b/doc/input-output-reference/src/overview/group-system-availability-managers.tex index 9def6920342..d7d9bf7ed2c 100644 --- a/doc/input-output-reference/src/overview/group-system-availability-managers.tex +++ b/doc/input-output-reference/src/overview/group-system-availability-managers.tex @@ -135,15 +135,15 @@ \subsubsection{Inputs}\label{inputs-3-037} A unique, user-assigned name for an instance of a night cycle availability manager. Other objects that use this availability manager will reference it by this name. -\paragraph{Field: Applicability Schedule Name}\label{field-applicability-schedule-name} +\paragraph{Field: Applicability Schedule Name} The name of a schedule defined elsewhere in the input file. This schedule determines whether or not for a given time period this availability manager is to be applied. Schedule values greater than zero (usually 1 is used) indicate the availability manager is to be applied. Schedule values less than or equal to zero (usually 0 is used) denote that the availability manager is not used for this time period. -\paragraph{Field: Fan Schedule Name}\label{field-fan-schedule-name} +\paragraph{Field: Fan Schedule Name} The name of the central fan on/off schedule for the air system that this availability manager will affect. -\paragraph{Field: Control Type}\label{field-control-type} +\paragraph{Field: Control Type} The possible inputs are \emph{StayOff}, \emph{CycleOnAny}, \emph{CycleOnControlZone}, \emph{CycleOnAnyZoneFansOnly}, \emph{CycleOnAnyCoolingOrHeatingZone}, \emph{CycleOnAnyCoolingZone}, \emph{CycleOnAnyHeatingZone}, or \emph{CycleOnAnyHeatingZoneFansOnly}. The default is \emph{StayOff}. @@ -834,4 +834,4 @@ \subsubsection{Outputs}\label{outputs-10-007} \paragraph{Availability Manager Optimum Start Time Before Occupancy}\label{availability-manager-optimum-start-time-before-occupancy} -The current time before occupancy. Occupancy is the first zone timestep after midnight when the Fan Schedule is \textgreater{} 0.0. The units are hours. \ No newline at end of file +The current time before occupancy. Occupancy is the first zone timestep after midnight when the Fan Schedule is \textgreater{} 0.0. The units are hours. diff --git a/doc/input-output-reference/src/overview/group-thermal-zone-description-geometry.tex b/doc/input-output-reference/src/overview/group-thermal-zone-description-geometry.tex index 0981fde7dd1..cb2be10ab7f 100644 --- a/doc/input-output-reference/src/overview/group-thermal-zone-description-geometry.tex +++ b/doc/input-output-reference/src/overview/group-thermal-zone-description-geometry.tex @@ -652,11 +652,11 @@ \subsubsection{Inputs}\label{inputs-4-035} This is the zone name to which the surface belongs. -\paragraph{Field: Azimuth Angle}\label{field-azimuth-angle} +\paragraph{Field: Azimuth Angle} The Azimuth Angle indicates the direction that the wall faces (outward normal). The angle is specified in degrees where East = 90, South = 180, West = 270, North = 0. -\paragraph{Field: Tilt Angle}\label{field-tilt-angle} +\paragraph{Field: Tilt Angle} The tilt angle is the angle (in degrees) that the wall is tilted from horizontal (or the ground). Normally, walls are tilted 90 degrees and that is the default for this field. @@ -5026,4 +5026,4 @@ \subsubsection{Zone Total Internal Latent Gain Energy {[}J{]}}\label{zone-total- \subsubsection{Zone Total Internal Total Heating Energy {[}J{]}}\label{zone-total-internal-total-heating-energy-j-1} -This field represents the sum of all heat gains throughout the zone in joules. This includes all heat gains from \hyperref[people]{People}, Lights, Electric Equipment, Gas Equipment, Other Equipment, Hot Water Equipment, and Steam Equipment. \ No newline at end of file +This field represents the sum of all heat gains throughout the zone in joules. This includes all heat gains from \hyperref[people]{People}, Lights, Electric Equipment, Gas Equipment, Other Equipment, Hot Water Equipment, and Steam Equipment. diff --git a/doc/input-output-reference/src/overview/group-unitary-equipment.tex b/doc/input-output-reference/src/overview/group-unitary-equipment.tex index 6356e03b6e6..5c4ad610469 100644 --- a/doc/input-output-reference/src/overview/group-unitary-equipment.tex +++ b/doc/input-output-reference/src/overview/group-unitary-equipment.tex @@ -45,7 +45,7 @@ \subsection{AirLoopHVAC:UnitarySystem}\label{airloophvacunitarysystem} Links to the fan, cooling coil, heating coil and reheat coil specifications are provided in the unitary system input data syntax. In addition, the control zone name and the system design operating conditions are specified by the unitary system inputs. -\paragraph{Schedules And Availability Manager}\label{schedules-and-availability-manager} +\paragraph{Schedules And Availability Manager} For unitary systems, don't use the night cycle manager. Use a scheduled availability manager and let the system be always on. Then use the Supply Air Fan Operating Mode Schedule Name in the unitary system to switch between continuous fan (for ventilation) during occupied periods and switch to cycling fan for unoccupied. The system will cycle on as the thermostat requests, and this way it will run just enough to meet the load - no need for a minimum cycle time. @@ -193,7 +193,7 @@ \subsubsection{Inputs}\label{inputs-049} This input field enables DX Cooling coils to be used for 100\% outdoor air dedicated outdoor air system applications. There are two choices Yes or No. If Yes, the DX coil is used as 100\% outdoor DX coil. If No, the DX coil is used as regular DX coil. This input field is optional and the default is No. No should be specified when selecting the SingleZoneVAV control type. -\paragraph{Field: Minimum Supply Air Temperature}\label{field-minimum-supply-air-temperature} +\paragraph{Field: Minimum Supply Air Temperature} When Use DOAS DX Cooling Coil is specified as Yes, this input field is the DX Cooling coils leaving minimum air temperature for frost control. The DX cooling coil leaving air temperature is not allowed to exceed this minimum air temperature. The DX cooling coil frost controller adjusts or limits the desired coil outlet air setpoint temperature when the coil outlet temperature exceeds this minimum temperature limit specified. The minimum and maximum values of this input field are 0.0\(^{o}\)C and 7.5\(^{o}\)C, and the default value is 2.0\(^{o}\)C. This field is not autosizable when the input for Use DOAS DX Cooling Coil = Yes. When Control Type = SingleZoneVAV, enter the minimum air temperature limit for reduced fan speed in cooling mode. For SingleZoneVAV, the maximum limit for the minimum supply air temperature is 20.0\(^{o}\)C. Additionally, for the SingleZoneVAV model this input does not limit the minimum supply air temperature resulting from cooling coil operation at high fan speed. @@ -2925,7 +2925,7 @@ \subsubsection{Inputs}\label{inputs-8-027} This alpha field defines the name of the HVAC system node from which the system draws its inlet air. -\paragraph{Field: Bypass Duct Mixer Node Name}\label{field-bypass-duct-mixer-node-name} +\paragraph{Field: Bypass Duct Mixer Node Name} This alpha field defines the name of the HVAC system node where the bypass air mixes with the unitary system's inlet air. This name should match the name of the Return Air Stream Node Name for the \hyperref[outdoorairmixer]{OutdoorAir:Mixer} associated with this system. This node name must be different from the system's air inlet node name. diff --git a/doc/input-output-reference/src/overview/group-variable-refrigerant-flow-equipment.tex b/doc/input-output-reference/src/overview/group-variable-refrigerant-flow-equipment.tex index cce93a8320a..607a06ad4f3 100644 --- a/doc/input-output-reference/src/overview/group-variable-refrigerant-flow-equipment.tex +++ b/doc/input-output-reference/src/overview/group-variable-refrigerant-flow-equipment.tex @@ -22,7 +22,7 @@ \section{Group -- Variable Refrigerant Flow Equipment}\label{group-variable-refr \begin{itemize} \item - For zone equipment the zone inlet and zone exhaust node names are defined in a \emph{\hyperref[zonehvacequipmentconnections]{ZoneHVAC:EquipmentConnections}} object (bottom of figure) and the terminal unit type and name are specified in a \emph{\hyperref[zonehvacequipmentlist]{ZoneHVAC:EquipmentList}} object. For air loop equipment the terminal unit type and name and inlet and outlet node names are defined in the AirloopHVAC branch (top left of figure). For outside air system equipment the terminal unit type and name are defined in the \emph{\hyperef[airloophvacoutdoorairsystemequipmentlist]{AirLoopHVAC:OutdoorAirSystem:EquipmentList}} (top right of figure) and the terminal unit inlet node will typically (but not necessarily) be an outside air node and the terminal unit outlet node will typically connect to the \emph{\hyperef[outdoorairmixer]{OutdoorAir:Mixer}} object. + For zone equipment the zone inlet and zone exhaust node names are defined in a \emph{\hyperref[zonehvacequipmentconnections]{ZoneHVAC:EquipmentConnections}} object (bottom of figure) and the terminal unit type and name are specified in a \emph{\hyperref[zonehvacequipmentlist]{ZoneHVAC:EquipmentList}} object. For air loop equipment the terminal unit type and name and inlet and outlet node names are defined in the AirloopHVAC branch (top left of figure). For outside air system equipment the terminal unit type and name are defined in the \emph{\hyperref[airloophvacoutdoorairsystemequipmentlist]{AirLoopHVAC:OutdoorAirSystem:EquipmentList}} (top right of figure) and the terminal unit inlet node will typically (but not necessarily) be an outside air node and the terminal unit outlet node will typically connect to the \emph{\hyperref[outdoorairmixer]{OutdoorAir:Mixer}} object. \item A \emph{\hyperref[zonehvacterminalunitvariablerefrigerantflow]{ZoneHVAC:TerminalUnit:VariableRefrigerantFlow}} object will specify the terminal unit's air inlet and air outlet node names. For zone equipment the zone exhaust node is the terminal unit inlet node and the zone inlet node is the terminal unit outlet node. For air loop and outdoor air system equipment the terminal unit inlet and outlet node names identify the order of the equipment in the air loop. \item @@ -47,9 +47,9 @@ \section{Group -- Variable Refrigerant Flow Equipment}\label{group-variable-refr \begin{figure}[hbtp] \centering -\includegraphics{media/image311.png} +\includegraphics[width=0.5\linewidth]{media/image311.png} \emph{(a) VRF model based on system curves (VRF-SysCurve)} -\includegraphics{media/image312.png} +\includegraphics[width=0.5\linewidth]{media/image312.png} \emph{(b) VRF model based on physics (VRF-FluidTCtrl)} \caption{Variable Refrigerant Flow Object Links \protect \label{fig:variable-refrigerant-flow-object-links}} \end{figure} @@ -1685,4 +1685,4 @@ \subsubsection{Inputs}\label{inputs-2-044} TU1, !- Zone Terminal Unit Name 3 TU2, !- Zone Terminal Unit Name 4 TU5; !- Zone Terminal Unit Name 5 -\end{lstlisting} \ No newline at end of file +\end{lstlisting} diff --git a/doc/input-output-reference/src/overview/group-water-heaters.tex b/doc/input-output-reference/src/overview/group-water-heaters.tex index e9be11a47f6..26b3141fafd 100644 --- a/doc/input-output-reference/src/overview/group-water-heaters.tex +++ b/doc/input-output-reference/src/overview/group-water-heaters.tex @@ -243,7 +243,7 @@ \subsubsection{Inputs}\label{inputs-052} This field is optional and is used to provide a schedule with alternate setpoints for use with the IndirectHeatAlternateSetpoint mode in the previous field.~ The input field should contain a reference to a schedule object specifying the hot water temperature setpoint {[}°C{]} to use as the ``cut-out'' temperature for control logic at the source side. -\paragraph{Field: End-Use Subcategory}\label{end-use-subcategory-01} +\paragraph{Field: End-Use Subcategory} This optional field allows you to specify a user-defined end-use subcategory, e.g., ``Process''. A new meter for reporting is created for each unique subcategory (ref: \hyperref[outputmeter-and-outputmetermeterfileonly]{Output:Meter} objects). Any text may be used here to further subcategorize the end-uses in the ABUPS End Uses by Subcategory table and in the LEED Summary EAp2-4/5 Performance Rating Method Compliance table. If this field is omitted or blank, the water heater will be assigned to the ``General'' end-use subcategory. @@ -1864,4 +1864,4 @@ \subsubsection{Outputs}\label{outputs-3-022} \paragraph{Water Heater Off Cycle Ancillary Electric Energy {[}J{]}}\label{water-heater-off-cycle-ancillary-electric-energy-j-1} -These outputs are the parasitic electric power and consumption associated with the heat pump water heater. Specific outputs represent parasitic electrical usage during the compressor/fan on and off cycles. These outputs represent electronic controls or other electric component. The model assumes that the parasitic power does not contribute to heating the water, but it can impact the zone air heat balance depending on user inputs. The parasitic electric consumption outputs are also added to a meter with Resource Type = Electricity, End Use Key = DHW, Group Key = Plant (ref. Output:Meter objects). \ No newline at end of file +These outputs are the parasitic electric power and consumption associated with the heat pump water heater. Specific outputs represent parasitic electrical usage during the compressor/fan on and off cycles. These outputs represent electronic controls or other electric component. The model assumes that the parasitic power does not contribute to heating the water, but it can impact the zone air heat balance depending on user inputs. The parasitic electric consumption outputs are also added to a meter with Resource Type = Electricity, End Use Key = DHW, Group Key = Plant (ref. Output:Meter objects). diff --git a/doc/input-output-reference/src/overview/group-zone-controls-thermostats.tex b/doc/input-output-reference/src/overview/group-zone-controls-thermostats.tex index c87bbb50b34..84a41aef3aa 100644 --- a/doc/input-output-reference/src/overview/group-zone-controls-thermostats.tex +++ b/doc/input-output-reference/src/overview/group-zone-controls-thermostats.tex @@ -258,15 +258,15 @@ \subsubsection{Outputs}\label{outputs-042} Zone,Sum,Facility Cooling Setpoint Not Met While Occupied Time {[}hr{]} \end{itemize} -\paragraph{Zone Predicted Sensible Load to Setpoint Heat Transfer Rate {[}W{]}}\label{zone-predicted-sensible-load-to-setpoint-heat-transfer-rate-w} +\paragraph{Zone Predicted Sensible Load to Setpoint Heat Transfer Rate {[}W{]}} This is the predicted sensible load in W required to meet the current zone thermostat setpoint. A positive value indicates a heating load, a negative value indicates a cooling load. This is calculated and reported from the Predict step in the Zone Predictor-Corrector module. For nearly all equipment types, the Predictor-Corrector evaluates the active heating and/or cooling setpoints, determines if the zone requires heating or cooling or is in the deadband, and then passes this single load to the equipment. This value is NOT multiplied by zone or group multipliers. -\paragraph{Zone Predicted Sensible Load to Heating Setpoint Heat Transfer Rate {[}W{]}}\label{zone-predicted-sensible-load-to-heating-setpoint-heat-transfer-rate-w} +\paragraph{Zone Predicted Sensible Load to Heating Setpoint Heat Transfer Rate {[}W{]}} This is the predicted sensible load in W required to meet the current zone thermostat heating setpoint. A positive value indicates a heating load, a negative value indicates a cooling load. This is calculated and reported from the Predict step in the Zone Predictor-Corrector module. This value is NOT multiplied by zone or group multipliers. -\paragraph{Zone Predicted Sensible Load to Cooling Setpoint Heat Transfer Rate {[}W{]}}\label{zone-predicted-sensible-load-to-cooling-setpoint-heat-transfer-rate-w} +\paragraph{Zone Predicted Sensible Load to Cooling Setpoint Heat Transfer Rate {[}W{]}} This is the predicted sensible load in W required to meet the current zone thermostat cooling setpoint. A positive value indicates a heating load, a negative value indicates a cooling load. This is calculated and reported from the Predict step in the Zone Predictor-Corrector module. This value is NOT multiplied by zone or group multipliers. @@ -860,15 +860,15 @@ \subsubsection{Outputs}\label{outputs-2-027} HVAC,Average,Zone System Predicted Moisture Load to Dehumidifying Setpoint Moisture Transfer Rate {[}kgWater/s{]} \end{itemize} -\paragraph{Zone Predicted Moisture Load Moisture Transfer Rate {[}kgWater/s{]}}\label{zone-predicted-moisture-load-moisture-transfer-rate-kgwaters} +\paragraph{Zone Predicted Moisture Load Moisture Transfer Rate {[}kgWater/s{]}} This is the predicted latent (moisture) load in kg\(_{r}\)/s required to meet the current zone humidistat setpoint. A positive value indicates a humidification load, a negative value indicates a dehumidification load. For a dual setpoint humidistat, the value is zero when the controlled zone's relative humidity is between the defined humidifying and dehumidifying setpoints. This moisture load rate is calculated and reported from the Predict step in the Zone Predictor-Corrector module. For nearly all equipment types, the Predictor-Corrector evaluates the active humidistat setpoints, determines if the zone requires humidification or dehumidification, and then passes this single load to the equipment for the single setpoint humidistat case. This value is NOT multiplied by zone or group multipliers. -\paragraph{Zone Predicted Moisture Load to Humidifying Setpoint Moisture Transfer Rate {[}kgWater/s{]}}\label{zone-predicted-moisture-load-to-humidifying-setpoint-moisture-transfer-rate-kgwaters} +\paragraph{Zone Predicted Moisture Load to Humidifying Setpoint Moisture Transfer Rate {[}kgWater/s{]}} This is the predicted latent (moisture) load in kg\(_{r}\)/s required to meet the current zone humidistat \textbf{humidifying} setpoint. This is calculated and reported from the Predict step in the Zone Predictor-Corrector module. For nearly all equipment types, the Predictor-Corrector evaluates the active humidistat humidifying setpoints, determines if the zone requires humidification or not, and then passes this load to the equipment for the case of a dual setpoint humidistat (see Zone Predicted Moisture Load Moisture Transfer Rate, above, for single setpoint humidistat case). This value is NOT multiplied by zone or group multipliers. -\paragraph{Zone Predicted Moisture Load to Dehumidifying Setpoint Moisture Transfer Rate {[}kgWater/s{]}}\label{zone-predicted-moisture-load-to-dehumidifying-setpoint-moisture-transfer-rate-kgwaters} +\paragraph{Zone Predicted Moisture Load to Dehumidifying Setpoint Moisture Transfer Rate {[}kgWater/s{]}} This is the predicted latent (moisture) load in kg\(_{r}\)/s required to meet the current zone humidistat \textbf{dehumidifying} setpoint. This is calculated and reported from the Predict step in the Zone Predictor-Corrector module. For nearly all equipment types, the Predictor-Corrector evaluates the active humidistat humidifying setpoints, determines if the zone requires dehumidification or not, and then passes this load to the equipment for a dual setpoint humidistat (see Zone Predicted Moisture Load Moisture Transfer Rate, above, for single setpoint humidistat case). This value is NOT multiplied by zone or group multipliers. diff --git a/doc/input-output-reference/src/overview/group-zone-equipment.tex b/doc/input-output-reference/src/overview/group-zone-equipment.tex index 24b6128da75..a0eb00e021b 100644 --- a/doc/input-output-reference/src/overview/group-zone-equipment.tex +++ b/doc/input-output-reference/src/overview/group-zone-equipment.tex @@ -144,7 +144,7 @@ \subsubsection{Outputs} These outputs are the sensible cooling rate and energy provided to the zone by the single duct constant volume no reheat air terminal unit. -\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}}\label{zone-air-terminal-outdoor-air-volume-flow-rate-m3s} +\paragraph{Zone Air Terminal Outdoor Air Volume Flow Rate {[}m3/s{]}} This output is the amount of outdoor air entering the zone. This is the average value over the frequency being reported.~ The amount of outdoor air is defined as the terminal unit air volume flow rate multiplied by the fraction of outdoor air entering the air loop's outside air system. @@ -240,7 +240,7 @@ \subsubsection{Inputs}\label{inputs-2-048} Unique identifying name. -\paragraph{Field: Load Distribution Scheme}\label{field-load-distribution-scheme-000} +\paragraph{Field: Load Distribution Scheme} The Load Distribution Scheme selects the algorithm used to allocate the current zone load across the zone equipment. There are four choices: SequentialLoad, UniformLoad, UniformPLR, and SequentialUniformPLR. The default is SequentialLoad. In all cases, the equipment operates in the order specifed by the Zone Equipment Cooling Sequence and Heating or No-Load Sequence fields. diff --git a/doc/input-output-reference/src/overview/group-zone-forced-air-units.tex b/doc/input-output-reference/src/overview/group-zone-forced-air-units.tex index 2d9a3986dad..f7c41e97cc0 100644 --- a/doc/input-output-reference/src/overview/group-zone-forced-air-units.tex +++ b/doc/input-output-reference/src/overview/group-zone-forced-air-units.tex @@ -3902,7 +3902,7 @@ \subsection{ZoneHVAC:TerminalUnit:VariableRefrigerantFlow}\label{zonehvactermina This VRF terminal unit can be controlled based on a load or set point. When the system is used as zone equipment load control is always used. When the VRF terminal unit is used in an air loop and the control zone name or thermostat location is specified, the system is controlled based on zone load. If the control zone name or thermostat location is not specified the VRF terminal unit will be controlled based on termninal unit or coil outlet node set point temperature. When set point based control is used the node temperature set points may be placed at the outlet of the terminal unit or at individual coil outlet nodes. If the VRF terminal unit is used in an air loop's outdoor air system, control is always based on a termninal unit or coil outlet node temperature set point. -The terminal units operate to satisfy a heating or cooling load in a zone based on a zone thermostat temperature set point. A direct-expansion (DX) cooling and/or DX heating coil is specified depending on the operating mode required. Both a DX cooling and DX heating coil will typically be installed in the terminal unit, however only one may be used if desired. An optional supplemental heating coil can also be added to the terminal unit to provide additional heating when the main DX heating coil could not meet the entire heating load of a zone during cold outdoor conditions. The Supplemental Heating Coil Object Type must be \hyperref[coilheatingelectric]{Coil:Heating:Electric}, \hyperref[coilheatingfuel]{Coil:Heating:Fuel}, \hyperref[coilheatingwater]{Coil:Heating:Water}, or \hyperref[coilheatingsteam]{Coil:Heating:Steam}. Outdoor ventilation air is modeled with the use of an optional outside air mixer object. Outside air may be provided to the zone only when the coil is operating or can be supplied continuously even when the coil is not operating. +The terminal units operate to satisfy a heating or cooling load in a zone based on a zone thermostat temperature set point. A direct-expansion (DX) cooling and/or DX heating coil is specified depending on the operating mode required. Both a DX cooling and DX heating coil will typically be installed in the terminal unit, however only one may be used if desired. An optional supplemental heating coil can also be added to the terminal unit to provide additional heating when the main DX heating coil could not meet the entire heating load of a zone during cold outdoor conditions. The Supplemental Heating Coil Object Type must be \hyperref[coilheatingelectric]{Coil:Heating:Electric}, \hyperref[coilheatinggas-000]{Coil:Heating:Fuel}, \hyperref[coilheatingwater]{Coil:Heating:Water}, or \hyperref[coilheatingsteam]{Coil:Heating:Steam}. Outdoor ventilation air is modeled with the use of an optional outside air mixer object. Outside air may be provided to the zone only when the coil is operating or can be supplied continuously even when the coil is not operating. A supply air fan can be modeled as either draw through or blow through. The supply air fan is required for zone equipment and optional for air loop and outdoor air system equipment. The Supply Air Fan Object Type must be \hyperref[fansystemmodel]{Fan:SystemModel}, \hyperref[fanonoff]{Fan:OnOff}, or \hyperref[fanconstantvolume]{Fan:ConstantVolume} if \hyperref[airconditionervariablerefrigerantflow]{AirConditioner:VariableRefrigerantFlow} is used to model the VRF outdoor unit. The Supply Air Fan Object Type must be \hyperref[fansystemmodel]{Fan:SystemModel} or \hyperref[fanvariablevolume]{Fan:VariableVolume} if AirConditioner:VariableRefrigerantFlow:\-FluidTemperatureControl or AirConditioner:VariableRefrigerantFlow:\-FluidTemperatureControl:HR is used to model the VRF outdoor unit. @@ -3976,7 +3976,7 @@ \subsubsection{Inputs}\label{inputs-14-018} This alpha field defines the name of the terminal unit's supply air fan. This field may be left blank when the VRF terminal unit is used as air loop or outdoor air system equipment. -\paragraph{Field: Outdoor Air Mixer Object Type}\label{field-outdoor-air-mixer-object-type} +\paragraph{Field: Outdoor Air Mixer Object Type} This alpha field contains the identifying type of outdoor air mixer specified for the terminal unit. Outdoor air mixer type must be \textit{\hyperref[outdoorairmixer]{OutdoorAir:Mixer}}. This input field should be left blank when the VRF terminal unit is connected to an \textit{\hyperref[airterminalsingleductmixer]{AirTerminal:SingleDuct:Mixer}} object. If this field is left blank, an outdoor air mixer is not simulated. If the VRF terminal unit is used as air loop equipment and this terminal unit's outdoor air flow rates are autosized then the autosized flow rates will be set to 0 when an outdoor air system is used in the air loop (ref \textit{\hyperref[airloophvacoutdoorairsystem]{AirloopHVAC:OutdoorAirSystem}}). @@ -4022,7 +4022,7 @@ \subsubsection{Inputs}\label{inputs-14-018} \paragraph{Field: Supplemental Heating Coil Object Type}\label{field-supplemental-heating-coil-object-type-2-000} -This alpha field defines the type of supplemental heating coil to be used by this VRF terminal unit. The input requirements for these heating coil objects are described elsewhere in this document. The hot water and steam heating coils require specifying plant loop, branches, and connector objects to support the heating coils, and are placed on the demand side of the plantloop. The hot water flow modulation through the supplemental heating coil does not require additional controller or Controller:WaterCoil object. The parent object (VRF terminal unit) itself provides the “controller” function of modulating water flow. Supplemental Heating Coil Object Type must be \hyperref[coilheatingelectric]{Coil:Heating:Electric}, \hyperref[coilheatingfuel]{Coil:Heating:Fuel}, \hyperref[coilheatingwater]{Coil:Heating:Water}, or \hyperref[coilheatingsteam]{Coil:Heating:Steam}. +This alpha field defines the type of supplemental heating coil to be used by this VRF terminal unit. The input requirements for these heating coil objects are described elsewhere in this document. The hot water and steam heating coils require specifying plant loop, branches, and connector objects to support the heating coils, and are placed on the demand side of the plantloop. The hot water flow modulation through the supplemental heating coil does not require additional controller or Controller:WaterCoil object. The parent object (VRF terminal unit) itself provides the “controller” function of modulating water flow. Supplemental Heating Coil Object Type must be \hyperref[coilheatingelectric]{Coil:Heating:Electric}, \hyperref[coilheatinggas-000]{Coil:Heating:Fuel}, \hyperref[coilheatingwater]{Coil:Heating:Water}, or \hyperref[coilheatingsteam]{Coil:Heating:Steam}. \paragraph{Field: Supplemental Heating Coil Name}\label{field-supplemental-heating-coil-name-2-000} diff --git a/doc/interface-developer/src/input-details/idd-conventions.tex b/doc/interface-developer/src/input-details/idd-conventions.tex index 00e8d83ed25..7d55c132e06 100644 --- a/doc/interface-developer/src/input-details/idd-conventions.tex +++ b/doc/interface-developer/src/input-details/idd-conventions.tex @@ -437,7 +437,7 @@ \subsection{Using the Input-Output Reference Document}\label{using-the-input-out Simulation Parameters -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} {[}------{]}~ Version @@ -461,7 +461,7 @@ \subsection{Using the Input-Output Reference Document}\label{using-the-input-out Location - Climate - Weather File Access -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} {[}------{]}~ Site:Location diff --git a/doc/module-developer/src/energyplus-services/input-services.tex b/doc/module-developer/src/energyplus-services/input-services.tex index 0c370a9a89e..30001815fc6 100644 --- a/doc/module-developer/src/energyplus-services/input-services.tex +++ b/doc/module-developer/src/energyplus-services/input-services.tex @@ -20,7 +20,7 @@ \subsection{GetNumObjectsFound}\label{getnumobjectsfound} USE InputProcessor, ONLY: GetNumObjectsFound -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} NumVAVSys = \textbf{GetNumObjectsFound}(`SINGLE DUCT:VAV:REHEAT') @@ -34,11 +34,11 @@ \subsection{GetObjectItem}\label{getobjectitem} ~~~ USE InputProcessor -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ~~~ INTEGER :: SysNum = 0~~~~ ! The Sys that you are currently loading input into -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ~~~ CHARACTER(Len = MaxNameLength)~ :: CurrentModuleObject @@ -60,7 +60,7 @@ \subsection{GetObjectItem}\label{getobjectitem} ~~~ INTEGER~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :: TotalArgs = 0 -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ~~~ CALL \textbf{GetObjectDefMaxArgs} \& @@ -70,7 +70,7 @@ \subsection{GetObjectItem}\label{getobjectitem} ~~~ MaxAlphas = MAX(MaxAlphas,NumAlphas) -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ~~~~~ !Start Loading the System Input @@ -94,7 +94,7 @@ \subsection{GetObjectItem}\label{getobjectitem} ~~~ ~~~~Sys(SysNum)\%SysType\_Num = SingleDuctVAVReheat -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ~~~~~ END DO @@ -130,7 +130,7 @@ \subsubsection{Extensible input techniques}\label{extensible-input-techniques} USE InputProcessor, ONLY: GetObjectDefMaxArgs -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} CHARACTER(len = MaxNameLength), ALLOCATABLE, DIMENSION(:) :: Alphas @@ -156,7 +156,7 @@ \subsection{GetObjectItemNum}\label{getobjectitemnum} USE InputProcessor, ONLY: GetObjectItemNum -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ListNum = \textbf{GetObjectItemNum}(`CONTROLLER LIST',ControllerListName) @@ -170,7 +170,7 @@ \subsection{FindItemInList}\label{finditeminlist} USE InputProcessor, ONLY: FindItemInList -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} SysNum = \textbf{FindItemInList}(CompName,Sys\%SysName,NumSys) @@ -184,7 +184,7 @@ \subsection{FindItem}\label{finditem} USE InputProcessor, ONLY: FindItem -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} SysNum = \textbf{FindItem}(CompName,Sys\%SysName,NumSys) @@ -198,7 +198,7 @@ \subsection{FindItemInSortedList}\label{finditeminsortedlist} USE InputProcessor, ONLY: FindItemInSortedList -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} SysNum = \textbf{FindItemInSortedList}(CompName,Sys\%SysName,NumSys) @@ -212,7 +212,7 @@ \subsection{SameString}\label{samestring} USE InputProcessor, ONLY: SameString -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} IF (\textbf{SameString}(InputRoughness,`VeryRough')) THEN @@ -228,7 +228,7 @@ \subsection{VerifyName}\label{verifyname} USE InputProcessor, ONLY: VerifyName -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} CALL \textbf{VerifyName}(AlphArray(1),Fan\%FanName, \& @@ -248,7 +248,7 @@ \subsection{RangeCheck}\label{rangecheck} USE InputProcessor, ONLY: RangeCheck -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} ErrorsFound = .false. @@ -302,6 +302,6 @@ \subsection{MakeUPPERCase}\label{makeuppercase} USE InputProcessor, ONLY: MakeUPPERCase -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} UCString = \textbf{MakeUPPERCase}(`lower string') diff --git a/doc/module-developer/src/energyplus-services/other-useful-utilities.tex b/doc/module-developer/src/energyplus-services/other-useful-utilities.tex index 445ca5e5f14..d209a95b04a 100644 --- a/doc/module-developer/src/energyplus-services/other-useful-utilities.tex +++ b/doc/module-developer/src/energyplus-services/other-useful-utilities.tex @@ -118,7 +118,7 @@ \subsection{CreateSysTimeIntervalString}\label{createsystimeintervalstring} USE General, ONLY: CreateSysTimeInterval -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} !The warning message will be suppressed during the warm up days. diff --git a/doc/output-details-and-examples/src/output-files/eplusout-eio.tex b/doc/output-details-and-examples/src/output-files/eplusout-eio.tex index e88da45384d..3bea80a1bf0 100644 --- a/doc/output-details-and-examples/src/output-files/eplusout-eio.tex +++ b/doc/output-details-and-examples/src/output-files/eplusout-eio.tex @@ -4172,7 +4172,7 @@ \subsubsection{Field: EER \{Btu/W-h\}}\label{field-eer-btuw-h} The energy efficiency ratio (\emph{EER}) at standard rating conditions for the DX cooling coil in IP units of Btu/W-hr. See the EnergyPlus Engineering Reference (Single Speed DX Cooling Coil, Standard Ratings) for details on how this value is calculated. -\subsubsection{Field: SEER User \{Btu/W-h\}}\label{field-seer-btuw-h} +\subsubsection{Field: SEER User \{Btu/W-h\}} The seasonal energy efficiency ratio (SEER) for the DX cooling coil in IP units of Btu/W-hr. See the EnergyPlus Engineering Reference (Single Speed DX Cooling Coil and Multi Speed DX Cooling Coil, Standard Ratings) for details on how this value is calculated. SEER User value calculation uses user specified Part Load Factor (PLF) curve to account for cycling effect. diff --git a/doc/plant-application-guide/src/example-01-chiller-and-condenser-loops/condenser-loop.tex b/doc/plant-application-guide/src/example-01-chiller-and-condenser-loops/condenser-loop.tex index 7d1ec896975..325a75f16ce 100644 --- a/doc/plant-application-guide/src/example-01-chiller-and-condenser-loops/condenser-loop.tex +++ b/doc/plant-application-guide/src/example-01-chiller-and-condenser-loops/condenser-loop.tex @@ -48,9 +48,9 @@ \subsubsection{Condenser Loop Supply Side Construction}\label{condenser-loop-sup \caption{Condenser loop supply side connectors \protect \label{fig:condenser-loop-supply-side-connectors}} \end{figure} -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} \subsubsection{Condenser Loop Demand Side Construction}\label{condenser-loop-demand-side-construction-001} diff --git a/doc/tips-and-tricks-using-energyplus/src/input/getting-data-from-window-program.tex b/doc/tips-and-tricks-using-energyplus/src/input/getting-data-from-window-program.tex index e2d9acc805d..df8b8394dc7 100644 --- a/doc/tips-and-tricks-using-energyplus/src/input/getting-data-from-window-program.tex +++ b/doc/tips-and-tricks-using-energyplus/src/input/getting-data-from-window-program.tex @@ -329,7 +329,7 @@ \subsection{WINDOW Data File}\label{window-data-file} \textbf{\emph{Rbvis}}~~~~ = back visible reflectance vs.~angle of incidence -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} *Standard conditions are diff --git a/doc/tips-and-tricks-using-energyplus/src/schedule-and-availability-manager/schedule-and-availability-manager.tex b/doc/tips-and-tricks-using-energyplus/src/schedule-and-availability-manager/schedule-and-availability-manager.tex index c58ba71a923..d25cfce4901 100644 --- a/doc/tips-and-tricks-using-energyplus/src/schedule-and-availability-manager/schedule-and-availability-manager.tex +++ b/doc/tips-and-tricks-using-energyplus/src/schedule-and-availability-manager/schedule-and-availability-manager.tex @@ -1,4 +1,5 @@ -\section{Schedules And Availability Manager}\label{schedules-and-availability-manager} +\section{Schedules And Availability Manager} + Regarding component schedules, the general rule is don't schedule any components except the supply fan and the corresponding availability manager(s). Beyond that, every component should always be available and let the controls determine what runs or doesn't run. If a component other than the supply fan is scheduled off, then it will remain off even if the night cycle manager turns on the system. -For unitary systems, don't use the night cycle manager. Use a scheduled availability manager and let the system be always on. Then use the Supply Air Fan Operating Mode Schedule Name in the unitary system to switch between continuous fan (for ventilation) during occupied periods and switch to cycling fan for unoccupied. The system will cycle on as the thermostat requests, and this way it will run just enough to meet the load - no need for a minimum cycle time. \ No newline at end of file +For unitary systems, don't use the night cycle manager. Use a scheduled availability manager and let the system be always on. Then use the Supply Air Fan Operating Mode Schedule Name in the unitary system to switch between continuous fan (for ventilation) during occupied periods and switch to cycling fan for unoccupied. The system will cycle on as the thermostat requests, and this way it will run just enough to meet the load - no need for a minimum cycle time. diff --git a/doc/tools/parse_latex_log.py b/doc/tools/parse_latex_log.py new file mode 100644 index 00000000000..a91f35e9c02 --- /dev/null +++ b/doc/tools/parse_latex_log.py @@ -0,0 +1,524 @@ +""" +Parse the LaTeX log file. +""" +import copy +import json +import os +import os.path +import re +import sys + + +DEBUG = False +VERBOSE = False +EXIT_CODE_ISSUES_FOUND = 0 # set up to not return a non-zero exit code +EXIT_CODE_GOOD = 0 + + +SEVERITY_WARNING = 'WARNING' +SEVERITY_ERROR = 'ERROR' + + +LINE_RE = re.compile(r".*\((.*?\.tex)") +TEX_ERROR = re.compile(r"^! (.*)$") +GENERAL_ERROR = re.compile( + r"^(! )?(LaTeX|pdfTeX|Package|Class) ((.*) )?Error.*?:(.*)") +GENERAL_WARNING = re.compile( + r"^(! )?(LaTeX|pdfTeX|Package|Class) ((.*) )?Warning.*?:(.*)$") +LATEX_WARNING = re.compile(r"^LaTeX Warning: (.*)$") +LABEL_MULTIPLY_DEFINED_WARN = re.compile( + r"^ Label `([^']*)' multiply defined\.$") +HYPER_UNDEFINED_WARN = re.compile( + r"^ Hyper reference `([^']*)' on page (\d+) " + + r"undefined on input line (\d+)\.$") +LINE_NO = re.compile(r"l\.(\d+)") +ON_INPUT_LINE = re.compile(r"on input line (\d+)\.") +ISSUES_TO_SKIP = { + "There were undefined references.", + "There were multiply-defined labels.", + } + + +def parse_on_input_line(line): + """ + - line: str, the line to parse + RETURN: None or int + """ + m = ON_INPUT_LINE.search(line) + if m is not None: + return int(m.group(1)) + return None + + +def parse_current_tex_file(line, root_dir): + """ + Parse a single latex log line to find the current LaTeX file being + processed if any. + - line: str, the line to parse + - root_dir: str, the root directory of the file if found (for + normalization) + RETURN: None or string + """ + m = LINE_RE.search(line) + if m is not None: + pp_dir = root_dir + pp_file = os.path.join(pp_dir, m.group(1)) + try: + return os.path.relpath(pp_file, start=pp_dir) + except Exception: + # not a file under root_dir -- ignore + return None + return None + + +def parse_warning_start(line): + """ + - line: str, line + RETURN: None OR + (Tuple str, str, str) + - the warning type + - warning type continued (usually for package) + - the message + """ + m = GENERAL_WARNING.match(line) + if m is not None: + return (m.group(2), m.group(4), m.group(5)) + return None + + +def parse_error_start(line): + """ + - line: str, line + RETURN: None OR + (Tuple str, str, str) + - the error type + - error type continued (usually for package) + - the message + """ + m = GENERAL_ERROR.match(line) + if m is not None: + return (m.group(2), m.group(4), m.group(5)) + return None + + +def parse_tex_error(line): + """ + Parse a single latex log line indicating an error/warning message + beginning. + - line: str, the line to parse + RETURN: None or string + """ + m = TEX_ERROR.match(line) + if m is not None: + return m.group(1) + return None + + +def find_locations(root_dir, target, target_ext='.tex', verbose=False): + """ + - root_dir: str, the root of the directory tree to explore + - target: str, the target to find + - target_ext: str, the file extensions to browse + RETURN: Array of {'file': string, 'line': int} values + """ + locations = [] + pp_dir = root_dir + for dir_name, subdirs, files in os.walk(root_dir): + for file_name in files: + path = os.path.join(dir_name, file_name) + _, ext = os.path.splitext(file_name) + if target_ext is not None and ext != target_ext: + continue + if verbose: + print("checking {}...".format(path)) + pp_path = path + try: + with open(path, encoding="utf8", errors="ignore") as f: + for line_number, line in enumerate(f.readlines()): + if target in line: + path_to_log = os.path.relpath( + pp_path, start=pp_dir) + locations.append({ + 'file': path_to_log, + 'line': line_number + 1}) + except Exception as e: + import traceback + print("issue encountered in finding locations: {}".format(e)) + traceback.print_tb(sys.last_traceback) + sys.exit(EXIT_CODE_ISSUES_FOUND) + return locations + + +def find_undefined_hyperref(root_dir, label): + """ + - root_dir: str, the root of the directory tree to explore + - label: str, the label that is undefined + RETURN: Array of {'file': string, 'line': int} values + """ + target = "\\hyperref[" + label + "]" + return find_locations(root_dir, target) + + +def find_multiply_defined_labels(root_dir, label): + """ + - root_dir: str, the root of the directory tree to explore + - label: str, the label that is multiply defined + RETURN: Array of {'file': string, 'line': int} values + """ + target = "\\label{" + label + "}" + return find_locations(root_dir, target) + + +def parse_warning(line, src_dir): + """ + - line: string, the line to parse + - src_dir: string, the root directory of the LaTeX source files + RETURN: None or one of: + - {'type': 'Label multiply defined', + 'label': string, + 'message': string} + - {'type': 'Hyper reference undefined', + 'label': string, + 'message': string} + """ + m = LABEL_MULTIPLY_DEFINED_WARN.match(line) + if m is not None: + label = m.group(1) + locations = find_multiply_defined_labels(src_dir, label) + return {'severity': SEVERITY_WARNING, + 'type': "Label multiply defined", + 'locations': locations, + 'message': line, + 'label': m.group(1)} + m = HYPER_UNDEFINED_WARN.match(line) + if m is not None: + label = m.group(1) + locations = find_undefined_hyperref(src_dir, label) + return {'severity': SEVERITY_WARNING, + 'type': "Hyper reference undefined", + 'locations': locations, + 'message': line, + 'label': m.group(1)} + return None + + +def parse_line_number(message): + """ + - message: string + RETURN: None or int, the line number if found + """ + m = LINE_NO.search(message) + if m is not None: + return int(m.group(1)) + return None + + +def to_s(x): + """ + A custom version of str(.) that prevents None from coming out as "None" + - x: any, the thing to "stringify" + RETURN: string + """ + if x is None: + return "" + return str(x) + + +class LogParser: + """ + The LaTeX Log Parser. + """ + def __init__(self, log_path, src_dir, verbose=False): + self.log_path = log_path + self.src_dir = src_dir + self.verbose = verbose + + def _read_tex_error(self, line): + line_no = parse_line_number(self._current_issue) + self._issues['issues'].append({ + 'severity': SEVERITY_ERROR, + 'type': self._type, + 'locations': [{ + 'file': self._current_tex_file, + 'line': line_no}], + 'message': self._current_issue.strip()}) + + def _read_warning(self, line): + warn = parse_warning(self._current_issue, self.src_dir) + if self._current_issue.strip() not in ISSUES_TO_SKIP: + if warn is not None: + self._issues['issues'].append(warn) + else: + line_no = parse_on_input_line(self._current_issue) + self._issues['issues'].append({ + 'severity': SEVERITY_WARNING, + 'type': self._type, + 'locations': [{ + 'file': self._current_tex_file, + 'line': line_no}], + 'message': self._current_issue.strip()}) + + def _read_error(self, line): + if self._current_issue not in ISSUES_TO_SKIP: + line_no = parse_on_input_line(self._current_issue) + self._issues['issues'].append({ + 'severity': SEVERITY_ERROR, + 'type': self._type, + 'locations': [{ + 'file': self._current_tex_file, + 'line': line_no}], + 'message': self._current_issue.strip()}) + + def _read_issue(self, line): + is_ws = (line.strip() == "") + first_line = (self._issue_line == 1) + nonempty = len(line) > 1 + if is_ws and (not (first_line and nonempty)): + if self._in_tex_err: + self._read_tex_error(line) + elif self._in_warn: + self._read_warning(line) + elif self._in_err: + self._read_error(line) + else: + raise Exception("unhandled issue read") + self._reset_after_read() + else: + self._current_issue += line + self._issue_line += 1 + + def _init_state(self): + self._previous_line = None + self._issue_line = None + self._in_tex_err = False + self._in_warn = False + self._in_err = False + self._type = None + self._current_tex_file = None + self._current_issue = None + + def _reset_after_read(self): + self._in_tex_err = False + self._in_warn = False + self._in_err = False + self._type = None + self._current_issue = None + + def _report(self, message): + if self.verbose: + print(message) + + def _assemble_full_line(self, line): + if self._previous_line is not None: + full_line = self._previous_line.strip() + line + else: + full_line = line + return full_line + + def __call__(self): + self._issues = {"log_file_path": self.log_path, "issues": []} + try: + with open(self.log_path, encoding="utf8", errors="ignore") as rd: + self._init_state() + for line in rd.readlines(): + if (self._in_tex_err or self._in_warn or self._in_err): + self._read_issue(line) + else: + self._issue_line = None + full_line = self._assemble_full_line(line) + tex_file = parse_current_tex_file( + full_line, self.src_dir) + issue_start = parse_tex_error(line) + warning_start = parse_warning_start(line) + err_start = parse_error_start(line) + if tex_file is not None: + self._current_tex_file = tex_file + self._report("processing {} ...".format(tex_file)) + elif issue_start is not None: + self._issue_line = 1 + self._in_tex_err = True + self._type = "TeX Error" + self._current_issue = issue_start + self._report("- issue {}".format(issue_start)) + elif err_start is not None: + self._issue_line = 1 + self._in_err = True + self._type = ( + to_s(err_start[0]) + + " " + to_s(err_start[1])).strip() + self._current_issue = err_start[2] + self._report("- error {}".format( + self._current_issue)) + elif warning_start is not None: + self._issue_line = 1 + self._in_warn = True + self._type = ( + to_s(warning_start[0]) + + " " + to_s(warning_start[1])).strip() + self._current_issue = warning_start[2] + self._report("- warning {}".format( + self._current_issue)) + self._previous_line = line + except Exception: + sys.exit(EXIT_CODE_ISSUES_FOUND) + return self._issues + + +def parse_log(log_path, src_dir, verbose=VERBOSE): + """ + - log_path: str, the path to the LaTeX log file + - src_dir: str, the path to the LaTeX source directory + - verbose: bool, if True, print to sys.stdout + RETURN: { "log_file_path": str, + "bangs": [{"tex_file": str, "issue": str}*], + "warnings": [{"type": str, "message": str, "key": str}*] + } + """ + log_parser = LogParser(log_path, src_dir, verbose) + return log_parser() + + +def update_paths_to_be_from_repo_root(issues, repo_root_to_src): + """ + - issues: (Array {'file': string, ...}) + - repo_root_to_src: string, path from repository root to directory where + src/ folder is. + RETURN: (Array {'file': string, ...}) + """ + updated = [] + for issue in issues: + update = copy.deepcopy(issue) + if 'locations' in update: + new_locs = [] + for location in update['locations']: + loc = copy.deepcopy(location) + if 'file' in location: + loc['file'] = os.path.join( + repo_root_to_src, + location['file']) + new_locs.append(loc) + update['locations'] = new_locs + updated.append(update) + return updated + + +def find_issues(log_path, json_error_path, src_dir): + """ + - log_path: string, path to LaTeX log file to read + - json_error_path: string, path to JSON error file to write + - src_dir: string, path to the source directory of the processed LaTeX + files + RETURNS: Bool + SIDE_EFFECTS: + - if significant errors are found in the log_path, writes json_error_path + with a summary of issues. Also writes issues to stdout + - will ONLY write the json error file if an issue is found + - returns True if issues found, else false + - if json_error_path exists when this script is run, the file is deleted + (since the presense of the file indicates that issues are found, we don't + want the file to persist between calls) + """ + if os.path.exists(json_error_path): + os.remove(json_error_path) + try: + errs = parse_log(log_path, src_dir) + repo_root = os.path.abspath( + os.path.join(os.path.dirname(log_path), '..', '..')) + repo_root_to_src = os.path.relpath(src_dir, start=repo_root) + errs['issues'] = update_paths_to_be_from_repo_root( + errs['issues'], + repo_root_to_src) + except Exception as e: + import traceback + print("issue encountered in parsing log: {}".format(e)) + traceback.print_tb(sys.last_traceback) + sys.exit(EXIT_CODE_ISSUES_FOUND) + num_issues = len(errs['issues']) + if (num_issues > 0): + if VERBOSE: + print("ISSUES: {}".format(num_issues)) + f = sys.stdout + for issue in errs['issues']: + f.write("[LATEX") + f.write(issue['severity'] + "::") + locs = [loc['file'] + ":" + str(loc['line']) + for loc in issue['locations']] + f.write(",".join(locs) + "::") + msg = issue['message'].replace("\r\n", " ") + msg = msg.replace("\n", " ") + msg = msg.replace("\r", " ") + msg = msg.replace("\t", " ") + msg = " ".join(msg.split()) + f.write(msg + "]\n") + with open(json_error_path, 'w', encoding='utf-8') as f: + json.dump(errs, f, ensure_ascii=False, indent=4) + return (num_issues > 0) + + +def run_tests(): + """ + A simple unit test suite for the parser. + """ + out = parse_current_tex_file( + "[70] [71] [72] [73] [74] [75]) " + + "(./src/overview/group-compliance-objects.tex [76", + "/home/user/stuff/input-output-reference") + msg = "out = {}".format(out) + assert out == "src/overview/group-compliance-objects.tex", msg + out = parse_current_tex_file( + "Underfull \\hbox (badness 10000) in paragraph at lines " + + "1042--1043", + "/home/user/stuff/input-output-reference") + assert out is None, "out = {}".format(out) + out = parse_current_tex_file( + "]) (./src/overview/group-location-climate-weather-file-access" + + ".tex [77] [78] [79", + "/home/user/stuff/input-output-reference") + assert out == ( + "src/overview/group-location-climate-weather-file-access.tex") + out = parse_current_tex_file( + "(./src/appendix-a-units-and-abbreviations/" + + "standard-energyplus-conditions.tex) " + + "(./src/appendix-a-units-and-abbreviations/" + + "standard-energyplus-units.tex", + "/home/user/stuff/input-output-reference") + assert out == ( + "src/appendix-a-units-and-abbreviations/" + + "standard-energyplus-units.tex"), "out == {}".format(out) + out = parse_tex_error("! Misplaced alignment tab character &.") + msg = "out == {}".format(out) + assert out == "Misplaced alignment tab character &.", msg + out = parse_warning_start( + "LaTeX Warning: Hyper reference " + + "`airterminalsingleductuncontrolled' on page 2467") + assert out[2] == (" Hyper reference `airterminalsingleductuncontrolled' " + + "on page 2467"), "out = {}".format(out) + + +if __name__ == "__main__": + if len(sys.argv) == 2 and (sys.argv[1] == 'test'): + print("TESTING:") + run_tests() + print("all tests passed") + sys.exit(EXIT_CODE_GOOD) + if len(sys.argv) != 4: + print("USAGE python " + sys.argv[0] + " " + + " ") + print("- : file path to LaTeX log file to parse") + print("- : path to LaTeX source directory") + print("- : file path to a JSON version of the error " + + "file; only written if issues found") + print("NOTE: no error file is written if no significant " + + "errors/warnings found") + print("To run tests, call `python {} test'".format(sys.argv[0])) + sys.exit(EXIT_CODE_ISSUES_FOUND) + log_path = sys.argv[1] + src_dir = sys.argv[2] + json_err = sys.argv[3] + if VERBOSE: + print("log_path: {}".format(log_path)) + print("src_dir : {}".format(src_dir)) + print("json_err: {}".format(json_err)) + issues_found = find_issues(log_path, json_err, src_dir) + if issues_found: + sys.exit(EXIT_CODE_ISSUES_FOUND) diff --git a/doc/using-energyplus-for-compliance/src/introduction/tabular-summary-reports.tex b/doc/using-energyplus-for-compliance/src/introduction/tabular-summary-reports.tex index 507179e0e80..82e6e184d4a 100644 --- a/doc/using-energyplus-for-compliance/src/introduction/tabular-summary-reports.tex +++ b/doc/using-energyplus-for-compliance/src/introduction/tabular-summary-reports.tex @@ -680,7 +680,7 @@ \subsection{Other Summary Reports}\label{other-summary-reports} \bottomrule \end{longtable}} -\begin{center}\rule{0.5\linewidth}{\linethickness}\end{center} +\begin{center}\rule{0.5\linewidth}{0.4pt}\end{center} Report: \textbf{ShadingSummary}