Skip to content

Commit

Permalink
Squashed 'measures/HPXMLtoOpenStudio/' changes from d87f97a..949c955
Browse files Browse the repository at this point in the history
949c955 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into purge
a070f41 Merge pull request #83 from NREL/os280
07c601e Switch to OpenStudio 2.8.0
a8f6b7f Bugfix for ceiling fans.
73f7f33 Bugfix for ideal air systems.
e69b541 Lots more cleanup.
1ed766a Removed more geometry methods.
bd74fb6 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into purge
f68e555 Bugfix.
26905e7 Remove last references to building unit.
eed6c8d Remove building unit from hvac sizing.
decadf9 Removed more unused code and references to units.
41ffdf1 Hot water and appliances.
53a8a9d HVAC, lighting, and misc loads.
ebf0ad1 Simplify occupants.
a3ebe82 Merge pull request #80 from NREL/hvac_fan_power
95b7d8d Unused methods.
0e6e528 Moved rated assumption into method instead of being an argument. Tweaked assumptions.
bae0fe9 Simplify nbeds/nbaths.
acb55af More purging.
5492974 Purge unused code.
6ae7fd4 Merge pull request #78 from NREL/location_tests
c3960aa Add more location tests and better error handling.
e4f63ca Merge pull request #77 from NREL/unconditioned_basement_bugfix
d4d0874 Bugfix for unconditioned basements.
348183d Merge pull request #76 from NREL/latest-from-eri
d857cee Two bugfixes.
1e64976 Appliance locations.
73a6d83 Envelope.
456310c Vented attic/crawl.
b2423c2 Hot water distribution.
60028d5 Bugfix for no appliances.
32c7ee2 Clothes washer.
29ee208 Clothes dryer.
4c0da6b Dishwasher.
ed20137 Refrigerator.
5675fd5 Cooking range & oven.
7ac2532 Update lighting.
971ef2a Merge pull request #75 from NREL/sync

git-subtree-dir: measures/HPXMLtoOpenStudio
git-subtree-split: 949c955
  • Loading branch information
shorowit committed Apr 11, 2019
1 parent 7f02af0 commit b1e00d8
Show file tree
Hide file tree
Showing 40 changed files with 1,664 additions and 11,657 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: 2
jobs:
build:
docker:
- image: nrel/openstudio:2.7.1
- image: nrel/openstudio:2.8.0
steps:
- checkout
- run:
Expand Down
465 changes: 206 additions & 259 deletions Rakefile

Large diffs are not rendered by default.

648 changes: 298 additions & 350 deletions measure.rb

Large diffs are not rendered by default.

83 changes: 29 additions & 54 deletions resources/EPvalidator.rb
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ def self.run_validator(hpxml_doc)
## [AtticType=VentedAttic]
"/HPXML/Building/BuildingDetails/Enclosure/Attics/Attic[AtticType/Attic[Vented='true']]" => {
"Floors/Floor" => one_or_more, # See [AtticFloor]
"AtticType/Attic[SpecificLeakageArea | extension/ConstantACHnatural]" => zero_or_one, # Uses ERI Reference Home if not provided
"AtticType/Attic[SpecificLeakageArea | extension/ConstantACHnatural]" => one,
},

## [AtticRoof]
Expand All @@ -137,7 +137,7 @@ def self.run_validator(hpxml_doc)
"[AdjacentTo='living space' or AdjacentTo='garage' or AdjacentTo='outside']" => one,
"Area" => one,
"Insulation/SystemIdentifier" => one, # Required by HPXML schema
"Insulation/AssemblyEffectiveRValue" => zero_or_one, # Uses ERI Reference Home if not provided
"Insulation/AssemblyEffectiveRValue" => one,
},

## [AtticWall]
Expand Down Expand Up @@ -175,7 +175,7 @@ def self.run_validator(hpxml_doc)

## [FoundationType=VentedCrawlspace]
"/HPXML/Building/BuildingDetails/Enclosure/Foundations/Foundation[FoundationType/Crawlspace[Vented='true']]" => {
"SpecificLeakageArea" => zero_or_one, # Uses ERI Reference Home if not provided
"FoundationType/Crawlspace/SpecificLeakageArea" => one,
"FrameFloor" => one_or_more, # See [FoundationFrameFloor]
"FoundationWall" => one_or_more, # See [FoundationWall]
"Slab" => one_or_more, # See [FoundationSlab]; use slab with zero thickness for dirt floor
Expand Down Expand Up @@ -208,7 +208,7 @@ def self.run_validator(hpxml_doc)
"[AdjacentTo='living space' or AdjacentTo='garage']" => one,
"Area" => one,
"Insulation/SystemIdentifier" => one, # Required by HPXML schema
"Insulation/AssemblyEffectiveRValue" => zero_or_one, # Uses ERI Reference Home if not provided
"Insulation/AssemblyEffectiveRValue" => one,
},

## [FoundationWall]
Expand All @@ -221,7 +221,7 @@ def self.run_validator(hpxml_doc)
"DepthBelowGrade" => one,
"[AdjacentTo='ground' or AdjacentTo='basement - unconditioned' or AdjacentTo='basement - conditioned' or AdjacentTo='crawlspace - vented' or AdjacentTo='crawlspace - unvented']" => one,
"Insulation/SystemIdentifier" => one, # Required by HPXML schema
"Insulation/AssemblyEffectiveRValue" => zero_or_one, # Uses ERI Reference Home if not provided
"Insulation/AssemblyEffectiveRValue" => one,
},

## [FoundationSlab]
Expand All @@ -230,13 +230,13 @@ def self.run_validator(hpxml_doc)
"Area" => one,
"Thickness" => one, # Use zero for dirt floor
"ExposedPerimeter" => one,
"PerimeterInsulationDepth" => zero_or_one, # Uses ERI Reference Home if not provided
"UnderSlabInsulationWidth" => zero_or_one, # Uses ERI Reference Home if not provided
"PerimeterInsulationDepth" => one,
"UnderSlabInsulationWidth" => one,
"DepthBelowGrade" => one,
"PerimeterInsulation/SystemIdentifier" => one, # Required by HPXML schema
"PerimeterInsulation/Layer[InstallationType='continuous']/NominalRValue" => zero_or_one, # Uses ERI Reference Home if not provided
"PerimeterInsulation/Layer[InstallationType='continuous']/NominalRValue" => one,
"UnderSlabInsulation/SystemIdentifier" => one, # Required by HPXML schema
"UnderSlabInsulation/Layer[InstallationType='continuous']/NominalRValue" => zero_or_one, # Uses ERI Reference Home if not provided
"UnderSlabInsulation/Layer[InstallationType='continuous']/NominalRValue" => one,
"extension/CarpetFraction" => one,
"extension/CarpetRValue" => one,
},
Expand All @@ -259,21 +259,12 @@ def self.run_validator(hpxml_doc)
"SystemIdentifier" => one, # Required by HPXML schema
"[ExteriorAdjacentTo='living space' or ExteriorAdjacentTo='garage' or ExteriorAdjacentTo='attic - vented' or ExteriorAdjacentTo='attic - unvented' or ExteriorAdjacentTo='attic - conditioned' or ExteriorAdjacentTo='outside']" => one,
"[InteriorAdjacentTo='living space' or InteriorAdjacentTo='garage' or InteriorAdjacentTo='attic - vented' or InteriorAdjacentTo='attic - unvented' or InteriorAdjacentTo='attic - conditioned']" => one,
"WallType[WoodStud | DoubleWoodStud | ConcreteMasonryUnit | StructurallyInsulatedPanel | InsulatedConcreteForms | SteelFrame | SolidConcrete | StructuralBrick | StrawBale | Stone | LogWall]" => one, # See [WallType=WoodStud] or [WallType=NotWoodStud]
"WallType[WoodStud | DoubleWoodStud | ConcreteMasonryUnit | StructurallyInsulatedPanel | InsulatedConcreteForms | SteelFrame | SolidConcrete | StructuralBrick | StrawBale | Stone | LogWall]" => one,
"Area" => one,
"Azimuth" => zero_or_one,
"SolarAbsorptance" => one,
"Emittance" => one,
"Insulation/SystemIdentifier" => one, # Required by HPXML schema
},

# [WallType=WoodStud]
"/HPXML/Building/BuildingDetails/Enclosure/Walls/Wall[WallType/WoodStud]" => {
"Insulation/AssemblyEffectiveRValue" => zero_or_one, # Uses ERI Reference Home if not provided
},

# [WallType=NotWoodStud]
"/HPXML/Building/BuildingDetails/Enclosure/Walls/Wall[not(WallType/WoodStud)]" => {
"Insulation/AssemblyEffectiveRValue" => one,
},

Expand Down Expand Up @@ -311,9 +302,9 @@ def self.run_validator(hpxml_doc)
"/HPXML/Building/BuildingDetails/Enclosure/Doors/Door" => {
"SystemIdentifier" => one, # Required by HPXML schema
"AttachedToWall" => one,
"Area" => zero_or_one, # Uses ERI Reference Home if not provided
"Azimuth" => zero_or_one, # Uses ERI Reference Home if not provided
"RValue" => zero_or_one, # Uses ERI Reference Home if not provided
"Area" => one,
"Azimuth" => one,
"RValue" => one,
},

# [AirInfiltration]
Expand Down Expand Up @@ -535,13 +526,13 @@ def self.run_validator(hpxml_doc)

## [HWDistType=Standard]
"/HPXML/Building/BuildingDetails/Systems/WaterHeating/HotWaterDistribution/SystemType/Standard" => {
"PipingLength" => zero_or_one, # Uses ERI Reference Home if not provided
"PipingLength" => one,
},

## [HWDistType=Recirculation]
"/HPXML/Building/BuildingDetails/Systems/WaterHeating/HotWaterDistribution/SystemType/Recirculation" => {
"ControlType" => one,
"RecirculationPipingLoopLength" => zero_or_one, # Uses ERI Reference Home if not provided
"RecirculationPipingLoopLength" => one,
"BranchPipingLoopLength" => one,
"PumpPower" => one,
},
Expand Down Expand Up @@ -575,12 +566,8 @@ def self.run_validator(hpxml_doc)
# [ClothesWasher]
"/HPXML/Building/BuildingDetails/Appliances/ClothesWasher" => {
"SystemIdentifier" => one, # Required by HPXML schema
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => zero_or_one,
"[ModifiedEnergyFactor | IntegratedModifiedEnergyFactor]" => zero_or_one, # Uses ERI Reference Home if neither provided; otherwise see [CWType=UserSpecified]
},

## [CWType=UserSpecified]
"/HPXML/Building/BuildingDetails/Appliances/ClothesWasher[ModifiedEnergyFactor]" => {
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => one,
"[ModifiedEnergyFactor | IntegratedModifiedEnergyFactor]" => one,
"RatedAnnualkWh" => one,
"LabelElectricRate" => one,
"LabelGasRate" => one,
Expand All @@ -591,54 +578,42 @@ def self.run_validator(hpxml_doc)
# [ClothesDryer]
"/HPXML/Building/BuildingDetails/Appliances/ClothesDryer" => {
"SystemIdentifier" => one, # Required by HPXML schema
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => zero_or_one,
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => one,
"[FuelType='natural gas' or FuelType='fuel oil' or FuelType='propane' or FuelType='electricity']" => one,
"[EnergyFactor | CombinedEnergyFactor]" => zero_or_one, # Uses ERI Reference Home if neither provided; otherwise see [CDType=UserSpecified]
},

## [CDType=UserSpecified]
"/HPXML/Building/BuildingDetails/Appliances/ClothesDryer[EnergyFactor]" => {
"[EnergyFactor | CombinedEnergyFactor]" => one,
"[ControlType='timer' or ControlType='moisture']" => one,
},

# [Dishwasher]
"/HPXML/Building/BuildingDetails/Appliances/Dishwasher" => {
"SystemIdentifier" => one, # Required by HPXML schema
"[EnergyFactor | RatedAnnualkWh]" => zero_or_one, # Uses ERI Reference Home if neither provided; otherwise see [DWType=UserSpecified]
},

## [DWType=UserSpecified]
"/HPXML/Building/BuildingDetails/Appliances/Dishwasher[EnergyFactor | RatedAnnualkWh]" => {
"[EnergyFactor | RatedAnnualkWh]" => one,
"PlaceSettingCapacity" => one,
},

# [Refrigerator]
"/HPXML/Building/BuildingDetails/Appliances/Refrigerator" => {
"SystemIdentifier" => one, # Required by HPXML schema
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => zero_or_one,
"RatedAnnualkWh" => zero_or_one, # Uses ERI Reference Home if not provided
"[Location='living space' or Location='basement - conditioned' or Location='basement - unconditioned' or Location='garage']" => one,
"RatedAnnualkWh" => one,
},

# [CookingRange]
"/HPXML/Building/BuildingDetails/Appliances/CookingRange" => {
"SystemIdentifier" => one, # Required by HPXML schema
"[FuelType='natural gas' or FuelType='fuel oil' or FuelType='propane' or FuelType='electricity']" => one,
"IsInduction" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [CRType=UserSpecified]
},

## [CRType=UserSpecified]
"/HPXML/Building/BuildingDetails/Appliances/CookingRange[IsInduction]" => {
"IsInduction" => one,
"../Oven/IsConvection" => one,
},

# [Lighting]
"/HPXML/Building/BuildingDetails/Lighting" => {
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='interior']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='exterior']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='garage']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='interior']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='exterior']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='garage']" => zero_or_one, # Uses ERI Reference Home if not provided; otherwise see [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='interior']" => one, # See [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='exterior']" => one, # See [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier I' and Location='garage']" => one, # See [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='interior']" => one, # See [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='exterior']" => one, # See [LightingGroup]
"LightingGroup[ThirdPartyCertification='ERI Tier II' and Location='garage']" => one, # See [LightingGroup]
},

## [LightingGroup]
Expand Down
Loading

0 comments on commit b1e00d8

Please sign in to comment.