Friday, December 07, 2007

Extracting Door Data from .SIM Files Using Awk

Topic: Door counts, areas & conductance losses from SIM files using Awk data extraction scripts.

Below is a simple door counting script using GNU Awk. More sophisticated data extraction routines are in progress -- thanks to all the good people at comp.lang.awk:

# DOOR_COUNT.AWK extracts the door count from the specified .SIM report using
# GNU Awk for Windows:
#
# http://gnuwin32.sourceforge.net/packages/gawk.htm
#
# Note that GAWK.EXE must exist in the shell path. Thus after installation
# using the package installer, it is recommended that copies of GAWK.EXE,
# libconv2.dll, and libintl3.dll (found in
C:\Program Files\GnuWin32\bin in
# default installations)
be placed in the %WINDIR%\system32 directory.
#
#
Save this program as DOOR_COUNT.AWK in the eQuest projects directory, e.g.
#
# C:\Program Files\eQuest [Rev]\Projects\DOOR_COUNT.AWK
#
# ...where [Rev] is the current eQuest revision.
#
# If not done so already, under the "My Computer\System Properties\Advanced"
# tab click the "Environment Variables" button and add the following system
# environment variable:
#
# Variable name: AWKPATH
# Variable value: C:\Program Files\eQuest [Rev]\Projects
#
# ...where [Rev] is the current eQuest revision. This will allow AWK to find
# the program library from any project directory

#
# CMD-line usage:
#
# gawk -f DOOR_COUNT.AWK SimFile.SIM
#
# ...where the data file SimFile.SIM must exist in the current directory.
#

/TOTAL    WINDOWS/{go=1}/^[[:digit:][:space:]]+$/\
&&go{Doors+=$3;go=0}END{print "Door Count = " Doors}

Tuesday, December 04, 2007

Architectural PFEC Questionnaire

Topic: Standard questions to the project architect from the ELCCA analyst to complete the PFEC form.

Notes:
1) In general, State of Washington publicly-funded projects require an ELCCA if the project exceeds 25,000 ft.² or 50% of the total value of the facility.

  • Public school projects which exceed 25,000 ft.² but not 50% of the total value the facility are excepted, and may file a PFEC only.
  • See complete requirements in the 2005 ELCCA Guidelines.
2) WSEC values shown below are from the 2006 Washington State Energy Code
3) ELCCA values shown below are from the 2005 ELCCA Guidelines.
4) Reconcile any changes with the Architectural ELCCA Questionnaire post


PFEC Form:

Note to the Analyst: The following questions found on the PFEC may be answered by the architectural drawings, the mechanical project manager, or may require the input from the architect. Upon project initiation, cut-and-paste the questions not answered by the drawings to the body of an e-mail to the mechanical project manager. Then E-mail any questions not answered by the mechanical project manager to the architect.
  • Net usable square footage. Check for this number on the code sheet of the architectural drawings. Unless there is significant space for other tenants that is not part of the project, the gross square footage will be the same as the net square footage.
  • Number of occupants. As with square footage, check for this number on the code sheet of the architectural drawings. If not known, estimate at 31 persons per nominal 1000 square-foot classroom, and 150 ft.² per person in administrative areas.
  • Agency project number, if known. This is the number used by the school district to track the project, and may be listed on the lead sheets of the architectural drawings. If not known, leave blank.
Walls
  • Are the walls constructed of wood or metal studs? (1)
  • Are the wall insulation systems between-studs batt, external rigid, or a combination of both?
    • For all combination systems, please provide sketch.
  • Do all of the anticipated wall constructions meet minimum Washington State Energy Code (WSEC) values? For example, are there any uninsulated masonry walls that may need to be compensated for elsewhere?
    • Net effective WSEC minimum values in Climate Zone 1 (Western Washington) are approximately R-17 for wood framed wall, R-10 for metal framed wall, and R-7 for masonry wall assemblies.
    • Net effective WSEC minimum values in Climate Zone 2 (Eastern Washington) are approximately R-17 for wood framed wall, R-12 for metal framed wall, and R-9 for masonry wall assemblies.
  • Will any of the anticipated wall constructions meet or exceed ELCCA prescriptive values?
    • Net effective ELCCA prescriptive values are approximately R-12 for framed or 'light' wall, and R-10 for 'mass block' or masonry wall assemblies in both climate zones.
    • Note that per the WSEC, all metal framed walls in Climate Zone 2 and all wood-framed walls in both climate zones meet and exceed ELCCA prescriptive values, respectively.
Roofs
  • Is the roof construction of wood or metal joists? (2)
  • Are the roof insulation systems between-joists batt, external rigid, or a combination of both?
    • For all combination systems, please provide sketch.
  • Do all of the anticipated roof constructions meet minimum WSEC values?
    • WSEC minimum values in Climate Zone 1 are approximately R-22 for most commercial and institutional roofs.
    • WSEC minimum values in Climate Zone 2 are approximately R-26 for most commercial and institutional roofs.
  • Will any of the anticipated roof constructions meet or exceed ELCCA prescriptive values?
    • ELCCA prescriptive values are approximately R-30 for roofs in both climate zones. An exception is listed for batt insulation applied on the underside of the roof deck between roof joists; in this case R-38 is required to compensate for the thermal conductance of the joists.
Glazing
  • What are the approximate areas or percentages of vertical and horizontal glazing?
  • Is the building anticipated to have greater than 30% glazing?
    • Exceptions are listed for buildings with greater than 30% glazing, and those heated exclusively via electric resistance.
  • Will all of the anticipated glazing assemblies meet minimum WSEC values?
    • In both climate zones, most vertical glazing (windows & doors) are required to have a maximum 0.55 U-value and 0.45 maximum Solar Heat Gain Coefficient (SHGC).
    • Most horizontal glazing (skylights) are required to have a maximum 0.70 U-value and 0.40 maximum SHGC.
Doors
  • Opaque doors are required by the WSEC to have an R-value of approximately 2 (U-0.60 maximum) in both climate zones. Please advise if doors are not anticipated to meet these requirements.
Foundation
  • Foundation perimeters are required by the WSEC to have an F-factor of 0.54 in both climate zones. Please advise if the foundation is not anticipated to have a minimum R-10 rigid applied either horizontally or vertically at the perimeter.
  • F = 0.74 will be used as default in template
Notes:
(1) Wood studs are more commonly found in smaller, low-rise and residential buildings.
(2)
TJI's are wood I-beam type joists

Tuesday, November 13, 2007

Envelope Strategies

Topic: Roof, wall and window strategies for cost-effectively exceeding WSEC and beating ELCCA prescriptive thermal performance criteria.

...develop table comparing App. G, WSEC and ELCCA envelope thermal performance values.

Sunday, November 11, 2007

Outdoor Air Load Estimator

Topic: A nifty Java-based outdoor air load calculator, courtesy of ArchEnergy Inc.

Consider this calculator, which includes American and Canadian weather tables, for reality checking energy recovery numbers calculated by energy modeling programs. Following is a sample output report:

********************************************************************************************

Result summary for Calculation Number: 5
Location: BURLINGTON, Vermont
Elevation: 341 ft
Operating Hours: 0:00 o'clock until 0:00 o'clock
Hours of Operation: 24
Makeup Air Flow: 183000 cfm
Thermostat Setpoints: Heating = 68 F, Cooling = 72 F

Dehumidification was set to limit the Relative Humidity to: No Dehumidification

Heating was locked out during: --
Cooling was locked out during: --

The Lockout of Heating or Cooling systems resulted in...
Insufficient Heating during: --
Insufficient Cooling during: --

The Heating Design Load is: 18891.3 kBtu/h
The Cooling Design Load is: 4754.9 kBtu/h

Calculated Monthly loads:
Month Heating Load Cooling Load
January : 7,847,593 kBtu 0 kBtu
February : 7,329,964 kBtu 0 kBtu
March : 6,296,320 kBtu 0 kBtu
April : 3,911,545 kBtu 28,900 kBtu
May : 1,574,753 kBtu 97,140 kBtu
June : 889,352 kBtu 128,736 kBtu
July : 399,761 kBtu 382,194 kBtu
August : 532,923 kBtu 221,369 kBtu
September : 1,517,449 kBtu 33,329 kBtu
October : 2,836,548 kBtu 0 kBtu
November : 4,821,821 kBtu 0 kBtu
December : 6,956,354 kBtu 0 kBtu
Total_Year : 44,914,382 kBtu 891,668 kBtu

FAN ENERGY CALCULATIONS:
Supply Exhaust
Total Static Pressure: 3.5 inW 1.0 inW
Fan Type: Forward_Curved Forward_Curved
Fan Efficiency: 63.0 % 63.0 %
Motor Class: Standard Standard
Motor Efficiency: 91.0 % 89.0 %
Motor Output Power: 159.032 HP 45.438 HP
Moter Rated Input: 130.319 kW 38.071 kW
Motor Energy Consumption: 1141594 kWh 333499 kWh
********************************************************************************************


Set system runtimes matching equipment operational schedule to establish an upper bound for energy recovery savings. Here the building is operating at 7x24, and if the rough cost for a therm of natural gas and a kilowatt hour of electricity are $1.20 and $0.10 respectively, then an upper bound on heat recovery savings is:

  • 1.20 $/therm * 44,914,382 kBTU / 100 kBTU per therm = $530,973 from gas, and
  • $0.10 $/kWH * 1,141,594 kWH = $114,160 from electricity,
  • for a total of $645,133 heating load cost with systems running 24 hours a day, seven days a week, for one year at constant volume.
This number is the maximum theoretical value of the savings, however it cannot be approached without 1) consistent internal heat gains -- heat gains sufficient to keep the exhaust airstream temperature elevated effectively above the outdoor air temperature, and 2) significant fan motor energy expenditures.

What typically happens in laboratory-type buildings is that while there may be a consistent heat recovery demand, the heat available to recover varies widely with occupancy. And likely there will be a number of hours in a 7 x 24 year-round operation when the outside air approaches to within 5° of the exhaust air, rendering energy recovery essentially ineffective.

Have not counted heat recovery from a cooling standpoint, as the number of annual hours where the outside air exceeds the exhaust air by more than 5° F in this climate most likely won't be very compelling.

So for how many hours per year does the exhaust air temperature exceed the outside air and by how much, on the average? Just check that 'Outside & Exhaust Air Loads Report' in the SIM file...if it actually existed, it might tell you...;-) All of the information is calculated and carried in the program, and presumably is output to the SIM file directly and indirectly in various places.

Am hoping to figure a way to pull a report like the above-mentioned together one of these days...if anyone has an Awk-based outside air loads report, even a rudimentary one as a starting point, I'd be much obliged.

Thursday, November 08, 2007

ELCCA Standard Systems

Topic: Standard HVAC systems used in typical Washington State schools analyzed in ELCCA reports

Mechanical Alternatives

Displacement Ventilation: Low-velocity floor diffusers, ceiling return for classrooms. Fan powered VAV for administrative areas, constant volume air handler for multipurpose room. Gas-fired instantaneous 95% efficient hot-water condensing boilers provide heating and domestic water needs. DDC controls.

Centralized Air Handlers & Zone Duct Coils: Constant volume centralized air handlers with zone duct heating coils for all areas. Gas-fired 80% efficient cast iron boiler. Gas-fired 80% efficient 100 gallon domestic hot-water heater. DDC controls.


High-Performance & Renewable Alternatives

Ground Loop Heat Pump:
High-lift high-efficiency geothermal ground source heat pumps provide both heating and cooling for all areas. Gas-fired instantaneous 95% efficient hot-water condensing boilers provide domestic water needs. DDC controls. Code minimum ventilation. This is also the Renewable Alternative.

Wednesday, November 07, 2007

eQuest SIM File Data Extraction Using Awk

Topic: Extracting discrete data values using Gawk (GNU Awk)

Following are some (one, for now) potentially useful Gawk (using GNU Awk for Win32) scripts for extracting data from an eQuest/DOE2 output SIM file :

# Save this script to a file named BEPU.AWK in the directory
# containing the simulation output files.
#
# BEPU.AWK extracts energy consumption totals from
# the specified .SIM report using GNU Awk for Windows:
#
# http://gnuwin32.sourceforge.net/packages/gawk.htm
#
# Note that GAWK.EXE must exist in the shell path. Thus after installation
# using the package installer, it is recommended that a copy of GAWK.EXE
# be placed in the %WINDIR%\system32 directory.
#
# Usage:
#
# gawk -f BEPU.AWK SimFile.SIM
#
# ...where the program file BEPU.AWK and data file SimFile.SIM must exist.
#

{if ($2 ~/BEPU/) {ipr = 1}}
{if (ipr == 1)
{if ($1 == "TOTAL") print $1" "$2" "$3" "$4
if ($2 == "PS-H") ipr = 0}}
At left is a simple Awk script to extract the energy consumption totals in kWH and therms from the specified SIM file.

Run this script from a CMD prompt in the same directory as your .SIM files; be sure to copy GAWK.EXE to %WINDIR%\System32, where %WINDIR% is usually (but not always) C:\WINDOWS.

Modified from an original script posted by Joe Huang in the BLDG-SIM archives.

Thanks Joe!

More fun with Awk and SED to come over the next few months, as time permits or workload demands.

Note that in this example, printing is turned on (ipr = 1) by flagging the desired report, and off (ipr = 0) by flagging the report following the desired report. Examine the contents of the SIM file or see this post to determine the actual report sequence -- its not the same as shown in the drop-down box in the SIM file viewer.

More Awk examples from elsewhere...

Monday, November 05, 2007

SED & eQuest SIM File Reports

Topic: Extracting individual reports from SIM files using SED

See this post for another SED vs. Awk comparative editorial. Following is my own take, after fiddling around with SED for a few hours in an attempt accomplish discrete value data extraction.

Next time: Discrete value data extraction using Awk!

SED = Sledgehammer

SED seems most useful for gross editing tasks -- i.e. global search-and-replacements or chunking out reports from the SIM file. SED is essentially batch application of regular expressions.

Lacking basic programming constructs, there are fundamental functionality limitations. But for the tasks it is capable performing, SED accomplishes them exceedingly well.

Awk = Sawzall

With built-in programming language constructs, Awk seems to be more suited for 'refined' tasks like discrete value data extraction, doing arithmetic on arrays and columns, or creating custom reports.

They both seem to be the right tool, just for different tasks. Following are some potentially useful SED examples (using GNU SED for Win32):

SED /HW-BOILER/!d SimFile.SIMOutputs from SimFile.SIM all lines with HW-BOILER
SED /PS-E/,/PS-F/!d SimFile.SIM
Outputs the PS-E report contained in SimFile.SIM
@ECHO OFF
SET SIMRPT=Energy Cost Summary
SET SIMBGN=BEPS
SET SIMEND=BEPU
SED.EXE --version >NUL
IF %ERRORLEVEL% GTR 0 GOTO USAGE
IF EXIST %1.SIM GOTO NEXT
GOTO USAGE

:NEXT
SED /%SIMBGN%/,/%SIMEND%/!d %1.SIM >%TEMP%\~SED.TMP
IF /I "%2" EQU "/A" GOTO APPEND
SED /%SIMEND%/d %TEMP%\~SED.TMP
GOTO :EOF
:APPEND
SED /%SIMEND%/d %TEMP%\~SED.TMP >>%0.RPT
GOTO :EOF

:USAGE
ECHO.
ECHO The %SIMBGN%.CMD script extracts the "%SIMRPT%" section from
ECHO the specified .SIM report using GNU SED for Windows:
ECHO.
ECHO http://gnuwin32.sourceforge.net/packages/sed.htm
ECHO.
ECHO Note that SED.EXE must exist in the shell path. Thus after installation
ECHO using the package installer, it is recommended that a copy of SED.EXE
ECHO be placed in the %WINDIR%\system32 directory.
ECHO.
ECHO Usage:
ECHO.
ECHO %SIMBGN% SimFile [/A]
ECHO.
ECHO ...where SimFile is specified without the .SIM extension and must exist.
ECHO If the optional /A parameter is supplied, the output will be appended to
ECHO a file named %SIMBGN%.RPT so that a 'FOR' command may collect
ECHO all %SIMBGN% reports into a single file for further processing.
ECHO.
ECHO Example:
ECHO.
ECHO FOR %%i in (*.SIM) DO %SIMBGN% "%%~ni" /A
ECHO.
ECHO CAUTION!!! The %SIMBGN%.RPT file must be deleted manually
ECHO to be refreshed, else updates will simply be appended to it.
ECHO.
ECHO Released to public domain under General Public Licence (GPL)
ECHO http://www.gnu.org/licenses/gpl.html
ECHO Copyright 2007 by Brandon Nichols, PE
ECHO.

The command script at left extracts the BEPS report from the specified .SIM file and echoes it to the screen by default.

Copy the code, paste it to a blank Notepad window. Save the file as 'BEPS.CMD' (be sure to change the drop-down in the Notepad file-save dialog from '*.txt' to 'All Files') to the eQuest reports directory, or to a designated script directory in the command path.

Assure that GNU SED.EXE may also be found in the command path -- see the installation tip under 'USAGE' in the script.

Type 'BEPS SimFile' at the CMD prompt, where SimFile is specified WITHOUT the .SIM extension.

Now for some real fun type 'BEPS' at the CMD prompt and hit return, then copy/paste the 'FOR' example displayed on the 'Usage' screen to the CMD prompt and hit return. Written to disk will be each BEPS report from all simulations in a directory into a text file named BEPS.RPT for output or further processing.

To create your own report extractor, simply change the three 'SET' values at the top of the file and save it under a new name.

For instance changing values of SIMRPT to Summary of Utility Rates,
SIMBGN to BEPU, and SIMEND to PS-H creates a BEPU extractor.


When creating a new report extractor, examine the contents of the SIM file or see this post to determine the actual report order -- its not the same as shown in the drop-down box in the SIM file viewer.

Perhaps not immediately obvious, but a 'System Report Extractor' for a report within the SIM file 'system repeat block' will extract each instance of the report for all systems! For example, copy the script above to Notepad and change the values of SIMRPT to 'System Utility Energy Use', SIMBGN to 'SS-H', and SIMEND to 'SS-I' and save to SS-H.CMD (be sure to change the drop-down in the Notepad file-save dialog from '*.txt' to 'All Files') in same directory where the SIM files are located. Thus created is an SS-H extractor that extracts all System Utility Energy Use reports for every system from the specified SIM file!.

Type 'SS-H SimFile' (without the .SIM extension) at the command line to test the output. Note that SimFile must exist in the same directory as the script and GNU SED.EXE must be in the command search path. If the above conditions have been met and your syntax is correct, then all SS-H reports will be echoed sequentially to the screen.

Now type just 'SS-H' at the command line and hit return. Then copy/paste the 'FOR' example from the usage screen to the command line and hit return. Congratulations, you have just created the text file SS-H.RPT, containing each System Utility Energy Use report for every system from all SIM files in the current directory!

eQuest SIM File Reports

Topic: A listing of the reports in the order found in the DOE2 .SIM output file


LV-M
DOE-2.2 Units Conversion Table
LV-N
Building Coordinate Geometry
LV-A
General Project Parameters

LV-B
Summary of Spaces

LV-C
Details of Space

LV-D
Details of Exterior Surfaces

LV-E
Details of Underground Surfaces

LV-F
Details of Interior Surfaces

LV-G
Details of Schedules

LV-H
Details of Windows

LV-I
Details of Constructions

LV-J
Details of Building Shades

LS-A
Space Peak Loads Summary

LS-B
Space Peak Loads Components
LS-C
Building Peak Load Components

LS-D
Building Monthly Loads Summary

LS-E
Space Monthly Load Components

LS-F
Building Monthly Load Components

LS-K
Space Input Fuels Summary

LS-K
Building Input Fuels Summary

LS-L
Management and Solar Summary

SV-A
System Design Parameters

SS-D
Building HVAC Load Summary

SS-E
Building HVAC Load Hours

SS-M
Building HVAC Fan Elec Energy

SS-A
System Loads Summary
Begin system repeat
SS-B
System Load Summary Zones
block
SS-C
System Load Hours
|
SS-H
System Utility Energy Use
|
SS-I
Sensible/Latent Summary
|
SS-J
Peak Heating and Cooling
|
SS-K
Space Temperature Summary
This group of
SS-R
Zone Performance Summary
reports is repeated
SS-L
Fan Electric Energy Use
once for each system
SS-N
Relative Humidity Summary
|
SS-P
Heating Performance Summary
|
SS-P
Cooling Performance Summary
|
SS-G
Zone Loads Summary
|
SS-F
Zone Demand Summary
End system repeat
SS-O
Space Temperature Summary
block
PV-A
Plant Design Parameters

PS-A
Plant Energy Utilization

PS-B
Utility and Fuel Use Summary

PS-C
Equipment Loads and Energy Use

PS-D
Circulation Loop Loads

PS-E
Energy End-Use Summary for all Electric Meters

PS-E
Energy End-Use Summary for all Fuel Meters

PS-F
Energy End-Use Summary for Meters

BEPS
Building Energy Performance

BEPU
Building Utility Performance

PS-H
Loads and Energy Usage for Plant

HOURLY REPORT
Hourly Report for Energy End-Usage

EV-A
Life-Cycle Costing Parameters

ES-AAnnual Costs and Savings

ES-BLife-Cycle Non-Energy Costs

ES-CLife-Cycle Investment Savings

ES-DEnergy Cost Summary
ES-ESummary of Utility Rates
ES-FBlock Charges and Ratchets

Monday, October 29, 2007

MultiEdit & Regular Expressions

Topic: Using the MultiEdit text editor and regular expressions to clean up DOE2 .inp files generated by the eQuest wizard.

MultiEdit

There are a number of adequate text editors out there -- many of them are free. My favorite text editor is not free, but IMHO MultiEdit stands a professional cut above the freeware pack. A partial list of features that makes it particularly suitable to working with DOE2 files is as follows:



  • Multiple tabbed windows, allowing rapid file switching
  • Remembered windows, from the last time the program was open
  • Multiple sessions. Most useful if you wear additional hats like 'CAD Guru' or 'Systems Integrator' -- each named session recalls a group of files in exactly the same window state as when last worked upon.
  • Split windows, permitting two different parts of the same file to be edited
  • Line numbers and a handy 'go to line number' function
  • Scrolling side-by-side on-screen file comparisons, highlighting the location and nature of differences between files
  • An undo buffer that will take you back to the beginning of an editing session, even after a massively botched search and replacement.
  • Backup files saved in a common directory on the local hard drive, off-network. This has saved many hours of rework more than once in my brief career so far with eQuest.
  • ...more features to be listed as time permits
  • And last but not least, search and replacements using 'regular expressions'
Regular Expression Examples

Regular expressions enable powerful search and replacements in a single operation that would otherwise require many operations using 'literal' search and replace strings. The syntax is necessarily cryptic for utilitarian compactness; however comprehensive free learning resources are just a google away, such as this tutorial site
.
Expect a bit of a learning curve, but once you've accomplished a search and replacement in a single line that would've taken a dozen or more literal iterations, there's no going back.

Further, regular expression syntax is applicable to scripting utilities such as Perl and SED, meaning that once your approach to search and replacements has become standardized, it can be batched and run without ever opening the input files -- when I get to this point with .inp and .sim files I'll be sure to post some examples.

First and foremost, make backup files religiously when working with eQuest in general, and in particular do not fail to do so before tackling a relatively risky editing task such as this -- it's always easier (and better for your social life) to restart from the last waypoint than to rebuild a disaster.

Schedules

REMINDER: Make sure you change the type of "Regular Expression" from Perl to Unix on the "Search and Replace" Option tab.

Following are MultiEdit search and replace strings using regular expressions applicable to DOE2 schedules; be sure to uncheck the radio button entitled 'Search All Windows' (refer to screenshot below) until you're sure you know what you're doing.


  • System Fan Schedules: Replace all auto-generated system fan schedules with a single fan schedule named 'EMS Fan Sch'
    • Search String: (")S.* Fan Sch
    • Replace String: \0EMS Fan Sch
  • System Cooling Schedules: Replace all auto-generated system cooling schedules with a single cooling schedule named 'EMS Cool Sch'
    • Search String: (")S.* Cool Sch
    • Replace String: \0EMS Cool Sch
  • System Heating Schedules: Replace all auto-generated system heating schedules with a single heating schedule named 'EMS Heat Sch'
    • Search String: (")S.* Heat Sch
    • Replace String: \0EMS Heat Sch
  • Infiltration Schedules: Replace all auto-generated perimeter infiltration schedules with a single infiltration schedule named 'EMS P-Inf Sch'
    • Search String: (")Z.* P-Inf Sch
    • Replace String: \0EMS P-Inf Sch
  • Infiltration Schedules: Replace all auto-generated core infiltration schedules with a single infiltration schedule named 'EMS C-Inf Sch'
    • Search String: (")Z.* C-Inf Sch
    • Replace String: \0EMS C-Inf Sch
  • Building Occupancy Schedules: Replace all auto-generated building occupancy schedules with a single building occupancy schedule named 'EMS Occup Sch'
    • Search String: (")E.* Bldg Occup Sch
    • Replace String: \0EMS Occup Sch
  • Building Office Equipment Schedules: Replace all auto-generated office equipment schedules with a single office equipment schedule named 'EMS OffEq Sch'
    • Search String: (")E.* Bldg OffEq Sch
    • Replace String: \0EMS OffEq Sch
  • Building Inside Lighting Schedules: Replace all auto-generated inside lighting schedules with a single inside lighting schedule named 'EMS InsLt Sch'
    • Search String: (")E.* Bldg InsLt Sch
    • Replace String: \0EMS InsLt Sch
  • Building Cooking Schedules: Replace all auto-generated cooking schedules with a single cooking schedule named 'EMS Cook Sch'
    • Search String: (")E.* Bldg Cook Sch
    • Replace String: \0EMS Cook Sch
  • Exterior Lighting Schedules (same as literal): Replace the string 'Ext Lighting Sch' with the string 'EMS Ext Lighting Sch'
    • Search String: "Ext Lighting Sch
    • Replace String: "EMS Ext Lighting Sch
  • Domestic Hot Water Schedules (same as literal): Replace the string 'DHW Eqp NRes Sch' with the string 'EMS DHW Eqp NRes Sch'
    • Search String: "DHW Eqp NRes Sch
    • Replace String: "EMS DHW Eqp NRes Sch
It should go without saying that the schedules named by the replacement strings need to exist in the .inp file -- see this post for an outline procedure to copy schedules from one project to another. Be aware that the search and replacements described above should be done only after swapping-out the .inp file's daily, weekly and annual schedule sections.

Envelope

Following are MultiEdit search and replace strings using regular expressions applicable to DOE2 envelope components; be sure to uncheck the radio button entitled 'Search All Windows' (refer to screenshot below) until you're sure you know what you're doing.



  • Exterior Walls: Replace all auto-generated exterior wall constructions with a single construction named 'Exterior Wall Construction'
    • Search String: = "E.{1,4} EWall Construction"
    • Replace String: = "Exterior Wall Construction"
  • Roofs: Replace all auto-generated roof constructions with a single construction named 'Exterior Roof Construction'
    • Search String: = "E.{1,4} Roof Construction"
    • Replace String: = "Exterior Roof Construction"
  • Windows: Replace auto-generated 'Window Type #1 GT' glass types in all shells with a single glass type named 'Exterior Glass Type #1'
    • Search String: = "E.{1,4} Window Type \#1 GT"
    • Replace String: = "Exterior Glass Type \#1"
  • Window Frames & Spacers: Eliminate frames and install insulated spacers on all 'Exterior Glass Type' permutations
    • Search String: ("Exterior Glass Type \#.*$).*FRAME-WIDTH =.*$
    • Replace String: \0$ SPACER-TYPE = INSULATED
Systems, Loops & Equipment

The following MultiEdit search and replace strings using regular expressions are applicable to DOE2 systems, loops and equipment; be sure to uncheck the radio button entitled 'Search All Windows' (refer to screenshot below) until you're sure you know what you're doing.



  • Hot Water Loop: Replace assignments to the HW-LOOP keyword with 'Hot Water Loop'; note leading space to prevent matching the DHW-LOOP keyword.
    • Search String: ( HW-LOOP *= ).*$
    • Replace String: \0"Hot Water Loop"


A very handy tool for learning regular expressions is RegExBuddy, available from the author's site for a nominal fee. MultiEdit also includes some regular expression help built into the search and replace dialog box; click the left-arrows to the right of the search and replace fields when the regular expression radio button is selected:




(click on the image to see a larger version)

Next time...regular expression fun with SED and SIM files!

Note: a reasonable set of extensions for the MultiEdit 'Add Files Wizard' is as follows:
AWK SED INP TXT DOC PD2 BDL PRD SIM CSV PDH DAT CMD DAT
Process Loads:
This is the link for the process loads Btu/(People x Hr) for different kind of building

Saturday, October 27, 2007

ASHRAE 90.1-2004 Overview

Equipment Efficiencies
Table 6.8 .1A Air Conditioners and Condensing Units (Efficiencies)
Table 6.8 .1E & F Furnaces and Boilers

Lighting Power Densities
Table 9.4 .5 Building Exteriors
Table 9.5.1 Using the Building Area Method
Table 9.6.1 Using the Space by Space Method

Appendix A

Appendix B.

(HEI intranet links above)

Monday, October 15, 2007

Heat Pump Parametrics

Topic: Calculating heat pump parametrics using DOE/ORNL's nifty online tool to justify modeling assumptions

Note that residential heat pump EER and SEER ratings are obtained from a certification test performed with the supply blower fan working against a 0.10, 0.15 or 0.20 inches of external static pressure, for 2 ton and less, 2-1/2 to 3-1/2 ton, and 4 ton and larger units respectively, per Table 2 on page 59149 of this DOE test procedure document.

One interesting thing to note is that the test tolerance is 0.05 inches of static, so a manufacturer wishing to maximize the performance rating of a given heat pump may utilize external static conditions of 0.05, 0.10 and a 0.15 respectively for the given size ranges in the test procedure.

Even more interesting (
see footnotes below) is that commercial heat pumps connected to ducts aren't allowed to count supply fan energy in their EER/COP/SEER/HSPF calculations, according to ANSI/ARI/ASHRAE ISO Standard 13256-1:1998.

Thus for most low-cfm heat pump applications, the impact of the test-condition supply fan energy can be conservatively ignored. That is, not subtracted-out from the relevant performance equation in order to calculate a new EER, SEER, COP or HSPF.

Which is not to say that supply fan energy should be ignored, only that it needs to be modeled separately
at actual design conditions. Supply fans for commercial heat pumps usually run continuously, and can easily be modeled as such in eQuest -- just be sure to select 'Indoor Fan Mode' as 'Continuous' on the 'Flow Parameters' panel of the system 'Fans' tab.


(click on the image to see a larger version)


If challenged to subtract-out supply fan energy by LEED or energy rebate reviewers, refer to ANSI/ARI/ASHRAE ISO Standard 13256-1:1998 Water-Source Heat Pumps - Testing and Rating for Performance - Part 1: Water-to-Air and Brine-to-Air Heat Pump. Minor excerpts reprinted below.

Footnotes courtesy of Xiaobing Liu:

1. The fan power included in the EER/COP calculation may not be the same as the fan actual demand when the heat pump runs. For water-source heat pumps, ANSI/ARI/ASHRAE ISO Standard 13256-1:1998 (Water-source heat pumps - testing and rating for performance - Part 1: Water-to-air and brine-to-air heat pump) states following requirements for fan power input in COP/EER calculations

4.1.2 Power input of fans for heat pumps without duct connection

In the case of heat pumps which are not designed for duct connection and which are equipped with an integral fan, all power consumed by the fans shall be included in the effective power input to the heat pump.

4.1.3 Power input of fans for heat pumps with duct connection

4.1.3.2 If a fan is an integral part of a heat pump, only the portion of the fan power required to overcome the internal resistance shall be included in the effective power input to the heat pump. The fraction which is to be excluded from the total power consumed by the fan shall be calculated using the following formula: φfa = q x Δp / η

where

φfa is the fan power adjustment, in watts;

η = 0.3 × 103 by convention;

Δp is the measured external static pressure difference, in pascals;

q is the nominal airflow rate, in litres per second.

This value shall be subtracted from the heating capacity and added to the cooling capacity.

2. The reason for this is that, in a particular heat pump installation, depending on the air flow and external static pressure of the duct work, the fan power is different, which is unknown when the heat pump is tested in the lab. So, to isolate from the unknown effect of the external duct work, only the portion of the fan power required to overcome the internal resistance shall be included in the effective power input to the heat pump if the heat pump is designed for duct connection. Therefore, the fan power in the real operating condition should be specified in the simulation to more accurately predict the fan energy consumption.

Friday, October 12, 2007

PFEC Standard Submittal Package

Topic: Standard documents and backup eQuest reports for a PFEC Submittal package.

  • Cover Letter (Word)
  • PFEC Form (Excel)
  • Monthly Energy Consumption by Enduse (eQuest Report)
  • Monthly Utility Bills -- All Rates (eQuest Report)
  • eQuest Energy Model View (screencapture via MSPaint)
Example Document (HEI intranet link)

Tuesday, October 09, 2007

eQuest Multiuse Facilities

Topic: Requirements and assumptions for modeling multiuse facilities for LEED certification.

See ASHRAE 90.1-2004 Table 5-5.4, Building Envelope Requirements for Climate Zone 4 for baseline thermal performance parameters.

The Washington State Energy Analysis Parameters spreadsheet documents energy end usage assumptions for LEED and WSEC modeling.

FUNCTIONAL AREA
WSEC
ASHRAE DESIGN
Residential
0.8
1.0

Corridor
0.8
0.5

Lobby
1.2
1.3

Retail
1.5
1.5

Club House/ Fitness1.0
0.9

Covered Parking
0.2
0.3

Exterior
0.5
0.5

Thursday, September 27, 2007

Architectural Energy Modeling Questionnaire

Topic: Standard questions to the project architect from the LEED analyst to support EA Credit energy modeling.

LEED General Information:

Note to the Analyst: The following questions may be answered by the architectural drawings, or may require the input from the architect.

  • Net usable square footage. Check for this number on the code sheet of the architectural drawings. Unless there is significant space for other tenants that is not part of the project, the gross square footage will be the same as the net square footage.
  • Number of occupants. As with square footage, check for this number on the code sheet of the architectural drawings. If not known, estimate using NFPA maximum allowable density factors by functional occupancy.
LEED Energy Modeling:

Note to the Analyst: Upon project initiation, cut-and-paste following questions to the body of an e-mail to the project engineer or architect. Include a copy of the latest LEED Scorecard (aka LEED Checklist) which you may optionally elect to complete using best available knowledge. This form may be found under 'References' in the right hand sidebar.
------------------
To: Project Engineer

Re: LEED Energy Modeling

Hello Project

Can you please answer the following questions in coordination with the architect in order to help initiate energy modeling for the above-referenced project?
  • Date of eco-charette, and copies of resulting meeting minutes or design report.
  • LEED Checklist, if one has been prepared. If one has not, please fill-out at minimum the Energy and Atmosphere portion of the attached checklist.
  • Building or project occupancy, number of persons.
  • Building or project size, square feet.
  • Percent of building or project that is new.
  • Percent of building or project that is remodel.
  • Building-only cost estimate (for ELCCA of publicly funded projects).
  • Site cost estimate (for ELCCA of publicly funded projects).
  • Owner's project manager and contact information.
  • Estimated VE date, if future.
  • Estimated bid date.
  • Do all of the anticipated wall constructions meet minimum Washington State Energy Code (WSEC) values? For example, are there any uninsulated masonry or concrete walls that may need to be compensated for elsewhere?
    • [Delete if Climate Zone 2: WSEC minimum values in Climate Zone 1 (Western Washington) are approximately R-17 for wood framed walls, R-10 for metal framed walls, and R-7 for masonry walls. ]
    • [Delete if Climate Zone 1: WSEC minimum values in Climate Zone 2 (Eastern Washington) are approximately R-17 for wood framed walls, R-12 for metal framed walls, and R-9 for masonry walls. ]
  • Do all of the anticipated roof constructions meet minimum WSEC values?
    • [Delete if Climate Zone 2: WSEC minimum values in Climate Zone 1 are approximately R-22 for most commercial and institutional roofs. ]
    • [Delete if Climate Zone 1: WSEC minimum values in Climate Zone 2 are approximately R-26 for most commercial and institutional roofs. ]
  • Please provide anticipated R- or U-values for representative wall and roof types on the project. This list does not need to be comprehensive at this time; up to four representative wall types and two representative roof types are sufficient.
  • What are the approximate areas or percentages of vertical and horizontal glazing?
  • Is the building anticipated to have greater than 30% glazing?
    • Additional WSEC requirements are listed for buildings with greater than 30% glazing.
  • Will all of the anticipated glazing assemblies meet minimum WSEC values?
    • In both climate zones, most vertical glazing (windows & doors) are required to have a maximum 0.55 U-value and 0.45 maximum Solar Heat Gain Coefficient (SHGC).
    • Most horizontal glazing (skylights) are required to have a maximum 0.70 U-value and 0.40 maximum SHGC.
    • Opaque doors are required by the WSEC to have an R-value of approximately 2 (U-0.60 maximum) in both climate zones. Please advise if doors are not anticipated to meet these requirements.
  • Please provide anticipated U- and SHGC coefficients for representative glazing types on the project. This list does not need to be comprehensive at this time; four to six representative glazing types are sufficient.
  • Will 10% or more of the building be heated via electric resistance?
    • Additional WSEC requirements are listed for buildings heated via electric resistance.

Thursday, September 20, 2007

Unique Equipment in Closed ELCCA Projects

Topic: Listed here is a non-comprehensive list of relatively unique equipment, to assist in locating information for new reports.

06111 Shorewood Elementary, Alternative #1

  • Air Cooled Chiller
  • Medium FPVAV Units
  • Small FPVAV Units
06114 Hamilton International Middle School, Alternative #2
  • Fluid Cooler
Note: Update this post to ELCCA Completion Log

Monday, September 17, 2007

Psychrometric Calculator

Topic: Handy psychrometric state calculator.

This psychrometric state calculator is courtesy of Linric Co., publisher of psychrometric process software.

See Wikipedia for a refresher on basic psychrometrics.

Wednesday, September 12, 2007

Present Value Calculator

Topic: Handy annuity calculator for doing back-of-the-envelope design...

Present & Future Value Calculator

PVoa = PMT [(1 - (1 / (1 + i)^n)) / i]

Where:

PVoa = Present Value of an Ordinary Annuity
PMT = Amount of each payment
i = Discount Rate Per Period
n = Number of Periods

Annuity calculations are explained with intuitive graphics at this Investopedia link.

Let's say your energy efficiency measure is projected to save $7,000 per year. About how much should we be willing to spend to obtain this savings?

Projecting lifecycle of 20 years and a conservative 5% rate of return, the present value of $7,000 is calculated using the 'Present Amount of an Ordinary Annuity' calculator, at the lower left of the page link above. Plugging $7,000 into the 'Payment Amount' field, 5% into the 'Interest Rate' field, and 20 years into the 'Number of Payments' field results in about $87,200 of net present value. For a new project, this amount may be a justifiable first-cost premium to realize the savings, all other factors equal.

However many companies have a much shorter time frame for justifying capital improvements, and/or may value their cost of capital more highly than 5% -- note that here a higher interest rate reduces the net present value.

For comparison,

  • What is the present value of 20 years worth of $7k savings at a 7% rate of return?
    Answer = $74,200, about $13,000 less than at a 5% return rate.
  • What is the present value of 7 years worth of $7k savings at a 6.5% rate of return?
    Answer = $38,400, a bit more than half of the previous
  • Above answers are rounded to the nearest hundred dollars.
Thanks to the University of Illinois at Chicago

Tuesday, September 11, 2007

Schedule Sharing

Topic: How to copy eQuest schedules from one project to another.

First, if you have the target file open in eQuest, save it. Now open the source .inp file in a text editor (e.g. Notepad, personally I recommend MultiEdit) and search for the "Day Schedules" header. Copy (Ctrl-C) everything from here to the last "Annual Schedules" .. terminator, just before the "Polygons" header (see code window below for example).

Open the target .inp file in a text editor and do a 'Save As' to [filename].sav, then another 'Save As' back to [filename].inp to create a backup file. Now search for "Day Schedules" in the target file and highlight the same sections as copied from the source file. Press Ctrl-V and the target file schedules will be replaced with the source file versions. Save the target file with the text editor.

Now open the target file in eQuest and check for errors; if the target file is open in eQuest, be sure to reopen it without saving. Provided the source and target file have the same schedule names, all should be well. If not, you'll need to update the target file with the new schedule names wherever they are used. Restore the .sav file if the error reconciliation process fails.

When the schedule group is something that can be used over multiple projects, open a new instance of the text editor, paste the code again and 'Save As' to a .inp filename in your eQuest projects directory.

Have found that its not so good to import this file initially as all of the default schedules remain. If simplification and cleanup is your objective, better to cut-and-paste as described above the first time through. Then see this post to search and replace instances of auto-generated schedules with the new schedules using regular expressions. Subsequent specialized schedules (e.g. gymnasium, cafeteria etc.) may then be imported.

Elementary School-Middle School Schedules
Disclaimer: All code examples provided 'as-is'; no warranties or support options either expressed or implied!


Be sure to highlight everything from "Day Schedules" to "Polygons", the press Ctrl-C to copy the new schedule code to the clipboard. Highlight the same block of code between "Day Schedules" and "Polygons" in the target .inp file and press Ctrl-V to replace the auto-generated schedules.

When the new schedule code is first pasted into the .inp file, it will have lost its spacing format. Never fear, eQuest will reformat it when it is next saved. If you have the project .inp file open eQuest, don't forget to reopen it, or you will lose your changes.




$ ---------------------------------------------------------
$ Day Schedules
$ ---------------------------------------------------------

"EMS Occup S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Occup S2 Mon" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, 0.0011, 0.0236, 0.2013, 0.6973, 0.8816,
0.8944, 0.8554, 0.7941, 0.7847, 0.7941, 0.8001, 0.7555, 0.4867,
0.2331, 0.1974, 0.2726, 0.2664, 0.1398, 0.0243, 0.0009 )
..
"EMS Occup S2 Tue" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.801, &D, &D, 0.7277, 0.3201, 0.0591, 0.2001, 0.6973,
0.8816, 0.8944, 0.8554, 0.7941, 0.7833, 0.7854, 0.7878, 0.7902,
0.7926, 0.795, 0.7974, 0.7996, 0.8008, 0.801 )
..
"EMS Occup S2 Wed" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, 0.0011, 0.0236, 0.2013, 0.6973, 0.8816,
0.8944, 0.8554, 0.7941, 0.7847, 0.7941, 0.8001, 0.7555, 0.4867,
0.2331, 0.1974, 0.2726, 0.2664, 0.1398, 0.0243, 0.0009 )
..
"EMS Occup S2 Thu" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, 0.0011, 0.0236, 0.2013, 0.6973, 0.8816,
0.8944, 0.8554, 0.7941, 0.7847, 0.7941, 0.8001, 0.7555, 0.4867,
0.2331, 0.1974, 0.2726, 0.2664, 0.1398, 0.0243, 0.0009 )
..
"EMS Occup S2 Fri" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, 0.0011, 0.0236, 0.2013, 0.6973, 0.8816,
0.8944, 0.8554, 0.7941, 0.7847, 0.7941, 0.8001, 0.7555, 0.4867,
0.2331, 0.1974, 0.2726, 0.2664, 0.1398, 0.0243, 0.0009 )
..
"EMS Occup S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Occup S2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Occup S2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.801, &D, &D, 0.7277, 0.3201, 0.0591, 0.2001, 0.6973,
0.8816, 0.8944, 0.8554, 0.7941, 0.7833, 0.7854, 0.7878, 0.7902,
0.7926, 0.795, 0.7974, 0.7996, 0.8008, 0.801 )
..
"EMS Occup S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, 0.0002, 0.0025, 0.013, 0.0337,
0.0437, 0.0422, 0.0309, 0.0422, 0.045, 0.044, 0.0367, 0.0229,
0.0108, 0.0056, 0.0049, 0.0048, 0.0037, 0.0006, 0 )
..
"EMS Occup S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Occup S3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Occup S3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, 0.0002, 0.0025, 0.013, 0.0337,
0.0437, 0.0422, 0.0309, 0.0422, 0.045, 0.044, 0.0367, 0.0229,
0.0108, 0.0056, 0.0049, 0.0048, 0.0037, 0.0006, 0 )
..
"EMS InsLt S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, &D, 0.0512, 0.0535, 0.054, &D,
&D, &D, &D, &D, &D, &D, 0.0535, 0.0521, 0.0512, &D, 0.0502, &D,
0.05 )
..
"EMS InsLt S2 Mon" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0512, 0.0896, 0.3164, 0.6941,
0.8764, 0.9, &D, &D, &D, &D, 0.8933, 0.8399, 0.7047, 0.549, 0.5673,
0.6606, 0.632, 0.3748, 0.1097, 0.0526 )
..
"EMS InsLt S2 Tue" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.8532, 0.8182, 0.7831, 0.7481, 0.6245, 0.1843,
0.3164, 0.6941, 0.8764, 0.9, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D,
&D, &D, 0.8983, 0.885 )
..
"EMS InsLt S2 Wed" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0512, 0.0896, 0.3164, 0.6941,
0.8764, 0.9, &D, &D, &D, &D, 0.8933, 0.8399, 0.7047, 0.549, 0.5673,
0.6606, 0.632, 0.3748, 0.1097, 0.0526 )
..
"EMS InsLt S2 Thu" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0512, 0.0896, 0.3164, 0.6941,
0.8764, 0.9, &D, &D, &D, &D, 0.8933, 0.8399, 0.7047, 0.549, 0.5673,
0.6606, 0.632, 0.3748, 0.1097, 0.0526 )
..
"EMS InsLt S2 Fri" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0512, 0.0896, 0.3164, 0.6941,
0.8764, 0.9, &D, &D, &D, &D, 0.8933, 0.8399, 0.7047, 0.549, 0.5673,
0.6606, 0.632, 0.3748, 0.1097, 0.0526 )
..
"EMS InsLt S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, &D, 0.0512, 0.0535, 0.054, &D,
&D, &D, &D, &D, &D, &D, 0.0535, 0.0521, 0.0512, &D, 0.0502, &D,
0.05 )
..
"EMS InsLt S2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS InsLt S2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.8532, 0.8182, 0.7831, 0.7481, 0.6245, 0.1843,
0.3164, 0.6941, 0.8764, 0.9, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D,
&D, &D, 0.8983, 0.885 )
..
"EMS InsLt S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.0504, 0.054, 0.0666, 0.0853,
0.0923, 0.093, &D, &D, &D, 0.0924, 0.0879, 0.0776, 0.0677, 0.0626,
0.0585, 0.0534, 0.0519, 0.0503, 0.05 )
..
"EMS InsLt S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, &D, 0.0512, 0.0535, 0.054, &D,
&D, &D, &D, &D, &D, &D, 0.0535, 0.0521, 0.0512, &D, 0.0502, &D,
0.05 )
..
"EMS InsLt S3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS InsLt S3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.0504, 0.054, 0.0666, 0.0853,
0.0923, 0.093, &D, &D, &D, 0.0924, 0.0879, 0.0776, 0.0677, 0.0626,
0.0585, 0.0534, 0.0519, 0.0503, 0.05 )
..
"EMS OffEq S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05 )
..
"EMS OffEq S2 Mon" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0595, 0.1758, 0.5652, 0.8244,
0.8977, 0.8899, 0.7845, 0.6188, 0.6172, 0.7739, 0.8737, 0.8753,
0.7737, 0.529, 0.2835, 0.1963, 0.1819, 0.1437, 0.0691, 0.0509 )
..
"EMS OffEq S2 Tue" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.8879, &D, &D, 0.7877, 0.2674, 0.1477, 0.5557,
0.8244, 0.8977, 0.8899, 0.7845, 0.6188, 0.5943, 0.6285, 0.6684,
0.7084, 0.7482, 0.7882, 0.828, 0.8651, 0.8851, 0.8879 )
..
"EMS OffEq S2 Wed" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0595, 0.1758, 0.5652, 0.8244,
0.8977, 0.8899, 0.7845, 0.6188, 0.6172, 0.7739, 0.8737, 0.8753,
0.7737, 0.529, 0.2835, 0.1963, 0.1819, 0.1437, 0.0691, 0.0509 )
..
"EMS OffEq S2 Thu" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0595, 0.1758, 0.5652, 0.8244,
0.8977, 0.8899, 0.7845, 0.6188, 0.6172, 0.7739, 0.8737, 0.8753,
0.7737, 0.529, 0.2835, 0.1963, 0.1819, 0.1437, 0.0691, 0.0509 )
..
"EMS OffEq S2 Fri" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, 0.0595, 0.1758, 0.5652, 0.8244,
0.8977, 0.8899, 0.7845, 0.6188, 0.6172, 0.7739, 0.8737, 0.8753,
0.7737, 0.529, 0.2835, 0.1963, 0.1819, 0.1437, 0.0691, 0.0509 )
..
"EMS OffEq S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05 )
..
"EMS OffEq S2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS OffEq S2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.8879, &D, &D, 0.7877, 0.2674, 0.1477, 0.5557,
0.8244, 0.8977, 0.8899, 0.7845, 0.6188, 0.5943, 0.6285, 0.6684,
0.7084, 0.7482, 0.7882, 0.828, 0.8651, 0.8851, 0.8879 )
..
"EMS OffEq S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.0507, 0.0585, 0.0933, 0.1623,
0.1957, 0.1906, 0.1529, 0.1906, 0.2, 0.1966, 0.1725, 0.1264, 0.0861,
0.0687, 0.0665, 0.0662, 0.0625, 0.052, 0.05 )
..
"EMS OffEq S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05 )
..
"EMS OffEq S3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS OffEq S3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.0507, 0.0585, 0.0933, 0.1623,
0.1957, 0.1906, 0.1529, 0.1906, 0.2, 0.1966, 0.1725, 0.1264, 0.0861,
0.0687, 0.0665, 0.0662, 0.0625, 0.052, 0.05 )
..
"EMS Cook S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0011, &D, 0.0005, &D, 0.0016,
0.0032, 0.004, 0.0024, 0.0011, 0.0005, &D, &D, &D, 0.0003, 0 )
..
"EMS Cook S2 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0079, &D, 0.0553, 0.1501,
0.5846, 0.79, 0.7031, 0.3081, 0.0553, 0.0079, &D, &D, &D, 0 )
..
"EMS Cook S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0011, &D, 0.0005, &D, 0.0016,
0.0032, 0.004, 0.0024, 0.0011, 0.0005, &D, &D, &D, 0.0003, 0 )
..
"EMS Cook S2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Cook S2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0079, &D, 0.0553, 0.1501,
0.5846, 0.79, 0.7031, 0.3081, 0.0553, 0.0079, &D, &D, &D, 0 )
..
"EMS Cook S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0103, &D, 0.0049, &D, 0.0152,
0.0304, 0.038, 0.0228, 0.0103, 0.0049, &D, &D, &D, 0.0027, 0 )
..
"EMS Cook S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0011, &D, 0.0005, &D, 0.0016,
0.0032, 0.004, 0.0024, 0.0011, 0.0005, &D, &D, &D, 0.0003, 0 )
..
"EMS Cook S3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Cook S3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0103, &D, 0.0049, &D, 0.0152,
0.0304, 0.038, 0.0228, 0.0103, 0.0049, &D, &D, &D, 0.0027, 0 )
..
"EMS Ext Light W1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, &D, &D, 0.3, 0.1, 0, &D, &D, &D,
&D, &D, 0.1, 0.55, 0.9, &D, &D, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W2 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.15, 0, &D, &D, &D, &D,
&D, &D, &D, &D, &D, 0.25, 0.7, 0.9, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W3 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.15, 0, &D, &D, &D, &D,
&D, &D, &D, &D, &D, 0.25, 0.7, 0.9, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W4 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.15, 0, &D, &D, &D, &D,
&D, &D, &D, &D, &D, 0.25, 0.7, 0.9, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W5 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, 0.3, 0, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, &D, &D, &D, 0.25, 0.8, &D, 0.7 )
..
"EMS Ext Light W6 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, 0.3, 0, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, &D, &D, &D, 0.25, 0.8, &D, 0.7 )
..
"EMS Ext Light W7 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, 0.3, 0, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, &D, &D, &D, 0.25, 0.8, &D, 0.7 )
..
"EMS Ext Light W8 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.25, 0, &D, &D, &D, &D,
&D, &D, &D, &D, 0.1, 0.5, 0.9, &D, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W9 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.25, 0, &D, &D, &D, &D,
&D, &D, &D, &D, 0.1, 0.5, 0.9, &D, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W10 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, 0.45, 0.25, 0, &D, &D, &D, &D,
&D, &D, &D, &D, 0.1, 0.5, 0.9, &D, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W11 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, &D, &D, 0.3, 0.1, 0, &D, &D, &D,
&D, &D, 0.1, 0.55, 0.9, &D, &D, &D, &D, 0.8, 0.7 )
..
"EMS Ext Light W12 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.6, &D, &D, &D, &D, &D, &D, 0.3, 0.1, 0, &D, &D, &D,
&D, &D, 0.1, 0.55, 0.9, &D, &D, &D, &D, 0.8, 0.7 )
..
"EMS DHW Eqp W1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.03 )
..
"EMS DHW Eqp W2 Mon" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.1052, 0.3902, 0.5239, 0.7206,
0.8755, 0.9, &D, &D, &D, 0.8927, 0.8344, 0.6653, 0.4051, 0.4758,
0.4826, 0.3546, 0.1371, 0.0581, 0.05 )
..
"EMS DHW Eqp W2 Tue" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.1242, 0.1207, 0.1171, 0.1136, 0.1019, 0.1137,
0.3902, 0.5239, 0.7206, 0.8755, 0.9, &D, &D, &D, 0.8934, 0.8405,
0.6871, 0.4511, 0.5152, 0.5213, 0.4053, 0.2079, 0.1362, 0.1274 )
..
"EMS DHW Eqp W2 Wed" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.1052, 0.3902, 0.5239, 0.7206,
0.8755, 0.9, &D, &D, &D, 0.8927, 0.8344, 0.6653, 0.4051, 0.4758,
0.4826, 0.3546, 0.1371, 0.0581, 0.05 )
..
"EMS DHW Eqp W2 Thu" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.1052, 0.3902, 0.5239, 0.7206,
0.8755, 0.9, &D, &D, &D, 0.8927, 0.8344, 0.6653, 0.4051, 0.4758,
0.4826, 0.3546, 0.1371, 0.0581, 0.05 )
..
"EMS DHW Eqp W2 Fri" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.05, &D, &D, &D, &D, 0.1052, 0.3902, 0.5239, 0.7206,
0.8755, 0.9, &D, &D, &D, 0.8927, 0.8344, 0.6653, 0.4051, 0.4758,
0.4826, 0.3546, 0.1371, 0.0581, 0.05 )
..
"EMS DHW Eqp W2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.03 )
..
"EMS DHW Eqp W2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS DHW Eqp W2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.1242, 0.1207, 0.1171, 0.1136, 0.1019, 0.1137,
0.3902, 0.5239, 0.7206, 0.8755, 0.9, &D, &D, &D, 0.8934, 0.8405,
0.6871, 0.4511, 0.5152, 0.5213, 0.4053, 0.2079, 0.1362, 0.1274 )
..
"EMS DHW Eqp W3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.03 )
..
"EMS DHW Eqp W3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.03 )
..
"EMS DHW Eqp W3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS DHW Eqp W3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0.03 )
..
"EMS Fan Day All Break" = DAY-SCHEDULE-PD
TYPE = ON/OFF/FLAG
VALUES = ( 0 )
..
"EMS Fan Day WD Session" = DAY-SCHEDULE-PD
TYPE = ON/OFF/FLAG
VALUES = ( 0, &D, &D, &D, &D, &D, 1, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, 0 )
..
"EMS Fan Day WEH Session" = DAY-SCHEDULE-PD
TYPE = ON/OFF/FLAG
VALUES = ( 0 )
..
"EMS Fan Day WD Summer" = DAY-SCHEDULE-PD
TYPE = ON/OFF/FLAG
VALUES = ( 0, &D, &D, &D, &D, &D, &D, &D, 1, &D, &D, &D, &D, &D,
&D, 0 )
..
"EMS Fan Day WEH Summer" = DAY-SCHEDULE-PD
TYPE = ON/OFF/FLAG
VALUES = ( 0 )
..
"EMS Sys Cool S1 All" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 82 )
..
"EMS Sys Cool S2 WD" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 82, &D, &D, &D, &D, &D, 76, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, 82 )
..
"EMS Sys Cool S2 WEH" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 82 )
..
"EMS Sys Cool S3 WD" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 82, &D, &D, &D, &D, &D, &D, &D, 76, &D, &D, &D, &D,
&D, &D, 82 )
..
"EMS Sys Cool S3 WEH" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 82 )
..
"EMS Sys Heat S1 All" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 64 )
..
"EMS Sys Heat S2 WD" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 64, &D, &D, &D, &D, &D, 70, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, 64 )
..
"EMS Sys Heat S2 WEH" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 64 )
..
"EMS Sys Heat S3 WD" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 64, &D, &D, &D, &D, &D, &D, &D, 70, &D, &D, &D, &D,
&D, &D, 64 )
..
"EMS Sys Heat S3 WEH" = DAY-SCHEDULE-PD
TYPE = TEMPERATURE
VALUES = ( 64 )
..
"EMS Gym Occup S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Gym Occup S2 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.009, 0.12, 0.12, &D, &D, 0.9,
&D, 0.12, &D, 0.12, 0.009, 0.009, 0.009, &D, &D, 0.009, 0 )
..
"EMS Gym Occup S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Gym Occup S2 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Gym Occup S2 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.009, 0.12, 0.12, &D, &D, 0.9,
&D, 0.12, &D, 0.12, 0.009, 0.009, 0.009, &D, &D, 0.009, 0 )
..
"EMS Gym Occup S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, &D, &D, &D, &D, &D, 0 )
..
"EMS Gym Occup S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, &D, 0.0005, 0.0039, 0.005, &D, &D,
0.0028, &D, 0.005, &D, &D, 0.0039, 0.0016, 0.0005, &D, &D, &D, 0 )
..
"EMS Gym Occup S3 HDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0 )
..
"EMS Gym Occup S3 CDD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 0, &D, &D, &D, &D, 0.0002, 0.0025, 0.013, 0.0337,
0.0437, 0.0422, 0.0309, 0.0422, 0.045, 0.044, 0.0367, 0.0229,
0.0108, 0.0056, 0.0049, 0.0048, 0.0037, 0.0006, 0 )
..
"EMS On-Off Day All Break" = DAY-SCHEDULE-PD
TYPE = ON/OFF
VALUES = ( 0 )
..
"EMS On-Off Day WD Session" = DAY-SCHEDULE-PD
TYPE = ON/OFF
VALUES = ( 0, &D, &D, &D, &D, &D, 1, &D, &D, &D, &D, &D, &D, &D,
&D, &D, &D, 0 )
..
"EMS On-Off Day WEH Session" = DAY-SCHEDULE-PD
TYPE = ON/OFF
VALUES = ( 0 )
..
"EMS On-Off Day WD Summer" = DAY-SCHEDULE-PD
TYPE = ON/OFF
VALUES = ( 0, &D, &D, &D, &D, &D, &D, &D, 1, &D, &D, &D, &D, &D,
&D, 0 )
..
"EMS On-Off Day WEH Summer" = DAY-SCHEDULE-PD
TYPE = ON/OFF
VALUES = ( 0 )
..
"EMS P-Inf S1 All" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1 )
..
"EMS P-Inf S2 Mon" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, 1.1501, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5621, 0.5, &D, &D, 1.25, &D, 1.2393, 1.0252, &D, 1.0828,
1.1921, 1.0889, 1 )
..
"EMS P-Inf S2 Tue" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, 1.0233, 1.25, &D, 1.211, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5663, 0.5, &D, &D, &D, &D, 1 )
..
"EMS P-Inf S2 Wed" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, 1.1501, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5621, 0.5, &D, &D, 1.25, &D, 1.2393, 1.0252, &D, 1.0828,
1.1921, 1.0889, 1 )
..
"EMS P-Inf S2 Thu" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, 1.1501, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5621, 0.5, &D, &D, 1.25, &D, 1.2393, 1.0252, &D, 1.0828,
1.1921, 1.0889, 1 )
..
"EMS P-Inf S2 Fri" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, 1.1501, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5621, 0.5, &D, &D, 1.25, &D, 1.2393, 1.0252, &D, 1.0828,
1.1921, 1.0889, 1 )
..
"EMS P-Inf S2 WEH" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1 )
..
"EMS P-Inf S2 HDD" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, &D, 0.5, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, 1 )
..
"EMS P-Inf S2 CDD" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, 1.0233, 1.25, &D, 1.211, 1.25, &D, 0.9414, 0.5,
0.6509, 0.5663, 0.5, &D, &D, &D, &D, 1 )
..
"EMS P-Inf S3 WD" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1, &D, &D, &D, &D, &D, &D, &D, 0.5, &D, &D, &D, &D,
&D, &D, 1 )
..
"EMS P-Inf S3 WEH" = DAY-SCHEDULE-PD
TYPE = MULTIPLIER
VALUES = ( 1 )
..
"EMS C-Inf S1 All" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 1 )
..
"EMS C-Inf S2 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 1, &D, &D, &D, &D, &D, 0.5, &D, &D, &D, &D, &D, &D,
&D, &D, &D, &D, 1 )
..
"EMS C-Inf S2 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 1 )
..
"EMS C-Inf S3 WD" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 1, &D, &D, &D, &D, &D, &D, &D, 0.5, &D, &D, &D, &D,
&D, &D, 1 )
..
"EMS C-Inf S3 WEH" = DAY-SCHEDULE-PD
TYPE = FRACTION
VALUES = ( 1 )
..

$ ---------------------------------------------------------
$ Week Schedules
$ ---------------------------------------------------------

"EMS Occup S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Occup S1 All" )
..
"EMS Occup S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Occup S2 Mon", "EMS Occup S2 Tue",
"EMS Occup S2 Wed", "EMS Occup S2 Thu",
"EMS Occup S2 Fri", "EMS Occup S2 WEH", &D, &D,
"EMS Occup S2 HDD", "EMS Occup S2 CDD" )
..
"EMS Occup S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Occup S3 WD", &D, &D, &D, &D,
"EMS Occup S3 WEH", &D, &D, "EMS Occup S3 HDD",
"EMS Occup S3 CDD" )
..
"EMS InsLt S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS InsLt S1 All" )
..
"EMS InsLt S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS InsLt S2 Mon", "EMS InsLt S2 Tue",
"EMS InsLt S2 Wed", "EMS InsLt S2 Thu",
"EMS InsLt S2 Fri", "EMS InsLt S2 WEH", &D, &D,
"EMS InsLt S2 HDD", "EMS InsLt S2 CDD" )
..
"EMS InsLt S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS InsLt S3 WD", &D, &D, &D, &D,
"EMS InsLt S3 WEH", &D, &D, "EMS InsLt S3 HDD",
"EMS InsLt S3 CDD" )
..
"EMS OffEq S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS OffEq S1 All" )
..
"EMS OffEq S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS OffEq S2 Mon", "EMS OffEq S2 Tue",
"EMS OffEq S2 Wed", "EMS OffEq S2 Thu",
"EMS OffEq S2 Fri", "EMS OffEq S2 WEH", &D, &D,
"EMS OffEq S2 HDD", "EMS OffEq S2 CDD" )
..
"EMS OffEq S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS OffEq S3 WD", &D, &D, &D, &D,
"EMS OffEq S3 WEH", &D, &D, "EMS OffEq S3 HDD",
"EMS OffEq S3 CDD" )
..
"EMS Cook S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Cook S1 All" )
..
"EMS Cook S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Cook S2 WD", &D, &D, &D, &D,
"EMS Cook S2 WEH", &D, &D, "EMS Cook S2 HDD",
"EMS Cook S2 CDD" )
..
"EMS Cook S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Cook S3 WD", &D, &D, &D, &D,
"EMS Cook S3 WEH", &D, &D, "EMS Cook S3 HDD",
"EMS Cook S3 CDD" )
..
"EMS Ext Light Wk1" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W1 All" )
..
"EMS Ext Light Wk2" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W2 All" )
..
"EMS Ext Light Wk3" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W3 All" )
..
"EMS Ext Light Wk4" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W4 All" )
..
"EMS Ext Light Wk5" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W5 All" )
..
"EMS Ext Light Wk6" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W6 All" )
..
"EMS Ext Light Wk7" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W7 All" )
..
"EMS Ext Light Wk8" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W8 All" )
..
"EMS Ext Light Wk9" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W9 All" )
..
"EMS Ext Light Wk10" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W10 All" )
..
"EMS Ext Light Wk11" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W11 All" )
..
"EMS Ext Light Wk12" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Ext Light W12 All" )
..
"EMS DHW Eqp Wk1" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS DHW Eqp W1 All" )
..
"EMS DHW Eqp Wk2" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS DHW Eqp W2 Mon", "EMS DHW Eqp W2 Tue",
"EMS DHW Eqp W2 Wed", "EMS DHW Eqp W2 Thu",
"EMS DHW Eqp W2 Fri", "EMS DHW Eqp W2 WEH", &D, &D,
"EMS DHW Eqp W2 HDD", "EMS DHW Eqp W2 CDD" )
..
"EMS DHW Eqp Wk3" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS DHW Eqp W3 WD", &D, &D, &D, &D,
"EMS DHW Eqp W3 WEH", &D, &D, "EMS DHW Eqp W3 HDD",
"EMS DHW Eqp W3 CDD" )
..
"EMS Fan Wk Break" = WEEK-SCHEDULE-PD
TYPE = ON/OFF/FLAG
DAY-SCHEDULES = ( "EMS Fan Day All Break" )
..
"EMS Fan Wk Session" = WEEK-SCHEDULE-PD
TYPE = ON/OFF/FLAG
DAY-SCHEDULES = ( "EMS Fan Day WD Session", &D, &D, &D, &D,
"EMS Fan Day WEH Session" )
..
"EMS Fan Wk Summer" = WEEK-SCHEDULE-PD
TYPE = ON/OFF/FLAG
DAY-SCHEDULES = ( "EMS Fan Day WD Summer", &D, &D, &D, &D,
"EMS Fan Day WEH Summer" )
..
"EMS Cool Wk Break" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Cool S1 All" )
..
"EMS Cool Wk Session" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Cool S2 WD", &D, &D, &D, &D,
"EMS Sys Cool S2 WEH" )
..
"EMS Cool Wk Summer" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Cool S3 WD", &D, &D, &D, &D,
"EMS Sys Cool S3 WEH" )
..
"EMS Heat Wk Break" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Heat S1 All" )
..
"EMS Heat Wk Session" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Heat S2 WD", &D, &D, &D, &D,
"EMS Sys Heat S2 WEH" )
..
"EMS Heat Wk Summer" = WEEK-SCHEDULE-PD
TYPE = TEMPERATURE
DAY-SCHEDULES = ( "EMS Sys Heat S3 WD", &D, &D, &D, &D,
"EMS Sys Heat S3 WEH" )
..
"EMS Gym Occup S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Gym Occup S1 All" )
..
"EMS Gym Occup S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Gym Occup S2 WD", &D, &D, &D, &D,
"EMS Gym Occup S2 WEH", &D, &D, "EMS Gym Occup S2 HDD",
"EMS Gym Occup S2 CDD" )
..
"EMS Gym Occup S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS Gym Occup S3 WD", &D, &D, &D, &D,
"EMS Gym Occup S3 WEH", &D, &D, "EMS Gym Occup S3 HDD",
"EMS Gym Occup S3 CDD" )
..
"EMS On-Off Wk Break" = WEEK-SCHEDULE-PD
TYPE = ON/OFF
DAY-SCHEDULES = ( "EMS On-Off Day All Break" )
..
"EMS On-Off Wk Session" = WEEK-SCHEDULE-PD
TYPE = ON/OFF
DAY-SCHEDULES = ( "EMS On-Off Day WD Session", &D, &D, &D, &D,
"EMS On-Off Day WEH Session" )
..
"EMS On-Off Wk Summer" = WEEK-SCHEDULE-PD
TYPE = ON/OFF
DAY-SCHEDULES = ( "EMS On-Off Day WD Summer", &D, &D, &D, &D,
"EMS On-Off Day WEH Summer" )
..
"EMS P-Inf S1 Wk" = WEEK-SCHEDULE-PD
TYPE = MULTIPLIER
DAY-SCHEDULES = ( "EMS P-Inf S1 All" )
..
"EMS P-Inf S2 Wk" = WEEK-SCHEDULE-PD
TYPE = MULTIPLIER
DAY-SCHEDULES = ( "EMS P-Inf S2 Mon", "EMS P-Inf S2 Tue",
"EMS P-Inf S2 Wed", "EMS P-Inf S2 Thu", "EMS P-Inf S2 Fri",
"EMS P-Inf S2 WEH", &D, &D, "EMS P-Inf S2 HDD", "EMS P-Inf S2 CDD" )
..
"EMS P-Inf S3 Wk" = WEEK-SCHEDULE-PD
TYPE = MULTIPLIER
DAY-SCHEDULES = ( "EMS P-Inf S3 WD", &D, &D, &D, &D, "EMS P-Inf S3 WEH" )
..
"EMS C-Inf S1 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS C-Inf S1 All" )
..
"EMS C-Inf S2 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS C-Inf S2 WD", &D, &D, &D, &D, "EMS C-Inf S2 WEH" )
..
"EMS C-Inf S3 Wk" = WEEK-SCHEDULE-PD
TYPE = FRACTION
DAY-SCHEDULES = ( "EMS C-Inf S3 WD", &D, &D, &D, &D, "EMS C-Inf S3 WEH" )
..

$ ---------------------------------------------------------
$ Annual Schedules
$ ---------------------------------------------------------

"EMS Occup Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS Occup S1 Wk", "EMS Occup S2 Wk",
"EMS Occup S3 Wk", "EMS Occup S2 Wk",
"EMS Occup S1 Wk" )
..
"EMS InsLt Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS InsLt S1 Wk", "EMS InsLt S2 Wk",
"EMS InsLt S3 Wk", "EMS InsLt S2 Wk",
"EMS InsLt S1 Wk" )
..
"EMS OffEq Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS OffEq S1 Wk", "EMS OffEq S2 Wk",
"EMS OffEq S3 Wk", "EMS OffEq S2 Wk",
"EMS OffEq S1 Wk" )
..
"EMS Cook Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS Cook S1 Wk", "EMS Cook S2 Wk",
"EMS Cook S3 Wk", "EMS Cook S2 Wk", "EMS Cook S1 Wk" )
..
"EMS Ext Lighting Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 )
DAY = ( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 )
WEEK-SCHEDULES = ( "EMS Ext Light Wk1", "EMS Ext Light Wk2",
"EMS Ext Light Wk3", "EMS Ext Light Wk4",
"EMS Ext Light Wk5", "EMS Ext Light Wk6",
"EMS Ext Light Wk7", "EMS Ext Light Wk8",
"EMS Ext Light Wk9", "EMS Ext Light Wk10",
"EMS Ext Light Wk11", "EMS Ext Light Wk12" )
..
"EMS DHW Eqp NRes Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS DHW Eqp Wk1", "EMS DHW Eqp Wk2",
"EMS DHW Eqp Wk3", "EMS DHW Eqp Wk2",
"EMS DHW Eqp Wk1" )
..
"EMS Fan Sch" = SCHEDULE-PD
TYPE = ON/OFF/FLAG
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS Fan Wk Break", "EMS Fan Wk Session",
"EMS Fan Wk Summer", "EMS Fan Wk Session",
"EMS Fan Wk Break" )
..
"EMS Cool Sch" = SCHEDULE-PD
TYPE = TEMPERATURE
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS Cool Wk Break",
"EMS Cool Wk Session", "EMS Cool Wk Summer",
"EMS Cool Wk Session", "EMS Cool Wk Break" )
..
"EMS Heat Sch" = SCHEDULE-PD
TYPE = TEMPERATURE
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS Heat Wk Break",
"EMS Heat Wk Session", "EMS Heat Wk Summer",
"EMS Heat Wk Session", "EMS Heat Wk Break" )
..
"EMS Gym Occup Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 7, 21, 26, 14, 31 )
WEEK-SCHEDULES = ( "EMS Gym Occup S1 Wk",
"EMS Gym Occup S2 Wk", "EMS Gym Occup S3 Wk",
"EMS Gym Occup S2 Wk", "EMS Gym Occup S1 Wk" )
..
"EMS Exhaust Fan Sch" = SCHEDULE-PD
TYPE = ON/OFF
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS On-Off Wk Break", "EMS On-Off Wk Session",
"EMS On-Off Wk Summer", "EMS On-Off Wk Session",
"EMS On-Off Wk Break" )
..
"EMS P-Inf Sch" = SCHEDULE-PD
TYPE = MULTIPLIER
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS P-Inf S1 Wk", "EMS P-Inf S2 Wk",
"EMS P-Inf S3 Wk", "EMS P-Inf S2 Wk", "EMS P-Inf S1 Wk" )
..
"EMS C-Inf Sch" = SCHEDULE-PD
TYPE = FRACTION
MONTH = ( 1, 6, 8, 12, 12 )
DAY = ( 6, 22, 28, 21, 31 )
WEEK-SCHEDULES = ( "EMS C-Inf S1 Wk", "EMS C-Inf S2 Wk",
"EMS C-Inf S3 Wk", "EMS C-Inf S2 Wk", "EMS C-Inf S1 Wk" )
..


$ ---------------------------------------------------------
$ Polygons
$ ---------------------------------------------------------