urbanopt-reporting 0.3.5 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f3bd0a381b1713f28796ac103c6b193c00a87c0ab75084bb49db62654a6f2906
4
- data.tar.gz: 8672b851b4a5c906c2954bcb42fad185044f4b89c536e545aba185dffb0afa6b
3
+ metadata.gz: 62dbeebffeb4088f111f04c86062b6c2db3a9f061ccf7dc6a84b1a5824456272
4
+ data.tar.gz: 705785c0bdbe0725ab6814be1a263627f1daf64d8cddab12efce59276bdca1bf
5
5
  SHA512:
6
- metadata.gz: 57bf6dadcd3d1908de6e406bd0bcdf6fd3cf0141cb6858818dc440a4b3cdf1b22d740f06353112181f8d5b3db53a7bdaeb0d890dc0b4b71c6f3103c251584a74
7
- data.tar.gz: c3602e94784b2d91499cd7dd439f7ae24131da774241b5a0e685cb60e7a3eb00fe2d9d237431fb4430ce084ba5b678cb2032a79f5734b35c2a4600d3f82f9668
6
+ metadata.gz: a76f98043801029d98477f18fa123aafd5f84fc46977b5ebb2ee946d1d09b68d7d560e392e87418742abc66faf7ebc8df9cd9be65e1d18e9183e0a259d7d353e
7
+ data.tar.gz: 87e1cd2f3615e3845f50c7af04d685c72cc4242bb5d545f20c6821807cf55196c65a4a328534cb850069225d2653b2d1b4872cf4d3f07d7e9deea85c3502f4a8
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # URBANopt Reporting Gem
2
2
 
3
+ ## Version 0.3.6
4
+
5
+ Date Range: 02/05/21 - 02/11/21
6
+
7
+ - Fixed [#64]( https://github.com/urbanopt/urbanopt-reporting-gem/issues/64 ), EnergyPlus changed output fuel names in version 9.4
8
+
3
9
  ## Version 0.3.5
4
10
 
5
11
  Date Range: 01/16/21 - 02/04/21
@@ -101,10 +101,9 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
101
101
  def fuel_types
102
102
  fuel_types = {
103
103
  'Electricity' => 'Electricity',
104
- 'Gas' => 'Natural Gas',
105
- 'FuelOil#2' => 'Fuel Oil #2',
104
+ 'NaturalGas' => 'Natural Gas',
105
+ 'FuelOilNo2' => 'Fuel Oil #2',
106
106
  'Propane' => 'Propane',
107
- 'AdditionalFuel' => 'Additional Fuel',
108
107
  'DistrictCooling' => 'District Cooling',
109
108
  'DistrictHeating' => 'District Heating',
110
109
  'Water' => 'Water'
@@ -201,7 +200,6 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
201
200
  result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Gas:Facility,#{reporting_frequency};").get
202
201
  result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,DistrictCooling:Facility,#{reporting_frequency};").get
203
202
  result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,DistrictHeating:Facility,#{reporting_frequency};").get
204
-
205
203
 
206
204
  # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Cooling:Electricity,#{reporting_frequency};").get
207
205
  # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Heating:Electricity,#{reporting_frequency};").get
@@ -211,11 +209,11 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
211
209
  # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Fans:Electricity,#{reporting_frequency};").get
212
210
  # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Pumps:Electricity,#{reporting_frequency};").get
213
211
  # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,WaterSystems:Electricity,#{reporting_frequency};").get
214
- # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Heating:Gas,#{reporting_frequency};").get
215
- # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,WaterSystems:Gas,#{reporting_frequency};").get
216
- # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,InteriorEquipment:Gas,#{reporting_frequency};").get
212
+ # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,Heating:NaturalGas,#{reporting_frequency};").get
213
+ # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,WaterSystems:NaturalGas,#{reporting_frequency};").get
214
+ # result << OpenStudio::IdfObject.load("Output:Meter:MeterFileOnly,InteriorEquipment:NaturalGas,#{reporting_frequency};").get
217
215
  result << OpenStudio::IdfObject.load('Output:Variable,*,Heating Coil Heating Rate,hourly; !- HVAC Average [W];').get
218
- #result << OpenStudio::IdfObject.load("Output:Variable,*,Exterior Equipment:Electric Vehicles,#{reporting_frequency};").get
216
+ # result << OpenStudio::IdfObject.load("Output:Variable,*,Exterior Equipment:Electric Vehicles,#{reporting_frequency};").get
219
217
 
220
218
  timeseries_data = ['District Cooling Chilled Water Rate', 'District Cooling Mass Flow Rate',
221
219
  'District Cooling Inlet Temperature', 'District Cooling Outlet Temperature',
@@ -223,11 +221,10 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
223
221
  'District Heating Inlet Temperature', 'District Heating Outlet Temperature', 'Cooling Coil Total Cooling Rate',
224
222
  'Heating Coil Heating Rate', 'ExteriorEquipment:Electricity']
225
223
 
226
-
227
224
  tes_timeseries_data = ['Ice Thermal Storage End Fraction', 'Cooling coil Ice Thermal Storage End Fraction']
228
-
225
+
229
226
  ev_timeseries_data = ['Exterior Equipment:Electric Vehicles']
230
-
227
+
231
228
  timeseries_data += tes_timeseries_data
232
229
 
233
230
  timeseries_data.each do |ts|
@@ -646,7 +643,7 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
646
643
  feature_report.reporting_periods[0].propane_kwh = convert_units(propane, 'GJ', 'kWh') unless propane.nil?
647
644
 
648
645
  # fuel_oil
649
- fuel_oil = sql_query(runner, sql_file, 'EnergyMeters', "TableName='Annual and Peak Values - Other' AND RowName='FuelOil#2:Facility' AND ColumnName='Annual Value'")
646
+ fuel_oil = sql_query(runner, sql_file, 'EnergyMeters', "TableName='Annual and Peak Values - Other' AND RowName='FuelOilNo2:Facility' AND ColumnName='Annual Value'")
650
647
  feature_report.reporting_periods[0].fuel_oil_kwh = 0.0
651
648
  feature_report.reporting_periods[0].fuel_oil_kwh = convert_units(fuel_oil, 'GJ', 'kWh') unless fuel_oil.nil?
652
649
 
@@ -806,9 +803,9 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
806
803
  requested_timeseries_names = [
807
804
  'Electricity:Facility',
808
805
  'ElectricityProduced:Facility',
809
- 'Gas:Facility',
806
+ 'NaturalGas:Facility',
810
807
  'Propane:Facility',
811
- 'FuelOil#2:Facility',
808
+ 'FuelOilNo2:Facility',
812
809
  'OtherFuels:Facility',
813
810
  'Cooling:Electricity',
814
811
  'Heating:Electricity',
@@ -820,18 +817,18 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
820
817
  'Pumps:Electricity',
821
818
  'WaterSystems:Electricity',
822
819
  'HeatRejection:Electricity',
823
- 'HeatRejection:Gas',
824
- 'Heating:Gas',
825
- 'WaterSystems:Gas',
826
- 'InteriorEquipment:Gas',
820
+ 'HeatRejection:NaturalGas',
821
+ 'Heating:NaturalGas',
822
+ 'WaterSystems:NaturalGas',
823
+ 'InteriorEquipment:NaturalGas',
827
824
  'HeatRejection:Propane',
828
825
  'Heating:Propane',
829
826
  'WaterSystems:Propane',
830
827
  'InteriorEquipment:Propane',
831
- 'HeatRejection:FuelOil#2',
832
- 'Heating:FuelOil#2',
833
- 'WaterSystems:FuelOil#2',
834
- 'InteriorEquipment:FuelOil#2',
828
+ 'HeatRejection:FuelOilNo2',
829
+ 'Heating:FuelOilNo2',
830
+ 'WaterSystems:FuelOilNo2',
831
+ 'InteriorEquipment:FuelOilNo2',
835
832
  'HeatRejection:OtherFuels',
836
833
  'Heating:OtherFuels',
837
834
  'WaterSystems:OtherFuels',
@@ -975,7 +972,7 @@ class DefaultFeatureReports < OpenStudio::Measure::ReportingMeasure
975
972
  # unit conversion
976
973
  old_unit = ts.get.units if ts.is_initialized
977
974
 
978
- if timeseries_name.include?('Gas') || timeseries_name.include?('Propane') || timeseries_name.include?('FuelOil#2') || timeseries_name.include?('OtherFuels')
975
+ if timeseries_name.include?('NaturalGas') || timeseries_name.include?('Propane') || timeseries_name.include?('FuelOilNo2') || timeseries_name.include?('OtherFuels')
979
976
  new_unit = 'kBtu'
980
977
  else
981
978
  new_unit = case old_unit.to_s
@@ -35,7 +35,6 @@
35
35
 
36
36
  require 'erb'
37
37
 
38
-
39
38
  # This measure is originally from https://github.com/urbanopt/DES_HVAC
40
39
  # start the measure
41
40
  class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
@@ -89,13 +88,13 @@ class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
89
88
  result << OpenStudio::IdfObject.load('Output:Variable,,Site Outdoor Air Relative Humidity,timestep;').get
90
89
  result << OpenStudio::IdfObject.load('Output:Meter,Cooling:Electricity,timestep;').get
91
90
  result << OpenStudio::IdfObject.load('Output:Meter,Heating:Electricity,timestep;').get
92
- result << OpenStudio::IdfObject.load('Output:Meter,Heating:Gas,timestep;').get
91
+ result << OpenStudio::IdfObject.load('Output:Meter,Heating:NaturalGas,timestep;').get
93
92
  result << OpenStudio::IdfObject.load('Output:Meter,InteriorLights:Electricity,timestep;').get
94
93
  result << OpenStudio::IdfObject.load('Output:Meter,Fans:Electricity,timestep;').get
95
94
  result << OpenStudio::IdfObject.load('Output:Meter,InteriorEquipment:Electricity,timestep;').get # Joules
96
95
  result << OpenStudio::IdfObject.load('Output:Meter,ExteriorLighting:Electricity,timestep;').get # Joules
97
96
  result << OpenStudio::IdfObject.load('Output:Meter,Electricity:Facility,timestep;').get # Joules
98
- result << OpenStudio::IdfObject.load('Output:Meter,Electricity:Facility,timestep;').get ##Using this for data at timestep interval
97
+ result << OpenStudio::IdfObject.load('Output:Meter,Electricity:Facility,timestep;').get # #Using this for data at timestep interval
99
98
  result << OpenStudio::IdfObject.load('Output:Meter,Gas:Facility,timestep;').get # Joules
100
99
  result << OpenStudio::IdfObject.load('Output:Meter,Heating:EnergyTransfer,timestep;').get # Joules
101
100
  result << OpenStudio::IdfObject.load('Output:Meter,WaterSystems:EnergyTransfer,timestep;').get # Joules
@@ -215,8 +214,8 @@ class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
215
214
  end
216
215
  model = model.get
217
216
 
218
- timesteps_per_hour=model.getTimestep.numberOfTimestepsPerHour.to_i
219
- timestep=60/timesteps_per_hour #timestep in minutes
217
+ timesteps_per_hour = model.getTimestep.numberOfTimestepsPerHour.to_i
218
+ timestep = 60 / timesteps_per_hour # timestep in minutes
220
219
 
221
220
  sqlFile = runner.lastEnergyPlusSqlFile
222
221
  if sqlFile.empty?
@@ -243,7 +242,7 @@ class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
243
242
  ts = sqlFile.timeSeries('RUN PERIOD 1', 'Zone Timestep', attribute_name)
244
243
  if ts.empty?
245
244
  runner.registerError("This feature does not have the attribute '#{attribute_name}' to enable this measure to work." \
246
- "To resolve, simulate a building with electricity or remove this measure from your workflow.")
245
+ 'To resolve, simulate a building with electricity or remove this measure from your workflow.')
247
246
  else
248
247
  ts = ts.first
249
248
  dt_base = nil
@@ -258,7 +257,7 @@ class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
258
257
  dt.date.dayOfWeek.value,
259
258
  dt.time.hours,
260
259
  dt.time.minutes,
261
- dt_current.to_time.to_i - dt_base.to_time.to_i + timestep*60
260
+ dt_current.to_time.to_i - dt_base.to_time.to_i + timestep * 60
262
261
  ]
263
262
  end
264
263
  end
@@ -267,7 +266,7 @@ class ExportModelicaLoads < OpenStudio::Measure::ReportingMeasure
267
266
  extract_timeseries_into_matrix(sqlFile, rows, 'Site Outdoor Air Drybulb Temperature', 'Environment', 0, timestep)
268
267
  extract_timeseries_into_matrix(sqlFile, rows, 'Site Outdoor Air Relative Humidity', 'Environment', 0, timestep)
269
268
  extract_timeseries_into_matrix(sqlFile, rows, 'Heating:Electricity', nil, 0, timestep)
270
- extract_timeseries_into_matrix(sqlFile, rows, 'Heating:Gas', nil, 0, timestep)
269
+ extract_timeseries_into_matrix(sqlFile, rows, 'Heating:NaturalGas', nil, 0, timestep)
271
270
  extract_timeseries_into_matrix(sqlFile, rows, 'Cooling:Electricity', nil, 0, timestep)
272
271
  extract_timeseries_into_matrix(sqlFile, rows, 'Electricity:Facility', nil, 0, timestep)
273
272
  extract_timeseries_into_matrix(sqlFile, rows, 'Gas:Facility', nil, 0, timestep)
@@ -150,7 +150,7 @@ class ExportTimeSeriesLoadsCSV < OpenStudio::Measure::ReportingMeasure
150
150
  result << OpenStudio::IdfObject.load('Output:Meter,Cooling:Electricity,hourly;').get
151
151
  result << OpenStudio::IdfObject.load('Output:Meter,Electricity:Facility,timestep;').get ##Using this for data at timestep interval
152
152
  result << OpenStudio::IdfObject.load('Output:Meter,Heating:Electricity,hourly;').get
153
- result << OpenStudio::IdfObject.load('Output:Meter,Heating:Gas,hourly;').get
153
+ result << OpenStudio::IdfObject.load('Output:Meter,Heating:NaturalGas,hourly;').get
154
154
  result << OpenStudio::IdfObject.load('Output:Meter,InteriorLights:Electricity,hourly;').get
155
155
  result << OpenStudio::IdfObject.load('Output:Meter,Fans:Electricity,hourly;').get
156
156
  result << OpenStudio::IdfObject.load('Output:Meter,InteriorEquipment:Electricity,hourly;').get # Joules
@@ -156,7 +156,6 @@ module URBANopt
156
156
  # +other+ - _EndUse_ - An object of EndUse class.
157
157
  ##
158
158
  def merge_end_use!(other)
159
-
160
159
  @heating = add_values(@heating, other.heating)
161
160
  @cooling = add_values(@cooling, other.cooling)
162
161
  @interior_lighting = add_values(@interior_lighting, other.interior_lighting)
@@ -1,9 +1,9 @@
1
1
  Datetime
2
2
  Electricity:Facility
3
3
  ElectricityProduced:Facility
4
- Gas:Facility
4
+ NaturalGas:Facility
5
5
  Propane:Facility
6
- FuelOil#2:Facility
6
+ FuelOilNo2:Facility
7
7
  OtherFuels:Facility
8
8
  Cooling:Electricity
9
9
  Heating:Electricity
@@ -15,18 +15,18 @@ Fans:Electricity
15
15
  Pumps:Electricity
16
16
  WaterSystems:Electricity
17
17
  HeatRejection:Electricity
18
- HeatRejection:Gas
19
- Heating:Gas
20
- WaterSystems:Gas
21
- InteriorEquipment:Gas
18
+ HeatRejection:NaturalGas
19
+ Heating:NaturalGas
20
+ WaterSystems:NaturalGas
21
+ InteriorEquipment:NaturalGas
22
22
  HeatRejection:Propane
23
23
  Heating:Propane
24
24
  WaterSystems:Propane
25
25
  InteriorEquipment:Propane
26
- HeatRejection:FuelOil#2
27
- Heating:FuelOil#2
28
- WaterSystems:FuelOil#2
29
- InteriorEquipment:FuelOil#2
26
+ HeatRejection:FuelOilNo2
27
+ Heating:FuelOilNo2
28
+ WaterSystems:FuelOilNo2
29
+ InteriorEquipment:FuelOilNo2
30
30
  HeatRejection:OtherFuels
31
31
  Heating:OtherFuels
32
32
  WaterSystems:OtherFuels
@@ -30,6 +30,6 @@
30
30
 
31
31
  module URBANopt
32
32
  module Reporting
33
- VERSION = '0.3.5'.freeze
33
+ VERSION = '0.3.6'.freeze
34
34
  end
35
35
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urbanopt-reporting
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rawad El Kontar
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2021-02-04 00:00:00.000000000 Z
12
+ date: 2021-02-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler