Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appx g/merge master 09192023 #1610

Merged
merged 70 commits into from
Sep 22, 2023
Merged
Changes from 1 commit
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
ed8b339
remove Siz.AirLoopHVAC.rb
mdahlhausen Aug 25, 2023
5ba9c05
remove Siz.CoilCoolingWater.rb
mdahlhausen Aug 25, 2023
3710796
remove sizing methods in Siz.ThermalZone.rb
mdahlhausen Aug 25, 2023
e38bfc3
remove Siz.HVACComponent.rb
mdahlhausen Aug 25, 2023
1f9c89d
remove Siz.HeatingCoolingFuels.rb and Siz.ThermalZone.rb
mdahlhausen Aug 25, 2023
27e38db
remove overloaded prm method plant_loop_total_cooling_capacity
mdahlhausen Aug 25, 2023
8b99e87
calculate fan power
mdahlhausen Aug 25, 2023
89be23d
remove getAutosizedValueFromEquipmentSummary
mdahlhausen Aug 25, 2023
e8ec7ec
remove output_fan_report
mdahlhausen Aug 25, 2023
6d0c652
Delete Siz.Model.rb
mdahlhausen Aug 25, 2023
a2b247b
remove require to Siz.Model
mdahlhausen Aug 28, 2023
1c54b8e
grammar fix
mdahlhausen Aug 28, 2023
927274f
fix OptionalDouble error
mdahlhausen Aug 28, 2023
2ad720d
get value of FuelType Enums
mdahlhausen Aug 29, 2023
331078a
added method to convert plant into a 2-pipe system with availability …
carlosduarteroa Aug 29, 2023
f7d9499
refactor design load to be w not w_per_m2
mdahlhausen Aug 29, 2023
88c696e
added 2-pipe plant mode based on zone heating cooling demand
carlosduarteroa Aug 29, 2023
e9945f7
Merge branch 'master' into feature/radiant_controls_2_pipe_plant_redo
carlosduarteroa Aug 29, 2023
229e051
add method to get radiant thermal zones from plant loop
carlosduarteroa Aug 30, 2023
aa9f9b8
added tests for testing two pipe plant system
carlosduarteroa Aug 30, 2023
64d5371
Adds details to sizing run start/end messages for runtime profiling
asparke2 Aug 24, 2023
2e3dc1d
Merge remote-tracking branch 'origin/master' into feature/sizing_run_…
asparke2 Aug 30, 2023
ac51ed0
check for OptionalDouble
mdahlhausen Aug 30, 2023
7d20c94
fix .get typo for double
mdahlhausen Aug 31, 2023
e79863a
Update Standards.ThermalZone.rb
mdahlhausen Aug 31, 2023
9cc75f2
update regression and performance results
mdahlhausen Aug 31, 2023
7173d56
added plant setpoint manager to vary plant water supply temperature b…
carlosduarteroa Aug 31, 2023
3c6b9c1
remove extra argument
mdahlhausen Sep 1, 2023
9aa6c6b
Merge branch 'master' into remove_sizing_methods
mdahlhausen Sep 2, 2023
a7bd20d
fix app g method call typos
mdahlhausen Sep 2, 2023
4c124da
Update test_performance_expected_dd_results.csv
mdahlhausen Sep 2, 2023
40e49f4
check app G fuel type against array
mdahlhausen Sep 2, 2023
97840e9
update test failures
mdahlhausen Sep 7, 2023
4d4da95
Merge pull request #1582 from NREL/remove_sizing_methods
mdahlhausen Sep 7, 2023
4de34f1
two pipe method edits
mdahlhausen Sep 7, 2023
89dcb6f
Merge pull request #1586 from NREL/feature/radiant_controls_2_pipe_pl…
mdahlhausen Sep 8, 2023
37c5f34
Merge pull request #1591 from NREL/feature/sizing_run_profiling
mdahlhausen Sep 8, 2023
409f78e
Merge branch 'master' into feature/radiant_controls_oa_based_swt_redo
carlosduarteroa Sep 11, 2023
42723eb
moved heat cool request program to its own method for reuse
carlosduarteroa Sep 12, 2023
b63e183
added support to control swt based on zone demand
carlosduarteroa Sep 12, 2023
f28ec4a
added tests for supply water temperature control
carlosduarteroa Sep 12, 2023
d4cb1b4
add OsLib_Schedules methods
mdahlhausen Sep 12, 2023
67eb898
remove one schedule module level
mdahlhausen Sep 12, 2023
e7e24e8
fix yard documentation
mdahlhausen Sep 12, 2023
671295b
fix yard documentation
mdahlhausen Sep 12, 2023
9812d2b
Create pull_request_template.md
mdahlhausen Sep 12, 2023
9e6bdf7
Merge pull request #1597 from NREL/feature/pr_template
mdahlhausen Sep 13, 2023
a6633e8
minor return consistency edit
mdahlhausen Sep 13, 2023
7049071
add OsLib_ModelGeneration methods
mdahlhausen Sep 13, 2023
815554a
fix model_identify_return_air_type return type
mdahlhausen Sep 13, 2023
65f7cc8
Apply Black formatting.
lymereJ Sep 13, 2023
8637313
Merge pull request #1600 from NREL/apply_black_fmt
mdahlhausen Sep 13, 2023
3b7abc3
refactor create_typical methods
mdahlhausen Sep 13, 2023
769d6f3
fix tests by adding weather file
mdahlhausen Sep 13, 2023
3395f64
Merge pull request #1596 from NREL/fix/yard_documentation
mdahlhausen Sep 14, 2023
0bea314
Merge branch 'master' into feature/extension_gem
mdahlhausen Sep 14, 2023
2d936ae
minor yard syntax update
mdahlhausen Sep 14, 2023
c1d68cd
rubocop fixes
mdahlhausen Sep 14, 2023
abcb73d
merge ComStock changes to create typical
mdahlhausen Sep 14, 2023
9faa678
Merge pull request #1602 from NREL/feature/extension_gem
mdahlhausen Sep 15, 2023
60329f2
Merge branch 'master' into feature/radiant_controls_oa_based_swt_redo
mdahlhausen Sep 15, 2023
2d70132
syntax and rubocop edits
mdahlhausen Sep 18, 2023
2fac650
Merge pull request #1595 from NREL/feature/radiant_controls_oa_based_…
mdahlhausen Sep 18, 2023
8ee396e
rubocop autocorrect edits
mdahlhausen Sep 18, 2023
ee81697
Merge pull request #1609 from NREL/fix/rubocop_edits
mdahlhausen Sep 19, 2023
db64c62
Merge branch 'master' of https://github.com/NREL/openstudio-standards…
weilixu Sep 19, 2023
a3a7c76
Fix issues in psz-vav system using water heating coil
weilixu Sep 20, 2023
f043468
revise test case assertion
weilixu Sep 20, 2023
1050631
add patch code to remove the nil situation in the index.
weilixu Sep 21, 2023
c74925c
Merge branch 'AppendixG_Dev' into appx_g/merge_master_09192023
weilixu Sep 22, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
rubocop autocorrect edits
mdahlhausen committed Sep 18, 2023
commit 8ee396e866f08413925e91a174d4aac5ac4c79ee
1 change: 0 additions & 1 deletion Rakefile
Original file line number Diff line number Diff line change
@@ -38,7 +38,6 @@ namespace :test do
t.verbose = false
end


# These tests only available in the CI environment
if ENV['CI'] == 'true'

Original file line number Diff line number Diff line change
@@ -46,6 +46,7 @@ def model_create_prototype_model(climate_zone, epw_file, sizing_run_dir = Dir.pw
model_add_hvac(model, @instvarbuilding_type, climate_zone, @prototype_input)
model.getAirLoopHVACs.each do |air_loop|
next unless air_loop_hvac_multizone_vav_system?(air_loop)

model_system_outdoor_air_sizing_vrp_method(air_loop)
air_loop_hvac_apply_vav_damper_action(air_loop)
end
12 changes: 6 additions & 6 deletions lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb
Original file line number Diff line number Diff line change
@@ -786,7 +786,7 @@ def air_loop_hvac_total_cooling_capacity(air_loop_hvac)
coil = sc.to_CoilCoolingWater.get
# error if the design coil capacity method isn't available
if coil.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end
if coil.autosizedDesignCoilLoad.is_initialized
# @todo Change to pull water coil nominal capacity instead of design load
@@ -833,7 +833,7 @@ def air_loop_hvac_total_cooling_capacity(air_loop_hvac)
coil = clg_coil.to_CoilCoolingWater.get
# error if the design coil capacity method isn't available
if coil.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end
if coil.autosizedDesignCoilLoad.is_initialized
# @todo Change to pull water coil nominal capacity instead of design load
@@ -881,7 +881,7 @@ def air_loop_hvac_total_cooling_capacity(air_loop_hvac)
coil = clg_coil.to_CoilCoolingWater.get
# error if the design coil capacity method isn't available
if coil.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required CoilCoolingWater method .autosizedDesignCoilLoad is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end
if coil.autosizedDesignCoilLoad.is_initialized
# @todo Change to pull water coil nominal capacity instead of design load
@@ -2046,7 +2046,7 @@ def air_loop_hvac_adjust_minimum_vav_damper_positions(air_loop_hvac)

# Retrieve the sum of the zone minimum primary airflow
if air_loop_hvac.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required AirLoopHVAC method .autosizedSumMinimumHeatingAirFlowRates is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required AirLoopHVAC method .autosizedSumMinimumHeatingAirFlowRates is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
elsif air_loop_hvac.autosizedSumMinimumHeatingAirFlowRates.is_initialized
vpz_min_sum = air_loop_hvac.autosizedSumMinimumHeatingAirFlowRates.get
else
@@ -2070,7 +2070,7 @@ def air_loop_hvac_adjust_minimum_vav_damper_positions(air_loop_hvac)

# error if zone autosized methods are not available
if air_loop_hvac.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required ThermalZone method .autosizedCoolingDesignAirFlowRate and .autosizedHeatingDesignAirFlowRate are not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required ThermalZone method .autosizedCoolingDesignAirFlowRate and .autosizedHeatingDesignAirFlowRate are not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

clg_dsn_flow = zone.autosizedCoolingDesignAirFlowRate
@@ -2207,7 +2207,7 @@ def air_loop_hvac_adjust_minimum_vav_damper_positions(air_loop_hvac)

# Retrieve the sum of the zone maximum air flow rates
if air_loop_hvac.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', "Required AirLoopHVAC method .autosizedSumAirTerminalMaxAirFlowRate is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.AirLoopHVAC', 'Required AirLoopHVAC method .autosizedSumAirTerminalMaxAirFlowRate is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
elsif air_loop_hvac.autosizedSumAirTerminalMaxAirFlowRate.is_initialized
v_max = air_loop_hvac.autosizedSumAirTerminalMaxAirFlowRate.get
else
20 changes: 10 additions & 10 deletions lib/openstudio-standards/standards/Standards.Model.rb
Original file line number Diff line number Diff line change
@@ -668,7 +668,7 @@ def model_prm_baseline_system_groups(model, custom, bldg_type_hvac_zone_hash = n
# exception that allows a different
# system type in part of the building.
if custom == 'Xcel Energy CO EDA'
# Customization - Xcel EDA Program Manual 2014
# Customization - Xcel EDA Program Manual 2014
# 3.2.1 Mechanical System Selection ii
exception_min_area_ft2 = 5000
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Standards.Model', "Customization; per Xcel EDA Program Manual 2014 3.2.1 Mechanical System Selection ii, minimum area for non-predominant conditions reduced to #{exception_min_area_ft2} ft2.")
@@ -871,12 +871,12 @@ def model_prm_baseline_system_groups(model, custom, bldg_type_hvac_zone_hash = n

# error if HVACComponent heating fuels method is not available
if model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', "Required HVACComponent methods .heatingFuelTypes and .coolingFuelTypes are not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', 'Required HVACComponent methods .heatingFuelTypes and .coolingFuelTypes are not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

model.getThermalZones.sort.each do |zone|
all_htg_fuels += zone.heatingFuelTypes.map { |f| f.valueName }
all_clg_fuels += zone.coolingFuelTypes.map { |f| f.valueName }
all_htg_fuels += zone.heatingFuelTypes.map(&:valueName)
all_clg_fuels += zone.coolingFuelTypes.map(&:valueName)
end

purchased_heating = false
@@ -940,10 +940,10 @@ def model_get_district_heating_zones(model)

# error if HVACComponent heating fuels method is not available
if model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', "Required HVACComponent method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', 'Required HVACComponent method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

htg_fuels = zone.heatingFuelTypes.map { |f| f.valueName }
htg_fuels = zone.heatingFuelTypes.map(&:valueName)
if htg_fuels.include?('DistrictHeating')
has_district_hash[zone.name] = true
has_district_hash['building'] = true
@@ -965,11 +965,11 @@ def get_group_heat_types(model, zones)

# error if HVACComponent heating fuels method is not available
if model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', "Required HVACComponent method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', 'Required HVACComponent method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

zones.each do |zone|
htg_fuels = zone.heatingFuelTypes.map { |f| f.valueName }
htg_fuels = zone.heatingFuelTypes.map(&:valueName)
if htg_fuels.include?('DistrictHeating')
has_district_heat = true
end
@@ -3266,7 +3266,7 @@ def model_add_construction(model, construction_name, construction_props = nil, s
skylights_frame_added = 0
model.getSubSurfaces.each do |sub_surface|
next unless sub_surface.outsideBoundaryCondition == 'Outdoors' && sub_surface.subSurfaceType == 'Skylight'

if model.version < OpenStudio::VersionString.new('3.1.0')
# window frame setting before https://github.com/NREL/OpenStudio/issues/2895 was fixed
sub_surface.setString(8, frame.name.get.to_s)
@@ -7140,7 +7140,7 @@ def model_identify_return_air_type(model)

# error if zone design air flow rate is not available
if zone.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', "Required ThermalZone method .autosizedDesignAirFlowRate is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.Model', 'Required ThermalZone method .autosizedDesignAirFlowRate is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

zone.additionalProperties.setFeature('return_air_type', return_air_type)
12 changes: 6 additions & 6 deletions lib/openstudio-standards/standards/Standards.PlantLoop.rb
Original file line number Diff line number Diff line change
@@ -1402,10 +1402,10 @@ def plant_loop_swh_system_type(plant_loop)

# error if Loop heating fuels method is not available
if component.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', "Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', 'Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

secondary_fuels += source_plant_loop.heatingFuelTypes.map { |f| f.valueName }
secondary_fuels += source_plant_loop.heatingFuelTypes.map(&:valueName)
secondary_heating_capacity += plant_loop_total_heating_capacity(source_plant_loop)
end

@@ -1431,10 +1431,10 @@ def plant_loop_swh_system_type(plant_loop)

# error if Loop heating fuels method is not available
if component.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', "Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', 'Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

secondary_fuels += source_plant_loop.heatingFuelTypes.map { |f| f.valueName }
secondary_fuels += source_plant_loop.heatingFuelTypes.map(&:valueName)
secondary_heating_capacity += plant_loop_total_heating_capacity(source_plant_loop)
end

@@ -1452,10 +1452,10 @@ def plant_loop_swh_system_type(plant_loop)

# error if Loop heating fuels method is not available
if component.model.version < OpenStudio::VersionString.new('3.6.0')
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', "Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.")
OpenStudio.logFree(OpenStudio::Error, 'openstudio.Standards.PlantLoop', 'Required Loop method .heatingFuelTypes is not available in pre-OpenStudio 3.6.0 versions. Use a more recent version of OpenStudio.')
end

secondary_fuels += source_plant_loop.heatingFuelTypes.map { |f| f.valueName }
secondary_fuels += source_plant_loop.heatingFuelTypes.map(&:valueName)
secondary_heating_capacity += plant_loop_total_heating_capacity(source_plant_loop)
end

2 changes: 1 addition & 1 deletion lib/openstudio-standards/standards/Standards.SpaceType.rb
Original file line number Diff line number Diff line change
@@ -587,7 +587,7 @@ def space_type_apply_int_loads_prm(space_type, model)
# Modify the lighting schedules for Appendix G PRM for 2016 and later
#
# @param model [OpenStudio::Model::Model] OpenStudio model object
# @return [Boolean] returns true if successful, false if not
# @return [Boolean] returns true if successful, false if not
def space_type_light_sch_change(model)
return true
end
Loading