honeybee-openstudio 2.6.7 → 2.7.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pull_request.yaml +25 -0
  3. data/.gitignore +1 -0
  4. data/Gemfile +1 -1
  5. data/README.md +5 -5
  6. data/Rakefile +2 -7
  7. data/doc_templates/README.md.erb +42 -0
  8. data/doc_templates/copyright_erb.txt +2 -2
  9. data/doc_templates/copyright_ruby.txt +2 -2
  10. data/honeybee-openstudio.gemspec +12 -8
  11. data/lib/files/Honeybee.rb +7 -7
  12. data/lib/from_openstudio.rb +49 -0
  13. data/lib/from_openstudio/geometry/aperture.rb +136 -0
  14. data/lib/from_openstudio/geometry/door.rb +136 -0
  15. data/lib/from_openstudio/geometry/face.rb +174 -0
  16. data/lib/from_openstudio/geometry/room.rb +121 -0
  17. data/lib/from_openstudio/geometry/shade.rb +87 -0
  18. data/lib/from_openstudio/model.rb +123 -0
  19. data/lib/from_openstudio/model_object.rb +43 -0
  20. data/lib/from_openstudio/simulation/design_day.rb +123 -0
  21. data/lib/from_openstudio/simulation/parameter_model.rb +93 -0
  22. data/lib/from_openstudio/simulation/simulation_output.rb +67 -0
  23. data/lib/{from_honeybee.rb → honeybee.rb} +47 -40
  24. data/lib/{from_honeybee → honeybee}/_defaults/energy_default.json +0 -0
  25. data/lib/{from_honeybee → honeybee}/_defaults/model.json +0 -0
  26. data/lib/{from_honeybee → honeybee}/_defaults/simulation-parameter.json +1 -0
  27. data/lib/honeybee/construction/air.rb +42 -0
  28. data/lib/honeybee/construction/opaque.rb +42 -0
  29. data/lib/honeybee/construction/shade.rb +42 -0
  30. data/lib/honeybee/construction/window.rb +51 -0
  31. data/lib/honeybee/construction/windowshade.rb +43 -0
  32. data/lib/honeybee/construction_set.rb +42 -0
  33. data/lib/{from_honeybee → honeybee}/extension.rb +5 -5
  34. data/lib/honeybee/geometry/aperture.rb +42 -0
  35. data/lib/honeybee/geometry/door.rb +42 -0
  36. data/lib/honeybee/geometry/face.rb +48 -0
  37. data/lib/honeybee/geometry/room.rb +56 -0
  38. data/lib/honeybee/geometry/shade.rb +42 -0
  39. data/lib/honeybee/hvac/ideal_air.rb +42 -0
  40. data/lib/honeybee/hvac/template.rb +73 -0
  41. data/lib/honeybee/load/electric_equipment.rb +42 -0
  42. data/lib/honeybee/load/gas_equipment.rb +42 -0
  43. data/lib/honeybee/load/infiltration.rb +42 -0
  44. data/lib/{from_honeybee/simulation/extension.rb → honeybee/load/lighting.rb} +10 -13
  45. data/lib/honeybee/load/people.rb +42 -0
  46. data/lib/honeybee/load/setpoint_humidistat.rb +46 -0
  47. data/lib/honeybee/load/setpoint_thermostat.rb +46 -0
  48. data/lib/honeybee/load/ventilation.rb +42 -0
  49. data/lib/honeybee/material/opaque.rb +42 -0
  50. data/lib/honeybee/material/opaque_no_mass.rb +42 -0
  51. data/lib/honeybee/material/window_blind.rb +42 -0
  52. data/lib/honeybee/material/window_gas.rb +42 -0
  53. data/lib/honeybee/material/window_gas_custom.rb +42 -0
  54. data/lib/honeybee/material/window_gas_mixture.rb +42 -0
  55. data/lib/honeybee/material/window_glazing.rb +42 -0
  56. data/lib/honeybee/material/window_shade.rb +42 -0
  57. data/lib/honeybee/material/window_simpleglazsys.rb +42 -0
  58. data/lib/honeybee/model.rb +87 -0
  59. data/lib/{from_honeybee → honeybee}/model_object.rb +16 -18
  60. data/lib/honeybee/program_type.rb +56 -0
  61. data/lib/honeybee/schedule/fixed_interval.rb +42 -0
  62. data/lib/honeybee/schedule/ruleset.rb +42 -0
  63. data/lib/honeybee/schedule/type_limit.rb +42 -0
  64. data/lib/honeybee/simulation/design_day.rb +42 -0
  65. data/lib/honeybee/simulation/parameter_model.rb +86 -0
  66. data/lib/honeybee/simulation/simulation_output.rb +42 -0
  67. data/lib/honeybee/ventcool/control.rb +42 -0
  68. data/lib/honeybee/ventcool/opening.rb +46 -0
  69. data/lib/honeybee/ventcool/simulation.rb +42 -0
  70. data/lib/measures/from_honeybee_model/LICENSE.md +18 -22
  71. data/lib/measures/from_honeybee_model/measure.rb +4 -4
  72. data/lib/measures/from_honeybee_model/measure.xml +14 -37
  73. data/lib/measures/from_honeybee_model/tests/from_honeybee_model_test.rb +2 -2
  74. data/lib/measures/from_honeybee_simulation_parameter/LICENSE.md +18 -22
  75. data/lib/measures/from_honeybee_simulation_parameter/measure.rb +4 -4
  76. data/lib/measures/from_honeybee_simulation_parameter/measure.xml +15 -20
  77. data/lib/measures/from_honeybee_simulation_parameter/tests/from_honeybee_simulation_parameter_test.rb +3 -3
  78. data/lib/to_openstudio.rb +92 -0
  79. data/lib/{from_honeybee → to_openstudio}/construction/air.rb +7 -16
  80. data/lib/{from_honeybee → to_openstudio}/construction/opaque.rb +9 -19
  81. data/lib/{from_honeybee → to_openstudio}/construction/shade.rb +17 -26
  82. data/lib/{from_honeybee → to_openstudio}/construction/window.rb +12 -21
  83. data/lib/{from_honeybee → to_openstudio}/construction/windowshade.rb +8 -23
  84. data/lib/{from_honeybee → to_openstudio}/construction_set.rb +11 -23
  85. data/lib/{from_honeybee → to_openstudio}/geometry/aperture.rb +22 -32
  86. data/lib/{from_honeybee → to_openstudio}/geometry/door.rb +21 -31
  87. data/lib/{from_honeybee → to_openstudio}/geometry/face.rb +11 -28
  88. data/lib/{from_honeybee → to_openstudio}/geometry/room.rb +22 -44
  89. data/lib/{from_honeybee → to_openstudio}/geometry/shade.rb +8 -18
  90. data/lib/{from_honeybee → to_openstudio}/hvac/Model.hvac.rb +17 -11
  91. data/lib/{from_honeybee → to_openstudio}/hvac/ideal_air.rb +10 -19
  92. data/lib/{from_honeybee → to_openstudio}/hvac/template.rb +9 -43
  93. data/lib/{from_honeybee → to_openstudio}/load/electric_equipment.rb +12 -21
  94. data/lib/{from_honeybee → to_openstudio}/load/gas_equipment.rb +13 -22
  95. data/lib/{from_honeybee → to_openstudio}/load/infiltration.rb +14 -23
  96. data/lib/{from_honeybee → to_openstudio}/load/lighting.rb +10 -19
  97. data/lib/{from_honeybee → to_openstudio}/load/people.rb +9 -18
  98. data/lib/{from_honeybee → to_openstudio}/load/setpoint_humidistat.rb +8 -17
  99. data/lib/{from_honeybee → to_openstudio}/load/setpoint_thermostat.rb +8 -17
  100. data/lib/{from_honeybee → to_openstudio}/load/ventilation.rb +11 -20
  101. data/lib/{from_honeybee → to_openstudio}/material/opaque.rb +7 -16
  102. data/lib/{from_honeybee → to_openstudio}/material/opaque_no_mass.rb +8 -17
  103. data/lib/{from_honeybee → to_openstudio}/material/window_blind.rb +27 -36
  104. data/lib/{from_honeybee → to_openstudio}/material/window_gas.rb +8 -17
  105. data/lib/{from_honeybee → to_openstudio}/material/window_gas_custom.rb +10 -20
  106. data/lib/{from_honeybee → to_openstudio}/material/window_gas_mixture.rb +9 -18
  107. data/lib/{from_honeybee → to_openstudio}/material/window_glazing.rb +21 -30
  108. data/lib/{from_honeybee → to_openstudio}/material/window_shade.rb +17 -26
  109. data/lib/{from_honeybee → to_openstudio}/material/window_simpleglazsys.rb +7 -16
  110. data/lib/{from_honeybee → to_openstudio}/model.rb +23 -113
  111. data/lib/to_openstudio/model_object.rb +52 -0
  112. data/lib/{from_honeybee → to_openstudio}/program_type.rb +14 -34
  113. data/lib/{from_honeybee → to_openstudio}/schedule/fixed_interval.rb +11 -21
  114. data/lib/{from_honeybee → to_openstudio}/schedule/ruleset.rb +43 -44
  115. data/lib/{from_honeybee → to_openstudio}/schedule/type_limit.rb +9 -21
  116. data/lib/{from_honeybee/simulation/designday.rb → to_openstudio/simulation/design_day.rb} +7 -16
  117. data/lib/{from_honeybee/simulation/parameter.rb → to_openstudio/simulation/parameter_model.rb} +8 -57
  118. data/lib/{from_honeybee → to_openstudio}/ventcool/control.rb +8 -17
  119. data/lib/{from_honeybee → to_openstudio}/ventcool/opening.rb +8 -22
  120. data/lib/{from_honeybee → to_openstudio}/ventcool/simulation.rb +7 -16
  121. metadata +107 -136
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,27 +29,18 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/hvac/ideal_air'
34
33
 
35
- module FromHoneybee
36
- class IdealAirSystemAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
38
35
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'IdealAirSystemAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:IdealAirSystemAbridged][:properties]
46
- end
36
+ module Honeybee
37
+ class IdealAirSystemAbridged
47
38
 
48
39
  def to_openstudio(openstudio_model)
49
40
  # create the ideal air system and set the identifier
50
41
  os_ideal_air = OpenStudio::Model::ZoneHVACIdealLoadsAirSystem.new(openstudio_model)
51
42
  os_ideal_air.setName(@hash[:identifier])
52
-
43
+
53
44
  # assign the economizer type
54
45
  if @hash[:economizer_type]
55
46
  os_ideal_air.setOutdoorAirEconomizerType(@hash[:economizer_type])
@@ -79,10 +70,10 @@ module FromHoneybee
79
70
  # assign the demand controlled ventilation
80
71
  if @hash[:demand_controlled_ventilation]
81
72
  os_ideal_air.setDemandControlledVentilationType('OccupancySchedule')
82
- else
73
+ else
83
74
  os_ideal_air.setDemandControlledVentilationType('None')
84
75
  end
85
-
76
+
86
77
  # set the maximum heating supply air temperature
87
78
  if @hash[:heating_air_temperature]
88
79
  os_ideal_air.setMaximumHeatingSupplyAirTemperature(@hash[:heating_air_temperature])
@@ -147,4 +138,4 @@ module FromHoneybee
147
138
  end
148
139
 
149
140
  end #IdealAirSystemAbridged
150
- end #FromHoneybee
141
+ end #Honeybee
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,49 +29,15 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'openstudio-standards'
33
- require_relative 'Model.hvac'
34
-
35
- require 'from_honeybee/extension'
36
- require 'from_honeybee/model_object'
37
-
38
- module FromHoneybee
39
- class TemplateHVAC < ModelObject
40
- attr_reader :errors, :warnings
41
-
42
- @@all_air_types = ['VAV', 'PVAV', 'PSZ', 'PTAC', 'ForcedAirFurnace']
43
- @@doas_types = ['FCUwithDOAS', 'WSHPwithDOAS', 'VRFwithDOAS']
44
- @@heat_cool_types = ['FCU', 'WSHP', 'VRF', 'Baseboard', 'EvaporativeCooler',
45
- 'Residential', 'WindowAC', 'GasUnitHeater']
46
- @@types = @@all_air_types + @@doas_types + @@heat_cool_types
47
-
48
- def initialize(hash = {})
49
- super(hash)
50
- end
51
-
52
- def self.types
53
- # array of all supported template HVAC systems
54
- @@types
55
- end
32
+ require 'honeybee/hvac/template'
56
33
 
57
- def self.all_air_types
58
- # array of the All Air HVAC types
59
- @@all_air_types
60
- end
34
+ require 'to_openstudio/model_object'
61
35
 
62
- def self.doas_types
63
- # array of the DOAS HVAC types
64
- @@doas_types
65
- end
36
+ require 'openstudio-standards'
37
+ require_relative 'Model.hvac'
66
38
 
67
- def self.heat_cool_types
68
- # array of the system types providing heating and cooling only
69
- @@heat_cool_types
70
- end
71
-
72
- def defaults(system_type)
73
- @@schema[:components][:schemas][system_type.to_sym][:properties]
74
- end
39
+ module Honeybee
40
+ class TemplateHVAC
75
41
 
76
42
  def to_openstudio(openstudio_model, room_ids)
77
43
  # get the defaults for the specific system type
@@ -198,4 +164,4 @@ module FromHoneybee
198
164
  end
199
165
 
200
166
  end #TemplateHVAC
201
- end #FromHoneybee
167
+ end #Honeybee
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,28 +29,19 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/load/electric_equipment'
34
33
 
35
- module FromHoneybee
36
- class ElectricEquipmentAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class ElectricEquipmentAbridged
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'ElectricEquipmentAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:ElectricEquipmentAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_electric_equipment = openstudio_model.getElectricEquipmentDefinitionByName(@hash[:identifier])
50
41
  return model_electric_equipment.get unless model_electric_equipment.empty?
51
42
  nil
52
43
  end
53
-
44
+
54
45
  def to_openstudio(openstudio_model)
55
46
  # create electrical equipment and set identifier
56
47
  os_electric_equip_def = OpenStudio::Model::ElectricEquipmentDefinition.new(openstudio_model)
@@ -58,7 +49,7 @@ module FromHoneybee
58
49
  os_electric_equip_def.setName(@hash[:identifier])
59
50
  os_electric_equip.setName(@hash[:identifier])
60
51
 
61
- # assign watts per area
52
+ # assign watts per area
62
53
  os_electric_equip_def.setWattsperSpaceFloorArea(@hash[:watts_per_area])
63
54
 
64
55
  # assign schedule
@@ -71,7 +62,7 @@ module FromHoneybee
71
62
  # assign radiant fraction if it exists
72
63
  if @hash[:radiant_fraction]
73
64
  os_electric_equip_def.setFractionRadiant(@hash[:radiant_fraction])
74
- else
65
+ else
75
66
  os_electric_equip_def.setFractionRadiant(defaults[:radiant_fraction][:default])
76
67
  end
77
68
 
@@ -85,7 +76,7 @@ module FromHoneybee
85
76
  # assign lost fraction if it exists
86
77
  if @hash[:lost_fraction]
87
78
  os_electric_equip_def.setFractionLost(@hash[:lost_fraction])
88
- else
79
+ else
89
80
  os_electric_equip_def.setFractionLost(defaults[:lost_fraction][:default])
90
81
  end
91
82
 
@@ -93,4 +84,4 @@ module FromHoneybee
93
84
  end
94
85
 
95
86
  end #ElectricEquipmentAbridged
96
- end #FromHoneybee
87
+ end #Honeybee
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,28 +29,19 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/load/gas_equipment'
34
33
 
35
- module FromHoneybee
36
- class GasEquipmentAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class GasEquipmentAbridged
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'GasEquipmentAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:GasEquipmentAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_gas_equipment = openstudio_model.getGasEquipmentDefinitionByName(@hash[:identifier])
50
41
  return model_gas_equipment.get unless model_gas_equipment.empty?
51
42
  nil
52
43
  end
53
-
44
+
54
45
  def to_openstudio(openstudio_model)
55
46
 
56
47
  # create gas equipment and set identifier
@@ -72,21 +63,21 @@ module FromHoneybee
72
63
  # assign radiant fraction if it exists
73
64
  if @hash[:radiant_fraction]
74
65
  os_gas_equip_def.setFractionRadiant(@hash[:radiant_fraction])
75
- else
66
+ else
76
67
  os_gas_equip_def.setFractionRadiant(defaults[:radiant_fraction][:default])
77
68
  end
78
-
69
+
79
70
  # assign latent fraction if it exists
80
71
  if @hash[:latent_fraction]
81
72
  os_gas_equip_def.setFractionLatent(@hash[:latent_fraction])
82
73
  else
83
74
  os_gas_equip_def.setFractionLatent(defaults[:latent_fraction][:default])
84
75
  end
85
-
76
+
86
77
  # assign lost fraction if it exists
87
78
  if @hash[:lost_fraction]
88
79
  os_gas_equip_def.setFractionLost(@hash[:lost_fraction])
89
- else
80
+ else
90
81
  os_gas_equip_def.setFractionLost(defaults[:lost_fraction][:default])
91
82
  end
92
83
 
@@ -94,4 +85,4 @@ module FromHoneybee
94
85
  end
95
86
 
96
87
  end #GasEquipmentAbridged
97
- end #FromHoneybee
88
+ end #Honeybee
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,30 +29,21 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/load/infiltration'
33
+
34
+ require 'to_openstudio/model_object'
34
35
 
35
- module FromHoneybee
36
+ module Honeybee
36
37
  class InfiltrationAbridged < ModelObject
37
- attr_reader :errors, :warnings
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'InfiltrationAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:InfiltrationAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_infiltration = openstudio_model.getSpaceInfiltrationDesignFlowRateByName(@hash[:identifier])
50
41
  return model_infiltration.get unless model_infiltration.empty?
51
42
  nil
52
43
  end
53
-
54
- def to_openstudio(openstudio_model)
55
-
44
+
45
+ def to_openstudio(openstudio_model)
46
+
56
47
  # create infiltration OpenStudio object and set identifier
57
48
  os_infilt = OpenStudio::Model::SpaceInfiltrationDesignFlowRate.new(openstudio_model)
58
49
  os_infilt.setName(@hash[:identifier])
@@ -70,26 +61,26 @@ module FromHoneybee
70
61
  # assign constant coefficient if it exists
71
62
  if @hash[:constant_coefficient]
72
63
  os_infilt.setConstantTermCoefficient(@hash[:constant_coefficient])
73
- else
64
+ else
74
65
  os_infilt.setConstantTermCoefficient(defaults[:constant_coefficient][:default])
75
66
  end
76
-
67
+
77
68
  # assign temperature coefficient
78
69
  if @hash[:temperature_coefficient]
79
70
  os_infilt.setTemperatureTermCoefficient(@hash[:temperature_coefficient])
80
71
  else
81
72
  os_infilt.setTemperatureTermCoefficient(defaults[:temperature_coefficient][:default])
82
73
  end
83
-
74
+
84
75
  # assign velocity coefficient
85
76
  if @hash[:velocity_coefficient]
86
77
  os_infilt.setVelocityTermCoefficient(@hash[:velocity_coefficient])
87
- else
78
+ else
88
79
  os_infilt.setVelocityTermCoefficient(defaults[:velocity_coefficient][:default])
89
80
  end
90
81
 
91
82
  os_infilt
92
83
  end
93
-
84
+
94
85
  end #InfiltrationAbridged
95
86
  end #Ladybug
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,28 +29,19 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/load/lighting'
34
33
 
35
- module FromHoneybee
36
- class LightingAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class LightingAbridged
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'LightingAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:LightingAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_lights = openstudio_model.getLightsDefinitionByName(@hash[:identifier])
50
41
  return model_lights.get unless model_lights.empty?
51
42
  nil
52
43
  end
53
-
44
+
54
45
  def to_openstudio(openstudio_model)
55
46
 
56
47
  # create lights OpenStudio object and set identifier
@@ -86,7 +77,7 @@ module FromHoneybee
86
77
  # assign return air fraction if it exists
87
78
  if @hash[:return_air_fraction]
88
79
  os_lights_def.setReturnAirFraction(@hash[:return_air_fraction])
89
- else
80
+ else
90
81
  os_lights_def.setReturnAirFraction(defaults[:return_air_fraction][:default])
91
82
  end
92
83
 
@@ -94,5 +85,5 @@ module FromHoneybee
94
85
  end
95
86
 
96
87
  end #LightingAbridged
97
- end #FromHoneybee
88
+ end #Honeybee
98
89
 
@@ -1,7 +1,7 @@
1
1
  # *******************************************************************************
2
- # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
2
+ # Honeybee OpenStudio Gem, Copyright (c) 2020, Alliance for Sustainable
3
3
  # Energy, LLC, Ladybug Tools LLC and other contributors. All rights reserved.
4
- #
4
+ #
5
5
  # Redistribution and use in source and binary forms, with or without
6
6
  # modification, are permitted provided that the following conditions are met:
7
7
  #
@@ -29,28 +29,19 @@
29
29
  # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
30
  # *******************************************************************************
31
31
 
32
- require 'from_honeybee/extension'
33
- require 'from_honeybee/model_object'
32
+ require 'honeybee/load/people'
34
33
 
35
- module FromHoneybee
36
- class PeopleAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class PeopleAbridged
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'PeopleAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:PeopleAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_people = openstudio_model.getPeopleDefinitionByName(@hash[:identifier])
50
41
  return model_people.get unless model_people.empty?
51
42
  nil
52
43
  end
53
-
44
+
54
45
  def to_openstudio(openstudio_model)
55
46
 
56
47
  # create people OpenStudio object and set identifier
@@ -97,4 +88,4 @@ module FromHoneybee
97
88
  end
98
89
 
99
90
  end #PeopleAbridged
100
- end #FromHoneybee
91
+ end #Honeybee