openstudio-extension 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +9 -0
- data/.rubocop.yml +9 -0
- data/Gemfile +3 -1
- data/Jenkinsfile +10 -0
- data/README.md +230 -12
- data/Rakefile +88 -3
- data/bin/console +3 -3
- data/doc_templates/LICENSE.md +27 -0
- data/doc_templates/README.md.erb +42 -0
- data/doc_templates/copyright_erb.txt +36 -0
- data/doc_templates/copyright_js.txt +4 -0
- data/doc_templates/copyright_ruby.txt +34 -0
- data/init_templates/README.md +37 -0
- data/init_templates/gemspec.txt +32 -0
- data/init_templates/openstudio_module.rb +50 -0
- data/init_templates/spec.rb +47 -0
- data/init_templates/spec_helper.rb +49 -0
- data/init_templates/template_gemfile.txt +17 -0
- data/init_templates/template_rakefile.txt +15 -0
- data/init_templates/version.rb +40 -0
- data/lib/files/openstudio-extension-gem-test.ddy +536 -0
- data/lib/files/openstudio-extension-gem-test.epw +8768 -0
- data/lib/files/openstudio-extension-gem-test.stat +554 -0
- data/lib/measures/openstudio_extension_test_measure/LICENSE.md +27 -0
- data/lib/measures/openstudio_extension_test_measure/README.md +26 -0
- data/lib/measures/openstudio_extension_test_measure/README.md.erb +42 -0
- data/lib/measures/openstudio_extension_test_measure/measure.rb +72 -0
- data/lib/measures/openstudio_extension_test_measure/measure.xml +83 -0
- data/lib/measures/openstudio_extension_test_measure/resources/os_lib_helper_methods.rb +399 -0
- data/lib/measures/openstudio_extension_test_measure/tests/OpenStudioExtensionTestMeasure_Test.rb +75 -0
- data/lib/openstudio/extension.rb +220 -0
- data/lib/openstudio/extension/core/CreateResults.rb +879 -0
- data/lib/openstudio/extension/core/check_air_sys_temps.rb +190 -0
- data/lib/openstudio/extension/core/check_calibration.rb +155 -0
- data/lib/openstudio/extension/core/check_cond_zns.rb +84 -0
- data/lib/openstudio/extension/core/check_domestic_hot_water.rb +334 -0
- data/lib/openstudio/extension/core/check_envelope_conductance.rb +453 -0
- data/lib/openstudio/extension/core/check_eui_by_end_use.rb +162 -0
- data/lib/openstudio/extension/core/check_eui_reasonableness.rb +135 -0
- data/lib/openstudio/extension/core/check_fan_pwr.rb +98 -0
- data/lib/openstudio/extension/core/check_internal_loads.rb +393 -0
- data/lib/openstudio/extension/core/check_mech_sys_capacity.rb +226 -0
- data/lib/openstudio/extension/core/check_mech_sys_efficiency.rb +326 -0
- data/lib/openstudio/extension/core/check_mech_sys_part_load_eff.rb +464 -0
- data/lib/openstudio/extension/core/check_mech_sys_type.rb +139 -0
- data/lib/openstudio/extension/core/check_part_loads.rb +451 -0
- data/lib/openstudio/extension/core/check_placeholder.rb +75 -0
- data/lib/openstudio/extension/core/check_plant_cap.rb +123 -0
- data/lib/openstudio/extension/core/check_plant_temps.rb +159 -0
- data/lib/openstudio/extension/core/check_plenum_loads.rb +87 -0
- data/lib/openstudio/extension/core/check_pump_pwr.rb +108 -0
- data/lib/openstudio/extension/core/check_sch_coord.rb +241 -0
- data/lib/openstudio/extension/core/check_schedules.rb +311 -0
- data/lib/openstudio/extension/core/check_simultaneous_heating_and_cooling.rb +158 -0
- data/lib/openstudio/extension/core/check_supply_air_and_thermostat_temp_difference.rb +148 -0
- data/lib/openstudio/extension/core/check_weather_files.rb +132 -0
- data/lib/openstudio/extension/core/deer_vintages.rb +311 -0
- data/lib/openstudio/extension/core/os_lib_aedg_measures.rb +491 -0
- data/lib/openstudio/extension/core/os_lib_cofee.rb +259 -0
- data/lib/openstudio/extension/core/os_lib_constructions.rb +378 -0
- data/lib/openstudio/extension/core/os_lib_geometry.rb +1022 -0
- data/lib/openstudio/extension/core/os_lib_helper_methods.rb +399 -0
- data/lib/openstudio/extension/core/os_lib_hvac.rb +2171 -0
- data/lib/openstudio/extension/core/os_lib_lighting_and_equipment.rb +214 -0
- data/lib/openstudio/extension/core/os_lib_model_generation.rb +817 -0
- data/lib/openstudio/extension/core/os_lib_model_simplification.rb +1049 -0
- data/lib/openstudio/extension/core/os_lib_outdoorair_and_infiltration.rb +165 -0
- data/lib/openstudio/extension/core/os_lib_reporting.rb +4652 -0
- data/lib/openstudio/extension/core/os_lib_reporting_qaqc.rb +200 -0
- data/lib/openstudio/extension/core/os_lib_schedules.rb +963 -0
- data/lib/openstudio/extension/rake_task.rb +149 -0
- data/lib/openstudio/extension/runner.rb +644 -0
- data/lib/openstudio/extension/version.rb +40 -0
- data/openstudio-extension.gemspec +20 -15
- metadata +150 -14
- data/.travis.yml +0 -7
- data/lib/OpenStudio/Extension/rake_task.rb +0 -84
- data/lib/OpenStudio/Extension/version.rb +0 -33
- data/lib/OpenStudio/extension.rb +0 -65
@@ -0,0 +1,491 @@
|
|
1
|
+
# *******************************************************************************
|
2
|
+
# OpenStudio(R), Copyright (c) 2008-2019, Alliance for Sustainable Energy, LLC.
|
3
|
+
# All rights reserved.
|
4
|
+
# Redistribution and use in source and binary forms, with or without
|
5
|
+
# modification, are permitted provided that the following conditions are met:
|
6
|
+
#
|
7
|
+
# (1) Redistributions of source code must retain the above copyright notice,
|
8
|
+
# this list of conditions and the following disclaimer.
|
9
|
+
#
|
10
|
+
# (2) Redistributions in binary form must reproduce the above copyright notice,
|
11
|
+
# this list of conditions and the following disclaimer in the documentation
|
12
|
+
# and/or other materials provided with the distribution.
|
13
|
+
#
|
14
|
+
# (3) Neither the name of the copyright holder nor the names of any contributors
|
15
|
+
# may be used to endorse or promote products derived from this software without
|
16
|
+
# specific prior written permission from the respective party.
|
17
|
+
#
|
18
|
+
# (4) Other than as required in clauses (1) and (2), distributions in any form
|
19
|
+
# of modifications or other derivative works may not use the "OpenStudio"
|
20
|
+
# trademark, "OS", "os", or any other confusingly similar designation without
|
21
|
+
# specific prior written permission from Alliance for Sustainable Energy, LLC.
|
22
|
+
#
|
23
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS
|
24
|
+
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
25
|
+
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
26
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE
|
27
|
+
# UNITED STATES GOVERNMENT, OR THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF
|
28
|
+
# THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
29
|
+
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
30
|
+
# OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
31
|
+
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
32
|
+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
33
|
+
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
34
|
+
# *******************************************************************************
|
35
|
+
|
36
|
+
module OsLib_AedgMeasures
|
37
|
+
def self.getClimateZoneNumber(model, runner = nil)
|
38
|
+
# get ashrae climate zone from model
|
39
|
+
ashraeClimateZone = ''
|
40
|
+
climateZones = model.getClimateZones
|
41
|
+
climateZones.climateZones.each do |climateZone|
|
42
|
+
if climateZone.institution == 'ASHRAE'
|
43
|
+
ashraeClimateZone = climateZone.value
|
44
|
+
if !runner.nil?
|
45
|
+
# runner.registerInfo("Using ASHRAE Climate zone #{ashraeClimateZone} for AEDG recommendations.")
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
if ashraeClimateZone == '' # should this be not applicable or error?
|
51
|
+
if !runner.nil?
|
52
|
+
runner.registerError("Please assign an ASHRAE Climate Zone to your model using the site tab in the OpenStudio application. The measure can't make AEDG recommendations without this information.")
|
53
|
+
end
|
54
|
+
return false # note - for this to work need to check for false in measure.rb and add return false there as well.
|
55
|
+
else
|
56
|
+
climateZoneNumber = ashraeClimateZone.split(//).first
|
57
|
+
end
|
58
|
+
|
59
|
+
# expected climate zone number should be 1 through 8
|
60
|
+
if !['1', '2', '3', '4', '5', '6', '7', '8'].include? climateZoneNumber
|
61
|
+
runner.registerWarning('ASHRAE climate zone number is not within expected range of 1 to 8.')
|
62
|
+
# return false # note - for this to work need to check for false in measure.rb and add return false there as well.
|
63
|
+
end
|
64
|
+
|
65
|
+
result = climateZoneNumber
|
66
|
+
# don't add return false here, need to catch errors above
|
67
|
+
end
|
68
|
+
|
69
|
+
def self.getLongHowToTips(guide, aedgTips, runner)
|
70
|
+
# get tips
|
71
|
+
if guide == 'K12'
|
72
|
+
hash = OsLib_AedgMeasures.getK12Tips
|
73
|
+
elsif guide == 'SmMdOff'
|
74
|
+
hash = OsLib_AedgMeasures.getSmMdOffTips
|
75
|
+
else
|
76
|
+
runner.registerError("#{guide} is an invalid value. Can't generate how to tip messages.")
|
77
|
+
return false # note - for this to work need to check for false in measure.rb and add return false there as well.
|
78
|
+
# this should only happen if measure writer passes bad values to getLongHowToTips
|
79
|
+
end
|
80
|
+
|
81
|
+
# array for info string
|
82
|
+
string = []
|
83
|
+
|
84
|
+
# create info messages
|
85
|
+
aedgTips.each do |aedgtip|
|
86
|
+
if hash[aedgtip] != hash[0]
|
87
|
+
string << hash[aedgtip]
|
88
|
+
else
|
89
|
+
runner.registerWarning("#{aedgtip} is an invalid key for tip hash. Can't generate tip.")
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
# see if expected number of messages created
|
94
|
+
if aedgTips.size != string.size
|
95
|
+
runner.registerWarning('One more more messages were not created.')
|
96
|
+
end
|
97
|
+
|
98
|
+
result = "#{hash[0]}: #{string.join(', ')}." # hash[0] bad key will return default value
|
99
|
+
# don't add return false here, need to catch errors above
|
100
|
+
end
|
101
|
+
|
102
|
+
# hash of how to tips for K-12 school AEDG
|
103
|
+
def self.getK12Tips
|
104
|
+
# envelope tips
|
105
|
+
@aedgK12HowToTipHash = Hash.new('K-12 Schools AEDG How to Implement Recommendations')
|
106
|
+
@aedgK12HowToTipHash['EN01'] = 'EN1 Cool Roofs'
|
107
|
+
@aedgK12HowToTipHash['EN02'] = 'EN2 Roofs-Insulation Entirely above Deck'
|
108
|
+
@aedgK12HowToTipHash['EN03'] = 'EN3 Roofs-Attics, and Other Roofs'
|
109
|
+
@aedgK12HowToTipHash['EN04'] = 'EN4 Roofs-Metal Buildings'
|
110
|
+
@aedgK12HowToTipHash['EN05'] = 'EN5 Walls-Mass'
|
111
|
+
@aedgK12HowToTipHash['EN06'] = 'EN6 Walls-Steel Framed'
|
112
|
+
@aedgK12HowToTipHash['EN07'] = 'EN7 Walls-Wood Frame and Other'
|
113
|
+
@aedgK12HowToTipHash['EN08'] = 'EN8 Walls-Metal Building'
|
114
|
+
@aedgK12HowToTipHash['EN09'] = 'EN9 Below-Grade Walls'
|
115
|
+
@aedgK12HowToTipHash['EN10'] = 'EN10 Floors-Mass'
|
116
|
+
@aedgK12HowToTipHash['EN11'] = 'EN11 Floors-Metal Joist or Wood Joist/Wood Frame'
|
117
|
+
@aedgK12HowToTipHash['EN12'] = 'EN12 Slab-on-Grade Floors-Unheated'
|
118
|
+
@aedgK12HowToTipHash['EN13'] = 'EN13 Slab-on-Grade Floors-Heated'
|
119
|
+
@aedgK12HowToTipHash['EN14'] = 'EN14 Slab Edge Insulation'
|
120
|
+
@aedgK12HowToTipHash['EN15'] = 'EN15 Doors-Opaque, Swinging'
|
121
|
+
@aedgK12HowToTipHash['EN16'] = 'EN16 Doors-Opaque, Roll-Up, or Sliding'
|
122
|
+
@aedgK12HowToTipHash['EN17'] = 'EN17 Air Infiltration Control'
|
123
|
+
@aedgK12HowToTipHash['EN18'] = 'EN18 Vestibules'
|
124
|
+
@aedgK12HowToTipHash['EN19'] = 'EN19 Alternative Constructions'
|
125
|
+
@aedgK12HowToTipHash['EN20'] = 'EN20 Truss Heel Heights'
|
126
|
+
@aedgK12HowToTipHash['EN21'] = 'EN21 Moisture Control'
|
127
|
+
@aedgK12HowToTipHash['EN22'] = 'EN22 Thermal Bridging-Opaque Components'
|
128
|
+
@aedgK12HowToTipHash['EN23'] = 'EN23 Thermal Bridging-Fenestration'
|
129
|
+
@aedgK12HowToTipHash['EN24'] = 'EN24 Fenestration Descriptions'
|
130
|
+
@aedgK12HowToTipHash['EN25'] = 'EN25 View Window-to Floor Area Ratio (VFR)'
|
131
|
+
@aedgK12HowToTipHash['EN26'] = 'EN26 Unwanted Solar Heat Gain Is Most Effectively Controlled on the Outside of the Building'
|
132
|
+
@aedgK12HowToTipHash['EN27'] = 'EN27 Operable versus Fixed Windows'
|
133
|
+
@aedgK12HowToTipHash['EN28'] = 'EN28 Building Form and Window Orientation'
|
134
|
+
@aedgK12HowToTipHash['EN29'] = 'EN29 Glazing'
|
135
|
+
@aedgK12HowToTipHash['EN30'] = 'EN30 Obstructions and Planting'
|
136
|
+
@aedgK12HowToTipHash['EN31'] = 'EN31 Window Orientation'
|
137
|
+
@aedgK12HowToTipHash['EN32'] = 'EN32 Passive Solar'
|
138
|
+
@aedgK12HowToTipHash['EN33'] = 'EN33 Glazing'
|
139
|
+
|
140
|
+
# daylighting tips
|
141
|
+
@aedgK12HowToTipHash['DL01'] = 'DL1 General Principles'
|
142
|
+
@aedgK12HowToTipHash['DL02'] = 'DL2 Consider Daylighting Early in the Design Process'
|
143
|
+
@aedgK12HowToTipHash['DL03'] = 'DL3 Space Types'
|
144
|
+
@aedgK12HowToTipHash['DL04'] = 'DL4 How to Select Daylighting Strategies'
|
145
|
+
@aedgK12HowToTipHash['DL05'] = 'DL5 Recommended Daylighting Fenestration-to-Floor Area Ratios'
|
146
|
+
@aedgK12HowToTipHash['DL06'] = 'DL6 View Windows Separate from Daylighting Strategy'
|
147
|
+
@aedgK12HowToTipHash['DL07'] = 'DL7 Lighting Design Criteria'
|
148
|
+
@aedgK12HowToTipHash['DL08'] = 'DL8 Use Daylighting Analysis Tools to Optimize Design'
|
149
|
+
@aedgK12HowToTipHash['DL09'] = 'DL9 Building Orientation'
|
150
|
+
@aedgK12HowToTipHash['DL10'] = 'DL10 Ceiling Height'
|
151
|
+
@aedgK12HowToTipHash['DL11'] = 'DL11 Outdoor Surface Reflectance'
|
152
|
+
@aedgK12HowToTipHash['DL12'] = 'DL12 Eliminate Direct Beam Radiation'
|
153
|
+
@aedgK12HowToTipHash['DL13'] = 'DL13 Daylighting Control for Audio-Visual (AV) Projection Activities'
|
154
|
+
@aedgK12HowToTipHash['DL14'] = 'DL14 Interior Finishes for Daylighting'
|
155
|
+
@aedgK12HowToTipHash['DL15'] = 'DL15 Calibration and Commissioning'
|
156
|
+
@aedgK12HowToTipHash['DL16'] = 'DL16 Dimming Controls'
|
157
|
+
@aedgK12HowToTipHash['DL17'] = 'DL17 Photosensor Placement and Lighting Layout'
|
158
|
+
@aedgK12HowToTipHash['DL18'] = 'DL18 Photosensor Specifications'
|
159
|
+
@aedgK12HowToTipHash['DL19'] = 'DL19 Select Compatible Light Fixtures'
|
160
|
+
@aedgK12HowToTipHash['DL20'] = 'DL20 Sidelighting Patterns'
|
161
|
+
@aedgK12HowToTipHash['DL21'] = 'DL21 South-Facing Classrooms-Configuration of Apertures'
|
162
|
+
@aedgK12HowToTipHash['DL22'] = 'DL22 South-Facing Classrooms-Glazing Area and Fenestration Type'
|
163
|
+
@aedgK12HowToTipHash['DL23'] = 'DL23 View Glazing and VTs'
|
164
|
+
@aedgK12HowToTipHash['DL24'] = 'DL24 South-Facing Classrooms-Make Light Shelf Durable and Reflective'
|
165
|
+
@aedgK12HowToTipHash['DL25'] = 'DL25 North-Facing Classroom-Configuration of Apertures'
|
166
|
+
@aedgK12HowToTipHash['DL26'] = 'DL26 North-Facing Classroom-Glazing Area and Fenestration Type'
|
167
|
+
@aedgK12HowToTipHash['DL27'] = 'DL27 South-and North-Facing Classrooms-Sloped Ceilings'
|
168
|
+
@aedgK12HowToTipHash['DL28'] = 'DL28 South-and North-Facing Classrooms-Recognize the Limits of Side Daylighting'
|
169
|
+
@aedgK12HowToTipHash['DL29'] = 'DL29 Classroom Toplighting Pattern'
|
170
|
+
@aedgK12HowToTipHash['DL30'] = 'DL30 Sizing the Roof Monitors'
|
171
|
+
@aedgK12HowToTipHash['DL31'] = 'DL31 Overhang for Roof Monitor'
|
172
|
+
@aedgK12HowToTipHash['DL32'] = 'DL32 Use Light-Colored Roofing in Front of Monitors'
|
173
|
+
@aedgK12HowToTipHash['DL33'] = 'DL33 Use Baffles to Block Direct Beam Radiation and Diffuse Light'
|
174
|
+
@aedgK12HowToTipHash['DL34'] = 'DL34 Minimize Contrast at Well-Ceiling Intersection'
|
175
|
+
@aedgK12HowToTipHash['DL35'] = 'DL35 Address the Monitor Design'
|
176
|
+
@aedgK12HowToTipHash['DL36'] = 'DL36 Let the Heat Stratify'
|
177
|
+
@aedgK12HowToTipHash['DL37'] = 'DL37 Minimize the Depth of the Ceiling Cavity'
|
178
|
+
@aedgK12HowToTipHash['DL38'] = 'DL38 Classroom Sidelighting Plus Toplighting Pattern'
|
179
|
+
@aedgK12HowToTipHash['DL39'] = 'DL39 Gym Toplighting Overview'
|
180
|
+
@aedgK12HowToTipHash['DL40'] = 'DL40 Gym Toplighting Sizing'
|
181
|
+
@aedgK12HowToTipHash['DL41'] = 'DL41 Gym Toplighting Using South-Facing Roof Monitors'
|
182
|
+
@aedgK12HowToTipHash['DL42'] = 'DL42 Gym Toplighting in Combination with North-and South-Facing Sidelighting'
|
183
|
+
|
184
|
+
# electric lighting tips
|
185
|
+
@aedgK12HowToTipHash['EL01'] = 'EL1 Light-Colored Interior Finishes'
|
186
|
+
@aedgK12HowToTipHash['EL02'] = 'EL2 Color Rendering Index'
|
187
|
+
@aedgK12HowToTipHash['EL03'] = 'EL3 Color Temperature'
|
188
|
+
@aedgK12HowToTipHash['EL04'] = 'EL4 Linear Fluorescent Lamps and Ballasts'
|
189
|
+
@aedgK12HowToTipHash['EL05'] = 'EL5 Compact Fluorescent'
|
190
|
+
@aedgK12HowToTipHash['EL06'] = 'EL6 Metal Halide'
|
191
|
+
@aedgK12HowToTipHash['EL07'] = 'EL7 Light-Emitting Diode (LED) Lighting'
|
192
|
+
@aedgK12HowToTipHash['EL08'] = 'EL8 Occupancy Sensors'
|
193
|
+
@aedgK12HowToTipHash['EL09'] = 'EL9 Multilevel Switching or Dimming'
|
194
|
+
@aedgK12HowToTipHash['EL10'] = 'EL10 Exit Signs'
|
195
|
+
@aedgK12HowToTipHash['EL11'] = 'EL11 Circuiting and Switching'
|
196
|
+
@aedgK12HowToTipHash['EL12'] = 'EL12 Electrical Lighting Design for Schools'
|
197
|
+
@aedgK12HowToTipHash['EL13'] = 'EL13 Classroom Lighting'
|
198
|
+
@aedgK12HowToTipHash['EL14'] = 'EL14 Gym Lighting'
|
199
|
+
@aedgK12HowToTipHash['EL15'] = 'EL15 Lighting for a Multipurpose Room'
|
200
|
+
@aedgK12HowToTipHash['EL16'] = 'EL16 Lighting for a Library or Media Center'
|
201
|
+
@aedgK12HowToTipHash['EL17'] = 'EL17 Corridor Lighting'
|
202
|
+
@aedgK12HowToTipHash['EL18'] = 'EL18 Lighting for Offices and Teacher Support Rooms'
|
203
|
+
@aedgK12HowToTipHash['EL19'] = 'EL19 Lighting for Locker Areas and Restrooms'
|
204
|
+
@aedgK12HowToTipHash['EL20'] = 'EL20 Twenty-Four Hour Lighting'
|
205
|
+
@aedgK12HowToTipHash['EL21'] = 'EL21 Exterior Lighting Power-Parking Lots and Drives'
|
206
|
+
@aedgK12HowToTipHash['EL22'] = 'EL22 Exterior Lighting Power-Walkways'
|
207
|
+
@aedgK12HowToTipHash['EL23'] = 'EL23 Decorative Façade Lighting'
|
208
|
+
@aedgK12HowToTipHash['EL24'] = 'EL24 Sources'
|
209
|
+
@aedgK12HowToTipHash['EL25'] = 'EL25 Controls'
|
210
|
+
|
211
|
+
# plug load tips
|
212
|
+
@aedgK12HowToTipHash['PL01'] = 'PL1 General Guidance'
|
213
|
+
@aedgK12HowToTipHash['PL02'] = 'PL2 Computer (Information Technology) Equipment'
|
214
|
+
@aedgK12HowToTipHash['PL03'] = 'PL3 Staff and Occupant Equipment Control'
|
215
|
+
@aedgK12HowToTipHash['PL04'] = 'PL4 Phantom/Parasitic Loads'
|
216
|
+
@aedgK12HowToTipHash['PL05'] = 'PL5 ENERGY STAR Appliances/Equipment'
|
217
|
+
@aedgK12HowToTipHash['PL06'] = 'PL6 Electrical Distribution System'
|
218
|
+
|
219
|
+
# kitchen tips
|
220
|
+
@aedgK12HowToTipHash['KE01'] = 'KE1 General Guidance'
|
221
|
+
@aedgK12HowToTipHash['KE02'] = 'KE2 Energy-Efficient Kitchen Equipment'
|
222
|
+
@aedgK12HowToTipHash['KE03'] = 'KE3 Exhaust and Ventilation Energy Use'
|
223
|
+
@aedgK12HowToTipHash['KE04'] = 'KE4 Minimize Hot-Water Use'
|
224
|
+
@aedgK12HowToTipHash['KE05'] = 'KE5 High-Efficiency Walk-in Refrigeration Systems'
|
225
|
+
@aedgK12HowToTipHash['KE06'] = 'KE6 Position Hooded Appliances to Achieve Lower Exhaust Rates'
|
226
|
+
@aedgK12HowToTipHash['KE07'] = 'KE7 Operating Considerations'
|
227
|
+
|
228
|
+
# service water heating tips
|
229
|
+
@aedgK12HowToTipHash['WH01'] = 'WH1 Service Water -Heating Types'
|
230
|
+
@aedgK12HowToTipHash['WH02'] = 'WH2 System Descriptions'
|
231
|
+
@aedgK12HowToTipHash['WH03'] = 'WH3 Sizing'
|
232
|
+
@aedgK12HowToTipHash['WH04'] = 'WH4 Equipment Efficiency'
|
233
|
+
@aedgK12HowToTipHash['WH05'] = 'WH5 Location'
|
234
|
+
@aedgK12HowToTipHash['WH06'] = 'WH6 Pipe Insulation'
|
235
|
+
@aedgK12HowToTipHash['WH07'] = 'WH7 Solar Hot-Water Systems'
|
236
|
+
|
237
|
+
# hvac tips
|
238
|
+
@aedgK12HowToTipHash['HV01'] = 'HV1 Ground-Source Heat Pump System'
|
239
|
+
@aedgK12HowToTipHash['HV02'] = 'HV2 Fan-Coil System'
|
240
|
+
@aedgK12HowToTipHash['HV03'] = 'HV3 Multiple-Zone, Variable-Air-Volume (VAV) Air Handlers'
|
241
|
+
@aedgK12HowToTipHash['HV04'] = 'HV4 Dedicated Outdoor Air System (DOAS)'
|
242
|
+
@aedgK12HowToTipHash['HV05'] = 'HV5 Exhaust Air Energy Recovery'
|
243
|
+
@aedgK12HowToTipHash['HV06'] = 'HV6 Chilled-Water System'
|
244
|
+
@aedgK12HowToTipHash['HV07'] = 'HV7 Water Heating System'
|
245
|
+
@aedgK12HowToTipHash['HV08'] = 'HV8 Condenser-Water System for GSHPs'
|
246
|
+
@aedgK12HowToTipHash['HV09'] = 'HV9 Cooling and Heating Load Calculations'
|
247
|
+
@aedgK12HowToTipHash['HV10'] = 'HV10 Ventilation Air'
|
248
|
+
@aedgK12HowToTipHash['HV11'] = 'HV11 Cooling and Heating Equipment Efficiencies'
|
249
|
+
@aedgK12HowToTipHash['HV12'] = 'HV12 Fan Power and Motor Efficiencies'
|
250
|
+
@aedgK12HowToTipHash['HV13'] = 'HV13 Part-Load Dehumidification'
|
251
|
+
@aedgK12HowToTipHash['HV14'] = 'HV14 Economizer'
|
252
|
+
@aedgK12HowToTipHash['HV15'] = 'HV15 Demand-Controlled Ventilation'
|
253
|
+
@aedgK12HowToTipHash['HV16'] = 'HV16 System-Level Control Strategies'
|
254
|
+
@aedgK12HowToTipHash['HV17'] = 'HV17 Thermal Zoning'
|
255
|
+
@aedgK12HowToTipHash['HV18'] = 'HV18 Ductwork Design and Construction'
|
256
|
+
@aedgK12HowToTipHash['HV19'] = 'HV19 Duct Insulation'
|
257
|
+
@aedgK12HowToTipHash['HV20'] = 'HV20 Duct Sealing and Leakage Testing'
|
258
|
+
@aedgK12HowToTipHash['HV21'] = 'HV21 Exhaust Air Systems'
|
259
|
+
@aedgK12HowToTipHash['HV22'] = 'HV22 Testing, Adjusting, and Balancing'
|
260
|
+
@aedgK12HowToTipHash['HV23'] = 'HV23 Air Cleaning'
|
261
|
+
@aedgK12HowToTipHash['HV24'] = 'HV24 Relief versus Return Fans'
|
262
|
+
@aedgK12HowToTipHash['HV25'] = 'HV25 Zone Temperature Control'
|
263
|
+
@aedgK12HowToTipHash['HV26'] = 'HV26 Heating Sources'
|
264
|
+
@aedgK12HowToTipHash['HV27'] = 'HV27 Noise Control'
|
265
|
+
@aedgK12HowToTipHash['HV28'] = 'HV28 Proper Maintenance'
|
266
|
+
# bonus hvac tips
|
267
|
+
@aedgK12HowToTipHash['HV29'] = 'HV29 Natural Ventilation and Naturally Conditioned Spaces'
|
268
|
+
@aedgK12HowToTipHash['HV30'] = 'HV30 Thermal Storage'
|
269
|
+
@aedgK12HowToTipHash['HV31'] = 'HV31 Thermal Mass'
|
270
|
+
@aedgK12HowToTipHash['HV32'] = 'HV32 Thermal Displacement Ventilation'
|
271
|
+
@aedgK12HowToTipHash['HV33'] = 'HV33 ASHRAE Standard 62.1 IAQ Procedure'
|
272
|
+
@aedgK12HowToTipHash['HV34'] = 'HV34 Evaporative Cooling'
|
273
|
+
|
274
|
+
# commissioning tips
|
275
|
+
@aedgK12HowToTipHash['QA01'] = 'QA1 Design and Construction Team'
|
276
|
+
@aedgK12HowToTipHash['QA02'] = 'QA2 Owner’s Project Requirements and Basis of Design'
|
277
|
+
@aedgK12HowToTipHash['QA03'] = 'QA3 Selection of Quality Assurance Provider'
|
278
|
+
@aedgK12HowToTipHash['QA04'] = 'QA4 Design and Construction Schedule'
|
279
|
+
@aedgK12HowToTipHash['QA05'] = 'QA5 Design Review'
|
280
|
+
@aedgK12HowToTipHash['QA06'] = 'QA6 Defining Quality Assurance at Pre-Bid'
|
281
|
+
@aedgK12HowToTipHash['QA07'] = 'QA7 Verifying Building Envelope Construction'
|
282
|
+
@aedgK12HowToTipHash['QA08'] = 'QA8 Verifying Lighting Construction'
|
283
|
+
@aedgK12HowToTipHash['QA09'] = 'QA9 Verifying Electrical and HVAC Systems Construction'
|
284
|
+
@aedgK12HowToTipHash['QA10'] = 'QA10 Functional Performance Testing'
|
285
|
+
@aedgK12HowToTipHash['QA11'] = 'QA11 Substantial Completion'
|
286
|
+
@aedgK12HowToTipHash['QA12'] = 'QA12 Final Acceptance'
|
287
|
+
@aedgK12HowToTipHash['QA13'] = 'QA13 Establish Building Operation and Maintenance Program'
|
288
|
+
@aedgK12HowToTipHash['QA14'] = 'QA14 Monitor Post-Occupancy Performance'
|
289
|
+
@aedgK12HowToTipHash['QA15'] = 'QA15 M&V Electrical Panel Guidance'
|
290
|
+
@aedgK12HowToTipHash['QA16'] = 'QA16 M&V Data Management and Access'
|
291
|
+
@aedgK12HowToTipHash['QA17'] = 'QA17 M&V Benchmarking'
|
292
|
+
@aedgK12HowToTipHash['QA18'] = 'QA18 The Building as a Teaching Tool'
|
293
|
+
|
294
|
+
# renewable energy tips
|
295
|
+
@aedgK12HowToTipHash['RE01'] = 'RE1 Photovoltaic (PV) Systems'
|
296
|
+
@aedgK12HowToTipHash['RE02'] = 'RE2 Solar Hot Water Systems'
|
297
|
+
@aedgK12HowToTipHash['RE03'] = 'RE3 Wind Turbine Power'
|
298
|
+
|
299
|
+
result = @aedgK12HowToTipHash
|
300
|
+
return result
|
301
|
+
end
|
302
|
+
|
303
|
+
# hash of how to tips for small to medium office buildings AEDG
|
304
|
+
def self.getSmMdOffTips
|
305
|
+
# envelope tips
|
306
|
+
aedgSmMdOffHowToTipHash = Hash.new('Small and Medium Offices AEDG How to Implement Recommendations')
|
307
|
+
aedgSmMdOffHowToTipHash['EN01'] = 'EN1 Cool Roofs'
|
308
|
+
aedgSmMdOffHowToTipHash['EN02'] = 'EN2 Roofs-Insulation Entirely above Deck'
|
309
|
+
aedgSmMdOffHowToTipHash['EN03'] = 'EN3 Roofs-Attics, and Other Roofs'
|
310
|
+
aedgSmMdOffHowToTipHash['EN04'] = 'EN4 Roofs-Metal Buildings'
|
311
|
+
aedgSmMdOffHowToTipHash['EN05'] = 'EN5 Walls-Mass'
|
312
|
+
aedgSmMdOffHowToTipHash['EN06'] = 'EN6 Walls-Steel Framed'
|
313
|
+
aedgSmMdOffHowToTipHash['EN07'] = 'EN7 Walls-Wood Frame and Other'
|
314
|
+
aedgSmMdOffHowToTipHash['EN08'] = 'EN8 Walls-Metal Building'
|
315
|
+
aedgSmMdOffHowToTipHash['EN09'] = 'EN9 Walls-Below-Grade'
|
316
|
+
aedgSmMdOffHowToTipHash['EN10'] = 'EN10 Floors-Mass'
|
317
|
+
aedgSmMdOffHowToTipHash['EN11'] = 'EN11 Floors-Metal Joist or Wood Joist/Wood Frame'
|
318
|
+
aedgSmMdOffHowToTipHash['EN12'] = 'EN12 Slab-on-Grade Floors-Unheated'
|
319
|
+
aedgSmMdOffHowToTipHash['EN13'] = 'EN13 Slab-on-Grade Floors-Heated'
|
320
|
+
aedgSmMdOffHowToTipHash['EN14'] = 'EN14 Slab Edge Insulation'
|
321
|
+
aedgSmMdOffHowToTipHash['EN15'] = 'EN15 Doors-Opaque, Swinging'
|
322
|
+
aedgSmMdOffHowToTipHash['EN16'] = 'EN16 Doors-Opaque, Roll-Up, or Sliding'
|
323
|
+
aedgSmMdOffHowToTipHash['EN17'] = 'EN17 Air Infiltration Control'
|
324
|
+
aedgSmMdOffHowToTipHash['EN18'] = 'EN18 Vestibules'
|
325
|
+
aedgSmMdOffHowToTipHash['EN19'] = 'EN19 Alternative Constructions'
|
326
|
+
aedgSmMdOffHowToTipHash['EN20'] = 'EN20 Truss Heel Heights'
|
327
|
+
aedgSmMdOffHowToTipHash['EN21'] = 'EN21 Moisture Control'
|
328
|
+
aedgSmMdOffHowToTipHash['EN22'] = 'EN22 Thermal Bridging-Opaque Components'
|
329
|
+
aedgSmMdOffHowToTipHash['EN23'] = 'EN23 Thermal Bridging-Fenestration'
|
330
|
+
aedgSmMdOffHowToTipHash['EN24'] = 'EN24 Vertical Fenestration Descriptions'
|
331
|
+
aedgSmMdOffHowToTipHash['EN25'] = 'EN25 Window-to-Wall Ratio (WWR)'
|
332
|
+
aedgSmMdOffHowToTipHash['EN26'] = 'EN26 Unwanted Solar Heat Gain Is Most Effectively Controlled on the Outside of the Building'
|
333
|
+
aedgSmMdOffHowToTipHash['EN27'] = 'EN27 Operable versus Fixed Windows'
|
334
|
+
aedgSmMdOffHowToTipHash['EN28'] = 'EN28 Building Form and Window Orientation'
|
335
|
+
aedgSmMdOffHowToTipHash['EN29'] = 'EN29 Glazing'
|
336
|
+
aedgSmMdOffHowToTipHash['EN30'] = 'EN30 Obstructions and Planting'
|
337
|
+
aedgSmMdOffHowToTipHash['EN31'] = 'EN31 Window Orientation'
|
338
|
+
aedgSmMdOffHowToTipHash['EN32'] = 'EN32 Passive Solar'
|
339
|
+
aedgSmMdOffHowToTipHash['EN33'] = 'EN33 Glazing'
|
340
|
+
aedgSmMdOffHowToTipHash['EN34'] = 'EN34 Visible Transmittance (VT)'
|
341
|
+
aedgSmMdOffHowToTipHash['EN35'] = 'EN35 Separating Views and Daylight'
|
342
|
+
aedgSmMdOffHowToTipHash['EN36'] = 'EN36 Color-Neutral Glazing'
|
343
|
+
aedgSmMdOffHowToTipHash['EN37'] = 'EN37 Reflectivity of Glass'
|
344
|
+
aedgSmMdOffHowToTipHash['EN38'] = 'EN38 Light-to-Solar-Gain Ratio'
|
345
|
+
aedgSmMdOffHowToTipHash['EN39'] = 'EN39 High Ceilings'
|
346
|
+
aedgSmMdOffHowToTipHash['EN40'] = 'EN40 Light Shelves'
|
347
|
+
|
348
|
+
# daylighting tips
|
349
|
+
aedgSmMdOffHowToTipHash['DL01'] = 'DL1 Daylighting Early in the Design Process'
|
350
|
+
aedgSmMdOffHowToTipHash['DL02'] = 'DL2 Daylighting Analysis Tools to Optimize Design'
|
351
|
+
aedgSmMdOffHowToTipHash['DL03'] = 'DL3 Space Types, Layout, and Daylight'
|
352
|
+
aedgSmMdOffHowToTipHash['DL04'] = 'DL4 Building Orientation and Daylight'
|
353
|
+
aedgSmMdOffHowToTipHash['DL05'] = 'DL5 Building Shape and Daylight'
|
354
|
+
aedgSmMdOffHowToTipHash['DL06'] = 'DL6 Window-to-Wall Ratio (WWR)'
|
355
|
+
aedgSmMdOffHowToTipHash['DL07'] = 'DL7 Sidelighting-Ceiling and Window Height'
|
356
|
+
aedgSmMdOffHowToTipHash['DL08'] = 'Sidelighting-Clerestory Windows'
|
357
|
+
aedgSmMdOffHowToTipHash['DL09'] = 'DL9 Sidelighting-Borrowed Light'
|
358
|
+
aedgSmMdOffHowToTipHash['DL10'] = 'DL10 Sidelighting-Wall-to-Wall Windows'
|
359
|
+
aedgSmMdOffHowToTipHash['DL11'] = 'DL11 Sidelighting-Punched Windows'
|
360
|
+
aedgSmMdOffHowToTipHash['DL12'] = 'DL12 Shading Systems to Eliminate Direct-Beam Radiation'
|
361
|
+
aedgSmMdOffHowToTipHash['DL13'] = 'DL13 Daylighting Control for Audiovisual Activities'
|
362
|
+
aedgSmMdOffHowToTipHash['DL14'] = 'DL14 Interior Finishes for Daylighting'
|
363
|
+
aedgSmMdOffHowToTipHash['DL15'] = 'DL15 Outdoor Surface Reflectance'
|
364
|
+
aedgSmMdOffHowToTipHash['DL16'] = 'DL16 Calibration and Commissioning'
|
365
|
+
aedgSmMdOffHowToTipHash['DL17'] = 'DL17 Dimming Controls'
|
366
|
+
aedgSmMdOffHowToTipHash['DL18'] = 'DL18 Photosensor Placement and Lighting Layout'
|
367
|
+
aedgSmMdOffHowToTipHash['DL19'] = 'DL19 Photosensor Specifications'
|
368
|
+
aedgSmMdOffHowToTipHash['DL20'] = 'DL20 Select Compatible Light Fixtures'
|
369
|
+
# bonus daylighting tips
|
370
|
+
aedgSmMdOffHowToTipHash['DL21'] = 'DL21 Toplighting'
|
371
|
+
aedgSmMdOffHowToTipHash['DL22'] = 'DL22 Rooftop Monitors'
|
372
|
+
aedgSmMdOffHowToTipHash['DL23'] = 'DL23 Rooftop Monitor Design'
|
373
|
+
aedgSmMdOffHowToTipHash['DL24'] = 'DL24 Skylights'
|
374
|
+
aedgSmMdOffHowToTipHash['DL25'] = 'DL25 Toplighting-Thermal Transmittance (Climate Zones 1-3)'
|
375
|
+
aedgSmMdOffHowToTipHash['DL26'] = 'DL26 Toplighting-Thermal Transmittance (Climate Zones 4-8)'
|
376
|
+
aedgSmMdOffHowToTipHash['DL27'] = 'DL27 Toplighting-Ceiling Height Differentials'
|
377
|
+
|
378
|
+
# electric lighting tips
|
379
|
+
aedgSmMdOffHowToTipHash['EL01'] = 'EL1 Savings and Occupant Acceptance'
|
380
|
+
aedgSmMdOffHowToTipHash['EL02'] = 'EL2 Space Planning-Open Offices'
|
381
|
+
aedgSmMdOffHowToTipHash['EL03'] = 'EL3 Space Planning-Private Offices, Conference Rooms, and Break Rooms'
|
382
|
+
aedgSmMdOffHowToTipHash['EL04'] = 'EL4 Light-Colored Interior Finishes'
|
383
|
+
aedgSmMdOffHowToTipHash['EL05'] = 'EL5 Task Lighting'
|
384
|
+
aedgSmMdOffHowToTipHash['EL06'] = 'EL6 Color Rendering Index (CRI)'
|
385
|
+
aedgSmMdOffHowToTipHash['EL07'] = 'EL7 Color Temperature'
|
386
|
+
aedgSmMdOffHowToTipHash['EL08'] = 'EL8 Linear Fluorescent Lamps and Ballasts'
|
387
|
+
aedgSmMdOffHowToTipHash['EL09'] = 'EL9 Occupancy Sensors'
|
388
|
+
aedgSmMdOffHowToTipHash['EL10'] = 'EL10 Multilevel Switching'
|
389
|
+
aedgSmMdOffHowToTipHash['EL11'] = 'EL11 Daylight-Responsive Controls'
|
390
|
+
aedgSmMdOffHowToTipHash['EL12'] = 'EL12 Exit Signs'
|
391
|
+
aedgSmMdOffHowToTipHash['EL13'] = 'EL13 Light Fixture Distribution'
|
392
|
+
aedgSmMdOffHowToTipHash['EL14'] = 'EL14 Open-Plan Offices'
|
393
|
+
aedgSmMdOffHowToTipHash['EL15'] = 'EL15 Private Offices'
|
394
|
+
aedgSmMdOffHowToTipHash['EL16'] = 'EL16 Conference Rooms/Meeting Rooms'
|
395
|
+
aedgSmMdOffHowToTipHash['EL17'] = 'EL17 Corridors'
|
396
|
+
aedgSmMdOffHowToTipHash['EL18'] = 'EL18 Storage Areas'
|
397
|
+
aedgSmMdOffHowToTipHash['EL19'] = 'EL19 Lobbies'
|
398
|
+
aedgSmMdOffHowToTipHash['EL20'] = 'EL20 Twenty-Four Hour Lighting'
|
399
|
+
aedgSmMdOffHowToTipHash['EL21'] = 'EL21 Exterior Lighting Power-Parking Lots and Drives'
|
400
|
+
aedgSmMdOffHowToTipHash['EL22'] = 'EL22 Exterior Lighting Power-Walkways'
|
401
|
+
aedgSmMdOffHowToTipHash['EL23'] = 'EL23 Decorative Façade Lighting'
|
402
|
+
aedgSmMdOffHowToTipHash['EL24'] = 'EL24 Sources'
|
403
|
+
aedgSmMdOffHowToTipHash['EL25'] = 'EL25 Controls'
|
404
|
+
|
405
|
+
# plug load tips
|
406
|
+
aedgSmMdOffHowToTipHash['PL01'] = 'PL1 Connected Wattage'
|
407
|
+
aedgSmMdOffHowToTipHash['PL02'] = 'PL2 Laptop Computers'
|
408
|
+
aedgSmMdOffHowToTipHash['PL03'] = 'PL3 Occupancy Controls'
|
409
|
+
aedgSmMdOffHowToTipHash['PL04'] = 'PL4 Parasitic Loads'
|
410
|
+
aedgSmMdOffHowToTipHash['PL05'] = 'PL5 Printing Equipment'
|
411
|
+
aedgSmMdOffHowToTipHash['PL06'] = 'PL6 Unnecessary Equipment'
|
412
|
+
|
413
|
+
# service water heating tips
|
414
|
+
aedgSmMdOffHowToTipHash['WH01'] = 'WH1 Service Water Heating Types'
|
415
|
+
aedgSmMdOffHowToTipHash['WH02'] = 'WH2 System Descriptions'
|
416
|
+
aedgSmMdOffHowToTipHash['WH03'] = 'WH3 Sizing'
|
417
|
+
aedgSmMdOffHowToTipHash['WH04'] = 'WH4 Equipment Efficiency'
|
418
|
+
aedgSmMdOffHowToTipHash['WH05'] = 'WH5 Location'
|
419
|
+
aedgSmMdOffHowToTipHash['WH06'] = 'WH6 Pipe Insulation'
|
420
|
+
|
421
|
+
# hvac tips
|
422
|
+
aedgSmMdOffHowToTipHash['HV01'] = 'HV1 Cooling and Heating Loads'
|
423
|
+
aedgSmMdOffHowToTipHash['HV02'] = 'HV2 Certification of HVAC Equipment'
|
424
|
+
aedgSmMdOffHowToTipHash['HV03'] = "HV3 Single-Zone, Packaged Air-Source Heat Pump Systems (or Split Heat Pump
|
425
|
+
Systems) with Electric Resistance Supplemental Heat and DOASs"
|
426
|
+
aedgSmMdOffHowToTipHash['HV04'] = 'HV4 Water-Source Heat Pumps (WSHPs)'
|
427
|
+
aedgSmMdOffHowToTipHash['HV05'] = 'HV5 Ground-Coupled Water-Source Heat Pump (WSHP) System'
|
428
|
+
aedgSmMdOffHowToTipHash['HV06'] = "HV6 Multiple-Zone, VAV Packaged DX Rooftop Units with a Hot-Water Coil,
|
429
|
+
Indirect Gas Furnace, or Electric Resistance in the Rooftop Unit and
|
430
|
+
Convection Heat in the Spaces"
|
431
|
+
aedgSmMdOffHowToTipHash['HV07'] = "HV7 Multiple-Zone, VAV Air-Handling Units with Packaged Air-Cooled Chiller and
|
432
|
+
Gas-Fired Boiler"
|
433
|
+
aedgSmMdOffHowToTipHash['HV08'] = 'Fan-Coils'
|
434
|
+
aedgSmMdOffHowToTipHash['HV09'] = 'HV9 Radiant Heating and Cooling and DOAS'
|
435
|
+
aedgSmMdOffHowToTipHash['HV10'] = 'HV10 Dedicated Outdoor Air Systems (100% Outdoor Air Systems)'
|
436
|
+
aedgSmMdOffHowToTipHash['HV11'] = 'HV11 Part-Load Dehumidification'
|
437
|
+
aedgSmMdOffHowToTipHash['HV12'] = 'HV12 Exhaust Air Energy Recovery'
|
438
|
+
aedgSmMdOffHowToTipHash['HV13'] = 'HV13 Indirect Evaporative Cooling'
|
439
|
+
aedgSmMdOffHowToTipHash['HV14'] = 'HV14 Cooling and Heating Equipment Efficiencies'
|
440
|
+
aedgSmMdOffHowToTipHash['HV15'] = 'HV15 Ventilation Air'
|
441
|
+
aedgSmMdOffHowToTipHash['HV16'] = 'HV16 Economizer'
|
442
|
+
aedgSmMdOffHowToTipHash['HV17'] = 'HV17 Demand-Controlled Ventilation (DCV)'
|
443
|
+
aedgSmMdOffHowToTipHash['HV18'] = 'HV18 Carbon Dioxide (CO2 ) Sensors'
|
444
|
+
aedgSmMdOffHowToTipHash['HV19'] = 'HV19 Exhaust Air Systems'
|
445
|
+
aedgSmMdOffHowToTipHash['HV20'] = 'HV20 Ductwork Design and Construction'
|
446
|
+
aedgSmMdOffHowToTipHash['HV21'] = 'HV21 Duct Insulation'
|
447
|
+
aedgSmMdOffHowToTipHash['HV22'] = 'HV22 Duct Sealing and Leakage Testing'
|
448
|
+
aedgSmMdOffHowToTipHash['HV23'] = 'HV23 Fan Motor Efficiencies'
|
449
|
+
aedgSmMdOffHowToTipHash['HV24'] = 'HV24 Thermal Zoning'
|
450
|
+
aedgSmMdOffHowToTipHash['HV25'] = 'HV25 System-Level Control Strategies'
|
451
|
+
aedgSmMdOffHowToTipHash['HV26'] = 'HV26 Testing, Adjusting, and Balancing'
|
452
|
+
aedgSmMdOffHowToTipHash['HV27'] = 'HV27 Commissioning (Cx)'
|
453
|
+
aedgSmMdOffHowToTipHash['HV28'] = 'HV28 Filters'
|
454
|
+
aedgSmMdOffHowToTipHash['HV29'] = 'HV29 Chilled-Water (CHW) System'
|
455
|
+
aedgSmMdOffHowToTipHash['HV30'] = 'HV30 Water Heating Systems'
|
456
|
+
aedgSmMdOffHowToTipHash['HV31'] = 'HV31 Relief versus Return Fans'
|
457
|
+
aedgSmMdOffHowToTipHash['HV32'] = 'HV32 Heating Sources'
|
458
|
+
aedgSmMdOffHowToTipHash['HV33'] = 'HV33 Noise Control'
|
459
|
+
aedgSmMdOffHowToTipHash['HV34'] = 'HV34 Proper Maintenance'
|
460
|
+
aedgSmMdOffHowToTipHash['HV35'] = 'HV35 Zone Temperature Control'
|
461
|
+
aedgSmMdOffHowToTipHash['HV36'] = 'HV36 Evaporative Condensers on Rooftop Units'
|
462
|
+
|
463
|
+
# commissioning tips
|
464
|
+
aedgSmMdOffHowToTipHash['QA01'] = 'QA1 Selecting the Design and Construction Team'
|
465
|
+
aedgSmMdOffHowToTipHash['QA02'] = 'QA2 Selecting the QA Provider'
|
466
|
+
aedgSmMdOffHowToTipHash['QA03'] = 'QA3 Owner’s Project Requirements (OPR) and Basis of Design (BoD)'
|
467
|
+
aedgSmMdOffHowToTipHash['QA04'] = 'QA4 Design and Construction Schedule'
|
468
|
+
aedgSmMdOffHowToTipHash['QA05'] = 'QA5 Design Review'
|
469
|
+
aedgSmMdOffHowToTipHash['QA06'] = 'QA6 Defining QA at Pre-Bid'
|
470
|
+
aedgSmMdOffHowToTipHash['QA07'] = 'QA7 Verifying Building Envelope Construction'
|
471
|
+
aedgSmMdOffHowToTipHash['QA08'] = 'QA8 Verifying Lighting Construction'
|
472
|
+
aedgSmMdOffHowToTipHash['QA09'] = 'QA9 Verifying Electrical and HVAC Systems Construction'
|
473
|
+
aedgSmMdOffHowToTipHash['QA10'] = 'QA10 Performance Testing'
|
474
|
+
aedgSmMdOffHowToTipHash['QA11'] = 'QA11 Substantial Completion'
|
475
|
+
aedgSmMdOffHowToTipHash['QA12'] = 'QA12 Final Acceptance'
|
476
|
+
aedgSmMdOffHowToTipHash['QA13'] = 'QA13 Establish a Building Operation and Maintenance (O&M) Program'
|
477
|
+
aedgSmMdOffHowToTipHash['QA14'] = 'QA14 Monitor Post-Occupancy Performance'
|
478
|
+
|
479
|
+
# natural ventilation tips
|
480
|
+
aedgSmMdOffHowToTipHash['NV01'] = 'NV1 Natural Ventilation and Naturally Conditioned Spaces'
|
481
|
+
|
482
|
+
# renewable energy tips
|
483
|
+
aedgSmMdOffHowToTipHash['RE01'] = 'RE1 Photovoltaic (PV) Systems'
|
484
|
+
aedgSmMdOffHowToTipHash['RE02'] = 'RE2 Wind Turbine Power'
|
485
|
+
aedgSmMdOffHowToTipHash['RE03'] = 'RE3 Transpired Solar Collector'
|
486
|
+
aedgSmMdOffHowToTipHash['RE04'] = 'RE4 Power Purchase Agreements'
|
487
|
+
|
488
|
+
result = aedgSmMdOffHowToTipHash
|
489
|
+
return result
|
490
|
+
end
|
491
|
+
end
|