honeybee-openstudio 2.6.9 → 2.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pull_request.yaml +25 -0
  3. data/.gitignore +1 -0
  4. data/README.md +5 -5
  5. data/Rakefile +2 -7
  6. data/doc_templates/README.md.erb +42 -0
  7. data/doc_templates/copyright_erb.txt +2 -2
  8. data/doc_templates/copyright_ruby.txt +2 -2
  9. data/honeybee-openstudio.gemspec +11 -7
  10. data/lib/files/Honeybee.rb +7 -7
  11. data/lib/from_openstudio.rb +49 -0
  12. data/lib/from_openstudio/geometry/aperture.rb +136 -0
  13. data/lib/from_openstudio/geometry/door.rb +136 -0
  14. data/lib/from_openstudio/geometry/face.rb +174 -0
  15. data/lib/from_openstudio/geometry/room.rb +121 -0
  16. data/lib/from_openstudio/geometry/shade.rb +87 -0
  17. data/lib/from_openstudio/model.rb +123 -0
  18. data/lib/from_openstudio/model_object.rb +43 -0
  19. data/lib/from_openstudio/simulation/design_day.rb +123 -0
  20. data/lib/from_openstudio/simulation/parameter_model.rb +93 -0
  21. data/lib/from_openstudio/simulation/simulation_output.rb +67 -0
  22. data/lib/{from_honeybee.rb → honeybee.rb} +47 -40
  23. data/lib/{from_honeybee → honeybee}/_defaults/energy_default.json +0 -0
  24. data/lib/{from_honeybee → honeybee}/_defaults/model.json +0 -0
  25. data/lib/{from_honeybee → honeybee}/_defaults/simulation-parameter.json +1 -0
  26. data/lib/honeybee/construction/air.rb +42 -0
  27. data/lib/honeybee/construction/opaque.rb +42 -0
  28. data/lib/honeybee/construction/shade.rb +42 -0
  29. data/lib/honeybee/construction/window.rb +51 -0
  30. data/lib/honeybee/construction/windowshade.rb +43 -0
  31. data/lib/honeybee/construction_set.rb +42 -0
  32. data/lib/{from_honeybee → honeybee}/extension.rb +5 -5
  33. data/lib/honeybee/geometry/aperture.rb +42 -0
  34. data/lib/honeybee/geometry/door.rb +42 -0
  35. data/lib/honeybee/geometry/face.rb +48 -0
  36. data/lib/honeybee/geometry/room.rb +56 -0
  37. data/lib/honeybee/geometry/shade.rb +42 -0
  38. data/lib/honeybee/hvac/ideal_air.rb +42 -0
  39. data/lib/honeybee/hvac/template.rb +73 -0
  40. data/lib/honeybee/load/electric_equipment.rb +42 -0
  41. data/lib/honeybee/load/gas_equipment.rb +42 -0
  42. data/lib/honeybee/load/infiltration.rb +42 -0
  43. data/lib/{from_honeybee/simulation/extension.rb → honeybee/load/lighting.rb} +10 -13
  44. data/lib/honeybee/load/people.rb +42 -0
  45. data/lib/honeybee/load/setpoint_humidistat.rb +46 -0
  46. data/lib/honeybee/load/setpoint_thermostat.rb +46 -0
  47. data/lib/honeybee/load/ventilation.rb +42 -0
  48. data/lib/honeybee/material/opaque.rb +42 -0
  49. data/lib/honeybee/material/opaque_no_mass.rb +42 -0
  50. data/lib/honeybee/material/window_blind.rb +42 -0
  51. data/lib/honeybee/material/window_gas.rb +42 -0
  52. data/lib/honeybee/material/window_gas_custom.rb +42 -0
  53. data/lib/honeybee/material/window_gas_mixture.rb +42 -0
  54. data/lib/honeybee/material/window_glazing.rb +42 -0
  55. data/lib/honeybee/material/window_shade.rb +42 -0
  56. data/lib/honeybee/material/window_simpleglazsys.rb +42 -0
  57. data/lib/honeybee/model.rb +87 -0
  58. data/lib/{from_honeybee → honeybee}/model_object.rb +16 -18
  59. data/lib/honeybee/program_type.rb +56 -0
  60. data/lib/honeybee/schedule/fixed_interval.rb +42 -0
  61. data/lib/honeybee/schedule/ruleset.rb +42 -0
  62. data/lib/honeybee/schedule/type_limit.rb +42 -0
  63. data/lib/honeybee/simulation/design_day.rb +42 -0
  64. data/lib/honeybee/simulation/parameter_model.rb +86 -0
  65. data/lib/honeybee/simulation/simulation_output.rb +42 -0
  66. data/lib/honeybee/ventcool/control.rb +42 -0
  67. data/lib/honeybee/ventcool/opening.rb +46 -0
  68. data/lib/honeybee/ventcool/simulation.rb +42 -0
  69. data/lib/measures/from_honeybee_model/LICENSE.md +18 -22
  70. data/lib/measures/from_honeybee_model/measure.rb +4 -4
  71. data/lib/measures/from_honeybee_model/measure.xml +14 -37
  72. data/lib/measures/from_honeybee_model/tests/from_honeybee_model_test.rb +2 -2
  73. data/lib/measures/from_honeybee_simulation_parameter/LICENSE.md +18 -22
  74. data/lib/measures/from_honeybee_simulation_parameter/measure.rb +4 -4
  75. data/lib/measures/from_honeybee_simulation_parameter/measure.xml +15 -20
  76. data/lib/measures/from_honeybee_simulation_parameter/tests/from_honeybee_simulation_parameter_test.rb +3 -3
  77. data/lib/to_openstudio.rb +92 -0
  78. data/lib/{from_honeybee → to_openstudio}/construction/air.rb +7 -16
  79. data/lib/{from_honeybee → to_openstudio}/construction/opaque.rb +9 -19
  80. data/lib/{from_honeybee → to_openstudio}/construction/shade.rb +17 -26
  81. data/lib/{from_honeybee → to_openstudio}/construction/window.rb +12 -21
  82. data/lib/{from_honeybee → to_openstudio}/construction/windowshade.rb +8 -23
  83. data/lib/{from_honeybee → to_openstudio}/construction_set.rb +11 -23
  84. data/lib/{from_honeybee → to_openstudio}/geometry/aperture.rb +22 -32
  85. data/lib/{from_honeybee → to_openstudio}/geometry/door.rb +21 -31
  86. data/lib/{from_honeybee → to_openstudio}/geometry/face.rb +11 -28
  87. data/lib/{from_honeybee → to_openstudio}/geometry/room.rb +15 -38
  88. data/lib/{from_honeybee → to_openstudio}/geometry/shade.rb +8 -18
  89. data/lib/{from_honeybee → to_openstudio}/hvac/Model.hvac.rb +2 -2
  90. data/lib/{from_honeybee → to_openstudio}/hvac/ideal_air.rb +10 -19
  91. data/lib/{from_honeybee → to_openstudio}/hvac/template.rb +9 -43
  92. data/lib/{from_honeybee → to_openstudio}/load/electric_equipment.rb +12 -21
  93. data/lib/{from_honeybee → to_openstudio}/load/gas_equipment.rb +13 -22
  94. data/lib/{from_honeybee → to_openstudio}/load/infiltration.rb +14 -23
  95. data/lib/{from_honeybee → to_openstudio}/load/lighting.rb +10 -19
  96. data/lib/{from_honeybee → to_openstudio}/load/people.rb +9 -18
  97. data/lib/{from_honeybee → to_openstudio}/load/setpoint_humidistat.rb +8 -17
  98. data/lib/{from_honeybee → to_openstudio}/load/setpoint_thermostat.rb +8 -17
  99. data/lib/{from_honeybee → to_openstudio}/load/ventilation.rb +11 -20
  100. data/lib/{from_honeybee → to_openstudio}/material/opaque.rb +7 -16
  101. data/lib/{from_honeybee → to_openstudio}/material/opaque_no_mass.rb +8 -17
  102. data/lib/{from_honeybee → to_openstudio}/material/window_blind.rb +27 -36
  103. data/lib/{from_honeybee → to_openstudio}/material/window_gas.rb +8 -17
  104. data/lib/{from_honeybee → to_openstudio}/material/window_gas_custom.rb +10 -20
  105. data/lib/{from_honeybee → to_openstudio}/material/window_gas_mixture.rb +9 -18
  106. data/lib/{from_honeybee → to_openstudio}/material/window_glazing.rb +21 -30
  107. data/lib/{from_honeybee → to_openstudio}/material/window_shade.rb +17 -26
  108. data/lib/{from_honeybee → to_openstudio}/material/window_simpleglazsys.rb +7 -16
  109. data/lib/{from_honeybee → to_openstudio}/model.rb +13 -103
  110. data/lib/to_openstudio/model_object.rb +52 -0
  111. data/lib/{from_honeybee → to_openstudio}/program_type.rb +14 -34
  112. data/lib/{from_honeybee → to_openstudio}/schedule/fixed_interval.rb +11 -21
  113. data/lib/{from_honeybee → to_openstudio}/schedule/ruleset.rb +43 -44
  114. data/lib/{from_honeybee → to_openstudio}/schedule/type_limit.rb +9 -21
  115. data/lib/{from_honeybee/simulation/designday.rb → to_openstudio/simulation/design_day.rb} +7 -16
  116. data/lib/{from_honeybee/simulation/parameter.rb → to_openstudio/simulation/parameter_model.rb} +8 -57
  117. data/lib/{from_honeybee → to_openstudio}/ventcool/control.rb +8 -17
  118. data/lib/{from_honeybee → to_openstudio}/ventcool/opening.rb +8 -22
  119. data/lib/{from_honeybee → to_openstudio}/ventcool/simulation.rb +7 -16
  120. metadata +105 -134
@@ -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
@@ -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,22 +29,13 @@
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/setpoint_humidistat'
34
33
 
35
- module FromHoneybee
36
- class SetpointHumidistat < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class SetpointHumidistat
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'SetpointAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:SetpointAbridged][:properties]
46
- end
47
-
48
39
  def to_openstudio(openstudio_model)
49
40
 
50
41
  # create humidistat openstudio object
@@ -72,4 +63,4 @@ module FromHoneybee
72
63
  end
73
64
 
74
65
  end #SetpointHumidistat
75
- end #FromHoneybee
66
+ 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,22 +29,13 @@
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/setpoint_thermostat'
33
+
34
+ require 'to_openstudio/model_object'
34
35
 
35
- module FromHoneybee
36
+ module Honeybee
36
37
  class SetpointThermostat < ModelObject
37
- attr_reader :errors, :warnings
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'SetpointAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:SetpointAbridged][:properties]
46
- end
47
-
48
39
  def to_openstudio(openstudio_model)
49
40
 
50
41
  # create thermostat openstudio object
@@ -56,7 +47,7 @@ module FromHoneybee
56
47
  heat_sch_object = heat_sch.get
57
48
  os_thermostat.setHeatingSetpointTemperatureSchedule(heat_sch_object)
58
49
  end
59
-
50
+
60
51
  # assign cooling setpoint schedule
61
52
  cool_sch = openstudio_model.getScheduleByName(@hash[:cooling_schedule])
62
53
  unless cool_sch.empty?
@@ -68,4 +59,4 @@ module FromHoneybee
68
59
  end
69
60
 
70
61
  end #SetpointThermostat
71
- end #FromHoneybee
62
+ 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/ventilation'
34
33
 
35
- module FromHoneybee
36
- class VentilationAbridged < ModelObject
37
- attr_reader :errors, :warnings
34
+ require 'to_openstudio/model_object'
35
+
36
+ module Honeybee
37
+ class VentilationAbridged
38
38
 
39
- def initialize(hash = {})
40
- super(hash)
41
- raise "Incorrect model type '#{@type}'" unless @type == 'VentilationAbridged'
42
- end
43
-
44
- def defaults
45
- @@schema[:components][:schemas][:VentilationAbridged][:properties]
46
- end
47
-
48
39
  def find_existing_openstudio_object(openstudio_model)
49
40
  model_vent = openstudio_model.getDesignSpecificationOutdoorAirByName(@hash[:identifier])
50
41
  return model_vent.get unless model_vent.empty?
51
42
  nil
52
43
  end
53
-
54
- def to_openstudio(openstudio_model)
55
- # create ventilation openstudio object and set identifier
44
+
45
+ def to_openstudio(openstudio_model)
46
+ # create ventilation openstudio object and set identifier
56
47
  os_vent = OpenStudio::Model::DesignSpecificationOutdoorAir.new(openstudio_model)
57
48
  os_vent.setName(@hash[:identifier])
58
49
 
@@ -93,4 +84,4 @@ module FromHoneybee
93
84
  end
94
85
 
95
86
  end #VentilationAbridged
96
- end #FromHoneybee
87
+ end #Honeybee