earth 1.1.1 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +12 -0
- data/data/residence/recs_response_groupings.csv +52 -0
- data/earth.gemspec +1 -1
- data/lib/earth/automobile/automobile_make_model_year_variant/data_miner.rb +1 -1
- data/lib/earth/industry/mecs_energy.rb +26 -16
- data/lib/earth/{insolation_scopes.rb → irradiance_scopes.rb} +1 -1
- data/lib/earth/loader.rb +5 -4
- data/lib/earth/locality/{direct_normal_insolation.rb → direct_normal_irradiance.rb} +4 -4
- data/lib/earth/locality/{direct_normal_insolation → direct_normal_irradiance}/data_miner.rb +4 -4
- data/lib/earth/locality/electricity_mix/data_miner.rb +8 -8
- data/lib/earth/locality/{global_horizontal_insolation.rb → global_horizontal_irradiance.rb} +4 -4
- data/lib/earth/locality/{global_horizontal_insolation → global_horizontal_irradiance}/data_miner.rb +4 -4
- data/lib/earth/locality/{photovoltaic_insolation.rb → photovoltaic_irradiance.rb} +4 -4
- data/lib/earth/locality/{photovoltaic_insolation → photovoltaic_irradiance}/data_miner.rb +4 -4
- data/lib/earth/locality/state.rb +3 -1
- data/lib/earth/locality/state/data_miner.rb +15 -8
- data/lib/earth/locality/zip_code/data_miner.rb +1 -1
- data/lib/earth/residence/recs_2009_response.rb +655 -0
- data/lib/earth/residence/recs_2009_response/data_miner.rb +402 -0
- data/lib/earth/residence/recs_2009_response/parser.rb +879 -0
- data/lib/earth/version.rb +1 -1
- data/spec/earth/locality/direct_normal_irradiance_spec.rb +8 -0
- data/spec/earth/locality/global_horizontal_irradiance_spec.rb +8 -0
- data/spec/earth/locality/photovoltaic_irradiance_spec.rb +8 -0
- data/spec/earth/locality/state_spec.rb +7 -0
- data/spec/earth/residence/recs_2009_response_spec.rb +388 -0
- data/spec/earth_spec.rb +1 -1
- metadata +386 -246
- data/ar17.html +0 -2093
- data/spec/earth/locality/direct_normal_insolation_spec.rb +0 -8
- data/spec/earth/locality/global_horizontal_insolation_spec.rb +0 -8
- data/spec/earth/locality/photovoltaic_insolation_spec.rb +0 -8
data/lib/earth/version.rb
CHANGED
@@ -37,5 +37,12 @@ describe State do
|
|
37
37
|
State.find('MT').electricity_loss_factor.should be_within(5e-6).of(0.08094)
|
38
38
|
State.find('NM').electricity_loss_factor.should be_within(5e-6).of(0.08007)
|
39
39
|
end
|
40
|
+
|
41
|
+
it 'should have a RECS 2009 response grouping' do
|
42
|
+
State.find('VT').recs_grouping_id.should == 1
|
43
|
+
State.find('CA').recs_grouping_id.should == 26
|
44
|
+
State.find('MT').recs_grouping_id.should == 23
|
45
|
+
State.find('NM').recs_grouping_id.should == 25
|
46
|
+
end
|
40
47
|
end
|
41
48
|
end
|
@@ -0,0 +1,388 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'earth/residence/recs_2009_response'
|
3
|
+
|
4
|
+
describe Recs2009Response do
|
5
|
+
describe "Sanity check", :sanity => true do
|
6
|
+
let(:recs) { Recs2009Response }
|
7
|
+
let(:total) { recs.count }
|
8
|
+
it { total.should == 12083 }
|
9
|
+
|
10
|
+
it { recs.where('year_built > year_occupied').count.should == 0 }
|
11
|
+
|
12
|
+
it 'should never have negative values' do
|
13
|
+
recs.attribute_names.each do |attribute|
|
14
|
+
raise "#{attribute} has negative values" if recs.where("#{attribute} < 0").count > 0
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should have at least one non-nil value for each attribute' do
|
19
|
+
recs.attribute_names.each do |attribute|
|
20
|
+
raise "#{attribute} is always nil" if recs.where("#{attribute} IS NOT NULL").count == 0
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'should always have a secondary heater if heater portion is present' do
|
25
|
+
recs.where('heater_portion IS NOT NULL AND heater_2 IS NULL').count.should == 0
|
26
|
+
recs.where('heater_portion IS NULL AND heater_2 IS NOT NULL').count.should == 0
|
27
|
+
end
|
28
|
+
|
29
|
+
# spot check
|
30
|
+
let(:record_87) { recs.find 87 }
|
31
|
+
it { record_87.weighting.should be_within(5e-3).of(4357.04) }
|
32
|
+
it { record_87.census_region_number.should == 4 }
|
33
|
+
it { record_87.census_division_number.should == 8 }
|
34
|
+
it { record_87.recs_grouping_id.should == 22 }
|
35
|
+
it { record_87.urban_rural.should == 'Rural' }
|
36
|
+
it { record_87.metro_micro.should == 'Metro' }
|
37
|
+
it { record_87.climate_region_id.should == 1 }
|
38
|
+
it { record_87.climate_zone_id.should == 1 }
|
39
|
+
it { record_87.hdd_2009.should be_within(5e-3).of(4311.67) }
|
40
|
+
it { record_87.cdd_2009.should be_within(5e-5).of(20.5556) }
|
41
|
+
it { record_87.hdd_avg.should be_within(5e-3).of(4053.33) }
|
42
|
+
it { record_87.cdd_avg.should be_within(5e-5).of(79.4444) }
|
43
|
+
it { record_87.building_type.should == 'Single-family Detached' }
|
44
|
+
it { record_87.converted_house.should == nil }
|
45
|
+
it { record_87.condo_coop.should == nil }
|
46
|
+
it { record_87.apartments.should == nil }
|
47
|
+
it { record_87.year_built.should == 1979 }
|
48
|
+
it { record_87.year_occupied.should == 1995 }
|
49
|
+
it { record_87.building_floors.should == 2 }
|
50
|
+
it { record_87.levels.should == 2 }
|
51
|
+
it { record_87.area.should be_within(5e-4).of(281.682) }
|
52
|
+
it { record_87.rooms.should == 7 }
|
53
|
+
it { record_87.bedrooms.should == 3 }
|
54
|
+
it { record_87.bathrooms.should == 2 }
|
55
|
+
it { record_87.half_baths.should == 0 }
|
56
|
+
it { record_87.other_rooms.should == 4 }
|
57
|
+
it { record_87.attic_rooms.should == 0 }
|
58
|
+
it { record_87.basement_rooms.should == 1 }
|
59
|
+
it { record_87.pool.should == false }
|
60
|
+
it { record_87.shaded.should == true }
|
61
|
+
it { record_87.garage_type.should == 'Attached' }
|
62
|
+
it { record_87.garage_size.should == 'Two-car' }
|
63
|
+
it { record_87.slab.should == true }
|
64
|
+
it { record_87.crawlspace.should == false }
|
65
|
+
it { record_87.basement_type.should == 'Finished' }
|
66
|
+
it { record_87.wall_material.should == 'Siding (Aluminum, Vinyl, Steel)' }
|
67
|
+
it { record_87.roof_material.should == 'Composition Shingles' }
|
68
|
+
it { record_87.attic_type.should == 'Unfinished' }
|
69
|
+
it { record_87.windows.should == 35 }
|
70
|
+
it { record_87.window_panes.should == 2 }
|
71
|
+
it { record_87.sliding_doors.should == 1 }
|
72
|
+
it { record_87.insulation.should == 'Good' }
|
73
|
+
it { record_87.drafty.should == 'Some of the time' }
|
74
|
+
it { record_87.high_ceiling.should == true }
|
75
|
+
it { record_87.heater.should == 'Heating Stove' }
|
76
|
+
it { record_87.heater_age.should == 12 }
|
77
|
+
it { record_87.heater_fuel.should == 'Wood' }
|
78
|
+
it { record_87.heater_shared.should == false }
|
79
|
+
it { record_87.heater_thermostats.should == 0 }
|
80
|
+
it { record_87.heater_portion.should be_within(5e-2).of(1.0) }
|
81
|
+
it { record_87.heater_2.should == 'Built-In Electric Units' }
|
82
|
+
it { record_87.heater_2_fuel.should == 'Electricity' }
|
83
|
+
it { record_87.heater_3.should == nil }
|
84
|
+
it { record_87.heater_3_fuel.should == nil }
|
85
|
+
it { record_87.heater_4.should == nil }
|
86
|
+
it { record_87.heater_4_fuel.should == nil }
|
87
|
+
it { record_87.heater_5.should == nil }
|
88
|
+
it { record_87.heater_5_fuel.should == nil }
|
89
|
+
it { record_87.heater_6.should == nil }
|
90
|
+
it { record_87.heater_6_fuel.should == nil }
|
91
|
+
it { record_87.cooler_central_age.should == nil }
|
92
|
+
it { record_87.cooler_central_shared.should == nil }
|
93
|
+
it { record_87.cooler_ac_units.should == 0 }
|
94
|
+
it { record_87.cooler_ac_age.should == nil }
|
95
|
+
it { record_87.cooler_ac_energy_star.should == nil }
|
96
|
+
it { record_87.fans.should == 3 }
|
97
|
+
it { record_87.water_heaters_tankless.should == 0 }
|
98
|
+
it { record_87.water_heaters_storage.should == 2 }
|
99
|
+
it { record_87.water_heater.should == 'Storage' }
|
100
|
+
it { record_87.water_heater_fuel.should == 'Solar' }
|
101
|
+
it { record_87.water_heater_age.should == 7 }
|
102
|
+
it { record_87.water_heater_size.should == 'Large (50 gallons or more)' }
|
103
|
+
it { record_87.water_heater_shared.should == false }
|
104
|
+
it { record_87.water_heater_2.should == 'Storage' }
|
105
|
+
it { record_87.water_heater_2_fuel.should == 'Electricity' }
|
106
|
+
it { record_87.water_heater_2_age.should == 1 }
|
107
|
+
it { record_87.water_heater_2_size.should == 'Medium (31 to 49 gallons)' }
|
108
|
+
it { record_87.pool_fuel.should == nil }
|
109
|
+
it { record_87.hot_tub_fuel.should == 'Electricity' }
|
110
|
+
it { record_87.lights_high_use.should == 0 }
|
111
|
+
it { record_87.lights_high_use_efficient.should == 0 }
|
112
|
+
it { record_87.lights_med_use.should == 4 }
|
113
|
+
it { record_87.lights_med_use_efficient.should == 0 }
|
114
|
+
it { record_87.lights_low_use.should == 5 }
|
115
|
+
it { record_87.lights_low_use_efficient.should == 0 }
|
116
|
+
it { record_87.lights_outdoor.should == 0 }
|
117
|
+
it { record_87.lights_outdoor_efficient.should == 0 }
|
118
|
+
it { record_87.cooking_fuel.should == 'Electricity' }
|
119
|
+
it { record_87.stoves.should == 0 }
|
120
|
+
it { record_87.stove_fuel.should == nil }
|
121
|
+
it { record_87.cooktops.should == 1 }
|
122
|
+
it { record_87.cooktop_fuel.should == 'Electricity' }
|
123
|
+
it { record_87.ovens.should == 1 }
|
124
|
+
it { record_87.oven_type.should == 'Manual self-cleaning' }
|
125
|
+
it { record_87.oven_fuel.should == 'Electricity' }
|
126
|
+
it { record_87.outdoor_grill_fuel.should == 'Propane/LPG' }
|
127
|
+
it { record_87.indoor_grill_fuel.should == nil }
|
128
|
+
it { record_87.toaster.should == false }
|
129
|
+
it { record_87.coffee.should == true }
|
130
|
+
it { record_87.fridges.should == 1 }
|
131
|
+
it { record_87.fridge_type.should == 'Full-size, 2 doors, freezer above' }
|
132
|
+
it { record_87.fridge_size.should == 'Medium (15 to 18 cu ft)' }
|
133
|
+
it { record_87.fridge_defrost.should == 'Frost-free' }
|
134
|
+
it { record_87.fridge_door_ice.should == true }
|
135
|
+
it { record_87.fridge_age.should == 7 }
|
136
|
+
it { record_87.fridge_energy_star.should == true }
|
137
|
+
it { record_87.fridge_2_type.should == nil }
|
138
|
+
it { record_87.fridge_2_size.should == nil }
|
139
|
+
it { record_87.fridge_2_defrost.should == nil }
|
140
|
+
it { record_87.fridge_2_age.should == nil }
|
141
|
+
it { record_87.fridge_2_energy_star.should == nil }
|
142
|
+
it { record_87.fridge_3_type.should == nil }
|
143
|
+
it { record_87.fridge_3_size.should == nil }
|
144
|
+
it { record_87.fridge_3_defrost.should == nil }
|
145
|
+
it { record_87.fridge_3_age.should == nil }
|
146
|
+
it { record_87.fridge_3_energy_star.should == nil }
|
147
|
+
it { record_87.freezers.should == 0 }
|
148
|
+
it { record_87.freezer_type.should == nil }
|
149
|
+
it { record_87.freezer_size.should == nil }
|
150
|
+
it { record_87.freezer_defrost.should == nil }
|
151
|
+
it { record_87.freezer_age.should == nil }
|
152
|
+
it { record_87.freezer_2_type.should == nil }
|
153
|
+
it { record_87.freezer_2_size.should == nil }
|
154
|
+
it { record_87.freezer_2_defrost.should == nil }
|
155
|
+
it { record_87.freezer_2_age.should == nil }
|
156
|
+
it { record_87.dishwasher_age.should == 7 }
|
157
|
+
it { record_87.dishwasher_energy_star.should == true }
|
158
|
+
it { record_87.washer_type.should == 'Top-loading' }
|
159
|
+
it { record_87.washer_age.should == 12 }
|
160
|
+
it { record_87.washer_energy_star.should == nil }
|
161
|
+
it { record_87.dryer_fuel.should == 'Electricity' }
|
162
|
+
it { record_87.dryer_age.should == 12 }
|
163
|
+
it { record_87.tvs.should == 3 }
|
164
|
+
it { record_87.tv_size.should == '37 inches or more' }
|
165
|
+
it { record_87.tv_type.should == 'Projection' }
|
166
|
+
it { record_87.tv_theater.should == false }
|
167
|
+
it { record_87.tv_2_size.should == '21 to 26 inches' }
|
168
|
+
it { record_87.tv_2_type.should == 'CRT' }
|
169
|
+
it { record_87.tv_2_theater.should == false }
|
170
|
+
it { record_87.tv_3_size.should == '21 to 26 inches' }
|
171
|
+
it { record_87.tv_3_type.should == 'LCD' }
|
172
|
+
it { record_87.tv_3_theater.should == false }
|
173
|
+
it { record_87.computers.should == 2 }
|
174
|
+
it { record_87.computer_type.should == 'Desktop' }
|
175
|
+
it { record_87.computer_monitor.should == 'CRT' }
|
176
|
+
it { record_87.computer_2_type.should == 'Desktop' }
|
177
|
+
it { record_87.computer_2_monitor.should == 'CRT' }
|
178
|
+
it { record_87.computer_3_type.should == nil }
|
179
|
+
it { record_87.computer_3_monitor.should == nil }
|
180
|
+
it { record_87.internet.should == true }
|
181
|
+
it { record_87.printers.should == 3 }
|
182
|
+
it { record_87.fax.should == false }
|
183
|
+
it { record_87.copier.should == false }
|
184
|
+
it { record_87.well_pump.should == true }
|
185
|
+
it { record_87.engine_block_heater.should == false }
|
186
|
+
it { record_87.aquarium.should == false }
|
187
|
+
it { record_87.stereo.should == true }
|
188
|
+
it { record_87.cordless_phone.should == true }
|
189
|
+
it { record_87.answering_machine.should == true }
|
190
|
+
it { record_87.tools.should == 2 }
|
191
|
+
it { record_87.electronics.should == 12 }
|
192
|
+
it { record_87.home_business.should == true }
|
193
|
+
it { record_87.home_during_week.should == true }
|
194
|
+
it { record_87.telecommuting.should == 0 }
|
195
|
+
it { record_87.unusual_activities.should == false }
|
196
|
+
it { record_87.heat_area.should be_within(5e-4).of(196.118) }
|
197
|
+
it { record_87.heat_rooms.should == 5 }
|
198
|
+
it { record_87.heat_attic_portion.should be_within(5e-2).of(0.0) }
|
199
|
+
it { record_87.heat_basement_portion.should == be_within(5e-2).of(1.0) }
|
200
|
+
it { record_87.heat_garage.should == false }
|
201
|
+
it { record_87.heat_temp_day.should == 66 }
|
202
|
+
it { record_87.heat_temp_night.should == 58 }
|
203
|
+
it { record_87.heat_temp_away.should == 66 }
|
204
|
+
it { record_87.heat_auto_adjust_day.should == nil }
|
205
|
+
it { record_87.heat_auto_adjust_night.should == nil }
|
206
|
+
it { record_87.cool_area.should be_within(5e-2).of(0.0) }
|
207
|
+
it { record_87.cool_rooms.should == 0 }
|
208
|
+
it { record_87.cool_attic_portion.should be_within(5e-2).of(0.0) }
|
209
|
+
it { record_87.cool_basement_portion.should be_within(5e-2).of(0.0) }
|
210
|
+
it { record_87.cool_garage.should == false }
|
211
|
+
it { record_87.cool_temp_day.should == nil }
|
212
|
+
it { record_87.cool_temp_night.should == nil }
|
213
|
+
it { record_87.cool_temp_away.should == nil }
|
214
|
+
it { record_87.cool_auto_adjust_day.should == nil }
|
215
|
+
it { record_87.cool_auto_adjust_night.should == nil }
|
216
|
+
it { record_87.cooler_central_use.should == nil }
|
217
|
+
it { record_87.cooler_ac_use.should == nil }
|
218
|
+
it { record_87.fan_use.should == 'Turned on occasionally' }
|
219
|
+
it { record_87.humidifier_use.should == 5 }
|
220
|
+
it { record_87.dehumidifier_use.should == nil }
|
221
|
+
it { record_87.oven_use.should == 13 }
|
222
|
+
it { record_87.microwave_use.should == 'About half of meals and snacks' }
|
223
|
+
it { record_87.microwave_defrost.should == true }
|
224
|
+
it { record_87.cooking_frequency.should == 61 }
|
225
|
+
it { record_87.fridge_2_use.should == nil }
|
226
|
+
it { record_87.fridge_3_use.should == nil }
|
227
|
+
it { record_87.dishwasher_use.should == 35 }
|
228
|
+
it { record_87.washer_use.should == 13 }
|
229
|
+
it { record_87.washer_temp_wash.should == 'Warm' }
|
230
|
+
it { record_87.washer_temp_rinse.should == 'Cold' }
|
231
|
+
it { record_87.dryer_use.should == 'Every load of laundry' }
|
232
|
+
it { record_87.tv_weekday_use.should == 5 }
|
233
|
+
it { record_87.tv_weekend_use.should == 8 }
|
234
|
+
it { record_87.tv_2_weekday_use.should == 2 }
|
235
|
+
it { record_87.tv_2_weekend_use.should == 2 }
|
236
|
+
it { record_87.tv_3_weekday_use.should == 1 }
|
237
|
+
it { record_87.tv_3_weekend_use.should == 1 }
|
238
|
+
it { record_87.computer_use.should == 12 }
|
239
|
+
it { record_87.computer_idle.should == 'Turned off' }
|
240
|
+
it { record_87.computer_2_use.should == 12 }
|
241
|
+
it { record_87.computer_2_idle.should == 'Sleep / standby' }
|
242
|
+
it { record_87.computer_3_use.should == nil }
|
243
|
+
it { record_87.computer_3_idle.should == nil }
|
244
|
+
it { record_87.tool_charging.should == 'Always charging' }
|
245
|
+
it { record_87.tool_vampires.should == 'Chargers never unplugged' }
|
246
|
+
it { record_87.electronic_charging.should == 'Both' }
|
247
|
+
it { record_87.electronic_vampires.should == 'Chargers never unplugged' }
|
248
|
+
it { record_87.energy_audit.should == false }
|
249
|
+
it { record_87.energy_audit_year.should == nil }
|
250
|
+
it { record_87.energy_audit_incent.should == nil }
|
251
|
+
it { record_87.energy_audit_incent_year.should == nil }
|
252
|
+
it { record_87.insulation_added.should == true }
|
253
|
+
it { record_87.insulation_added_year.should == 2008 }
|
254
|
+
it { record_87.insulation_incent.should == 'None' }
|
255
|
+
it { record_87.insulation_incent_year.should == nil }
|
256
|
+
it { record_87.caulking_added.should == true }
|
257
|
+
it { record_87.caulking_added_year.should == 2008 }
|
258
|
+
it { record_87.caulking_incent.should == 'None' }
|
259
|
+
it { record_87.caulking_incent_year.should == nil }
|
260
|
+
it { record_87.windows_replaced.should == 'All' }
|
261
|
+
it { record_87.windows_incent.should == 'None' }
|
262
|
+
it { record_87.windows_incent_year.should == nil }
|
263
|
+
it { record_87.heater_maintained.should == false }
|
264
|
+
it { record_87.heater_replaced.should == nil }
|
265
|
+
it { record_87.heater_incent.should == nil }
|
266
|
+
it { record_87.heater_incent_year.should == nil }
|
267
|
+
it { record_87.cooler_central_maintained.should == nil }
|
268
|
+
it { record_87.cooler_central_replaced.should == nil }
|
269
|
+
it { record_87.cooler_central_incent.should == nil }
|
270
|
+
it { record_87.cooler_central_incent_year.should == nil }
|
271
|
+
it { record_87.cooler_ac_replaced.should == nil }
|
272
|
+
it { record_87.cooler_ac_incent.should == nil }
|
273
|
+
it { record_87.cooler_ac_incent_year.should == nil }
|
274
|
+
it { record_87.water_heater_blanket.should == true }
|
275
|
+
it { record_87.water_heater_incent.should == 'None' }
|
276
|
+
it { record_87.water_heater_incent_year.should == nil }
|
277
|
+
it { record_87.lights_replaced.should == nil }
|
278
|
+
it { record_87.lights_incent.should == nil }
|
279
|
+
it { record_87.lights_incent_year.should == nil }
|
280
|
+
it { record_87.dishwasher_replaced.should == nil }
|
281
|
+
it { record_87.dishwasher_incent.should == nil }
|
282
|
+
it { record_87.dishwasher_incent_year.should == nil }
|
283
|
+
it { record_87.fridge_replaced.should == nil }
|
284
|
+
it { record_87.fridge_incent.should == nil }
|
285
|
+
it { record_87.fridge_incent_year.should == nil }
|
286
|
+
it { record_87.freezer_replaced.should == nil }
|
287
|
+
it { record_87.freezer_incent.should == nil }
|
288
|
+
it { record_87.freezer_incent_year.should == nil }
|
289
|
+
it { record_87.washer_replaced.should == nil }
|
290
|
+
it { record_87.washer_incent.should == nil }
|
291
|
+
it { record_87.washer_incent_year.should == nil }
|
292
|
+
it { record_87.renewable_energy.should == nil }
|
293
|
+
it { record_87.own_rent.should == 'Owner' }
|
294
|
+
it { record_87.sex.should == 'Male' }
|
295
|
+
it { record_87.employment.should == 'Not employed / retired' }
|
296
|
+
it { record_87.live_with_spouse.should == true }
|
297
|
+
it { record_87.race.should == 'White' }
|
298
|
+
it { record_87.latino.should == false }
|
299
|
+
it { record_87.education.should == "Master's degree" }
|
300
|
+
it { record_87.household_size.should == 2 }
|
301
|
+
it { record_87.member_1_age.should == 63 }
|
302
|
+
it { record_87.member_2_age.should == 62 }
|
303
|
+
it { record_87.member_3_age.should == nil }
|
304
|
+
it { record_87.member_4_age.should == nil }
|
305
|
+
it { record_87.member_5_age.should == nil }
|
306
|
+
it { record_87.member_6_age.should == nil }
|
307
|
+
it { record_87.member_7_age.should == nil }
|
308
|
+
it { record_87.member_8_age.should == nil }
|
309
|
+
it { record_87.member_9_age.should == nil }
|
310
|
+
it { record_87.member_10_age.should == nil }
|
311
|
+
it { record_87.member_11_age.should == nil }
|
312
|
+
it { record_87.member_12_age.should == nil }
|
313
|
+
it { record_87.member_13_age.should == nil }
|
314
|
+
it { record_87.member_14_age.should == nil }
|
315
|
+
it { record_87.income.should == 77500 }
|
316
|
+
it { record_87.income_employment.should == true }
|
317
|
+
it { record_87.income_retirement.should == true }
|
318
|
+
it { record_87.income_ssi.should == false }
|
319
|
+
it { record_87.income_welfare.should == false }
|
320
|
+
it { record_87.income_investment.should == true }
|
321
|
+
it { record_87.income_other.should == true }
|
322
|
+
it { record_87.poverty_100.should == false }
|
323
|
+
it { record_87.poverty_150.should == false }
|
324
|
+
it { record_87.public_housing_authority.should == nil }
|
325
|
+
it { record_87.low_rent.should == nil }
|
326
|
+
it { record_87.food_stamps.should == false }
|
327
|
+
it { record_87.pays_electricity_heat.should == 'Paid by the household' }
|
328
|
+
it { record_87.pays_electricity_water.should == 'Paid by the household' }
|
329
|
+
it { record_87.pays_electricity_cooking.should == 'Paid by the household' }
|
330
|
+
it { record_87.pays_electricity_cool.should == nil }
|
331
|
+
it { record_87.pays_electricity_lighting.should == 'Paid by the household' }
|
332
|
+
it { record_87.pays_natural_gas_heat.should == nil }
|
333
|
+
it { record_87.pays_natural_gas_water.should == nil }
|
334
|
+
it { record_87.pays_natural_gas_cooking.should == nil }
|
335
|
+
it { record_87.pays_natural_gas_other.should == nil }
|
336
|
+
it { record_87.pays_fuel_oil.should == nil }
|
337
|
+
it { record_87.pays_propane.should == nil }
|
338
|
+
it { record_87.electricity_heat.should == true }
|
339
|
+
it { record_87.electricity_heat_2.should == true }
|
340
|
+
it { record_87.electricity_cool.should == false }
|
341
|
+
it { record_87.electricity_water.should == true }
|
342
|
+
it { record_87.electricity_cooking.should == true }
|
343
|
+
it { record_87.electricity_other.should == true }
|
344
|
+
it { record_87.natural_gas_heat.should == false }
|
345
|
+
it { record_87.natural_gas_heat_2.should == false }
|
346
|
+
it { record_87.natural_gas_water.should == false }
|
347
|
+
it { record_87.natural_gas_cooking.should == false }
|
348
|
+
it { record_87.natural_gas_other.should == false }
|
349
|
+
it { record_87.propane_heat.should == false }
|
350
|
+
it { record_87.propane_heat_2.should == false }
|
351
|
+
it { record_87.propane_water.should == false }
|
352
|
+
it { record_87.propane_cooking.should == false }
|
353
|
+
it { record_87.propane_other.should == true }
|
354
|
+
it { record_87.fuel_oil_heat.should == false }
|
355
|
+
it { record_87.fuel_oil_heat_2.should == false }
|
356
|
+
it { record_87.fuel_oil_water.should == false }
|
357
|
+
it { record_87.fuel_oil_other.should == false }
|
358
|
+
it { record_87.kerosene_heat.should == false }
|
359
|
+
it { record_87.kerosene_heat_2.should == false }
|
360
|
+
it { record_87.kerosene_water.should == false }
|
361
|
+
it { record_87.kerosene_other.should == false }
|
362
|
+
it { record_87.wood_heat.should == true }
|
363
|
+
it { record_87.wood_heat_2.should == false }
|
364
|
+
it { record_87.wood_water.should == false }
|
365
|
+
it { record_87.wood_other.should == false }
|
366
|
+
it { record_87.solar_heat.should == false }
|
367
|
+
it { record_87.solar_heat_2.should == false }
|
368
|
+
it { record_87.solar_water.should == true }
|
369
|
+
it { record_87.solar_other.should == false }
|
370
|
+
it { record_87.other_heat.should == false }
|
371
|
+
it { record_87.other_heat_2.should == false }
|
372
|
+
it { record_87.other_water.should == false }
|
373
|
+
it { record_87.other_cooking.should == false }
|
374
|
+
it { record_87.energy.should be_within(5e-2).of(55948.6) }
|
375
|
+
it { record_87.energy_cost.should == 1572 }
|
376
|
+
it { record_87.electricity.should be_within(5e-3).of(15542) }
|
377
|
+
it { record_87.electricity_cost.should == 1572 }
|
378
|
+
it { record_87.natural_gas.should be_within(5e-3).of(0.0) }
|
379
|
+
it { record_87.natural_gas_cost.should == 0 }
|
380
|
+
it { record_87.propane.should be_within(5e-3).of(0.0) }
|
381
|
+
it { record_87.propane_cost.should == 0 }
|
382
|
+
it { record_87.fuel_oil.should be_within(5e-3).of(0.0) }
|
383
|
+
it { record_87.fuel_oil_cost.should == 0 }
|
384
|
+
it { record_87.kerosene.should be_within(5e-3).of(0.0) }
|
385
|
+
it { record_87.kerosene_cost.should == 0 }
|
386
|
+
it { record_87.wood.should be_within(5e-1).of(126607) }
|
387
|
+
end
|
388
|
+
end
|
data/spec/earth_spec.rb
CHANGED
@@ -16,7 +16,7 @@ describe Earth do
|
|
16
16
|
describe '.resources' do
|
17
17
|
it 'should get a list of all resource names' do
|
18
18
|
Earth.init :all
|
19
|
-
Earth.resources.length.should ==
|
19
|
+
Earth.resources.length.should == 104
|
20
20
|
Earth.resources.should include('Aircraft')
|
21
21
|
Earth.resources.should include('Industry')
|
22
22
|
end
|
metadata
CHANGED
@@ -1,351 +1,494 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: earth
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.1.2
|
4
5
|
prerelease:
|
5
|
-
version: 1.1.1
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Seamus Abshere
|
9
9
|
- Derek Kastner
|
10
10
|
- Andy Rossmeissl
|
11
|
+
- Ian Hough
|
11
12
|
autorequire:
|
12
13
|
bindir: bin
|
13
14
|
cert_chain: []
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
- !ruby/object:Gem::Dependency
|
15
|
+
date: 2013-03-15 00:00:00.000000000 Z
|
16
|
+
dependencies:
|
17
|
+
- !ruby/object:Gem::Dependency
|
18
18
|
name: activerecord
|
19
|
-
requirement:
|
19
|
+
requirement: !ruby/object:Gem::Requirement
|
20
20
|
none: false
|
21
|
-
requirements:
|
22
|
-
- -
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version:
|
21
|
+
requirements:
|
22
|
+
- - ! '>='
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: '0'
|
25
25
|
type: :runtime
|
26
26
|
prerelease: false
|
27
|
-
version_requirements:
|
28
|
-
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
- !ruby/object:Gem::Dependency
|
29
34
|
name: activesupport
|
30
|
-
requirement:
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
31
36
|
none: false
|
32
|
-
requirements:
|
33
|
-
- -
|
34
|
-
- !ruby/object:Gem::Version
|
35
|
-
version:
|
37
|
+
requirements:
|
38
|
+
- - ! '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
36
41
|
type: :runtime
|
37
42
|
prerelease: false
|
38
|
-
version_requirements:
|
39
|
-
|
43
|
+
version_requirements: !ruby/object:Gem::Requirement
|
44
|
+
none: false
|
45
|
+
requirements:
|
46
|
+
- - ! '>='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '0'
|
49
|
+
- !ruby/object:Gem::Dependency
|
40
50
|
name: cohort_analysis
|
41
|
-
requirement:
|
51
|
+
requirement: !ruby/object:Gem::Requirement
|
42
52
|
none: false
|
43
|
-
requirements:
|
44
|
-
- -
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version:
|
53
|
+
requirements:
|
54
|
+
- - ! '>='
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
47
57
|
type: :runtime
|
48
58
|
prerelease: false
|
49
|
-
version_requirements:
|
50
|
-
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
none: false
|
61
|
+
requirements:
|
62
|
+
- - ! '>='
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '0'
|
65
|
+
- !ruby/object:Gem::Dependency
|
51
66
|
name: conversions
|
52
|
-
requirement:
|
67
|
+
requirement: !ruby/object:Gem::Requirement
|
53
68
|
none: false
|
54
|
-
requirements:
|
55
|
-
- -
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
version:
|
69
|
+
requirements:
|
70
|
+
- - ! '>='
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '0'
|
58
73
|
type: :runtime
|
59
74
|
prerelease: false
|
60
|
-
version_requirements:
|
61
|
-
|
75
|
+
version_requirements: !ruby/object:Gem::Requirement
|
76
|
+
none: false
|
77
|
+
requirements:
|
78
|
+
- - ! '>='
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
81
|
+
- !ruby/object:Gem::Dependency
|
62
82
|
name: data_miner
|
63
|
-
requirement:
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
64
84
|
none: false
|
65
|
-
requirements:
|
66
|
-
- -
|
67
|
-
- !ruby/object:Gem::Version
|
85
|
+
requirements:
|
86
|
+
- - ! '>='
|
87
|
+
- !ruby/object:Gem::Version
|
68
88
|
version: 2.4.0
|
69
89
|
type: :runtime
|
70
90
|
prerelease: false
|
71
|
-
version_requirements:
|
72
|
-
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
none: false
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 2.4.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
73
98
|
name: falls_back_on
|
74
|
-
requirement:
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
75
100
|
none: false
|
76
|
-
requirements:
|
77
|
-
- -
|
78
|
-
- !ruby/object:Gem::Version
|
79
|
-
version:
|
101
|
+
requirements:
|
102
|
+
- - ! '>='
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: '0'
|
80
105
|
type: :runtime
|
81
106
|
prerelease: false
|
82
|
-
version_requirements:
|
83
|
-
|
107
|
+
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ! '>='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
- !ruby/object:Gem::Dependency
|
84
114
|
name: fixed_width-multibyte
|
85
|
-
requirement:
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
86
116
|
none: false
|
87
|
-
requirements:
|
88
|
-
- -
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version:
|
117
|
+
requirements:
|
118
|
+
- - ! '>='
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
91
121
|
type: :runtime
|
92
122
|
prerelease: false
|
93
|
-
version_requirements:
|
94
|
-
|
123
|
+
version_requirements: !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
125
|
+
requirements:
|
126
|
+
- - ! '>='
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
129
|
+
- !ruby/object:Gem::Dependency
|
95
130
|
name: fuzzy_match
|
96
|
-
requirement:
|
131
|
+
requirement: !ruby/object:Gem::Requirement
|
97
132
|
none: false
|
98
|
-
requirements:
|
99
|
-
- -
|
100
|
-
- !ruby/object:Gem::Version
|
133
|
+
requirements:
|
134
|
+
- - ! '>='
|
135
|
+
- !ruby/object:Gem::Version
|
101
136
|
version: 1.3.3
|
102
137
|
type: :runtime
|
103
138
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
|
139
|
+
version_requirements: !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
141
|
+
requirements:
|
142
|
+
- - ! '>='
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: 1.3.3
|
145
|
+
- !ruby/object:Gem::Dependency
|
106
146
|
name: remote_table
|
107
|
-
requirement:
|
147
|
+
requirement: !ruby/object:Gem::Requirement
|
108
148
|
none: false
|
109
|
-
requirements:
|
110
|
-
- -
|
111
|
-
- !ruby/object:Gem::Version
|
149
|
+
requirements:
|
150
|
+
- - ! '>='
|
151
|
+
- !ruby/object:Gem::Version
|
112
152
|
version: 2.1.0
|
113
153
|
type: :runtime
|
114
154
|
prerelease: false
|
115
|
-
version_requirements:
|
116
|
-
|
155
|
+
version_requirements: !ruby/object:Gem::Requirement
|
156
|
+
none: false
|
157
|
+
requirements:
|
158
|
+
- - ! '>='
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: 2.1.0
|
161
|
+
- !ruby/object:Gem::Dependency
|
117
162
|
name: table_warnings
|
118
|
-
requirement:
|
163
|
+
requirement: !ruby/object:Gem::Requirement
|
119
164
|
none: false
|
120
|
-
requirements:
|
121
|
-
- -
|
122
|
-
- !ruby/object:Gem::Version
|
165
|
+
requirements:
|
166
|
+
- - ! '>='
|
167
|
+
- !ruby/object:Gem::Version
|
123
168
|
version: 1.0.1
|
124
169
|
type: :runtime
|
125
170
|
prerelease: false
|
126
|
-
version_requirements:
|
127
|
-
|
171
|
+
version_requirements: !ruby/object:Gem::Requirement
|
172
|
+
none: false
|
173
|
+
requirements:
|
174
|
+
- - ! '>='
|
175
|
+
- !ruby/object:Gem::Version
|
176
|
+
version: 1.0.1
|
177
|
+
- !ruby/object:Gem::Dependency
|
128
178
|
name: to_regexp
|
129
|
-
requirement:
|
179
|
+
requirement: !ruby/object:Gem::Requirement
|
130
180
|
none: false
|
131
|
-
requirements:
|
132
|
-
- -
|
133
|
-
- !ruby/object:Gem::Version
|
134
|
-
version:
|
181
|
+
requirements:
|
182
|
+
- - ! '>='
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: '0'
|
135
185
|
type: :runtime
|
136
186
|
prerelease: false
|
137
|
-
version_requirements:
|
138
|
-
|
187
|
+
version_requirements: !ruby/object:Gem::Requirement
|
188
|
+
none: false
|
189
|
+
requirements:
|
190
|
+
- - ! '>='
|
191
|
+
- !ruby/object:Gem::Version
|
192
|
+
version: '0'
|
193
|
+
- !ruby/object:Gem::Dependency
|
139
194
|
name: weighted_average
|
140
|
-
requirement:
|
195
|
+
requirement: !ruby/object:Gem::Requirement
|
141
196
|
none: false
|
142
|
-
requirements:
|
143
|
-
- -
|
144
|
-
- !ruby/object:Gem::Version
|
197
|
+
requirements:
|
198
|
+
- - ! '>='
|
199
|
+
- !ruby/object:Gem::Version
|
145
200
|
version: 1.0.2
|
146
201
|
type: :runtime
|
147
202
|
prerelease: false
|
148
|
-
version_requirements:
|
149
|
-
|
203
|
+
version_requirements: !ruby/object:Gem::Requirement
|
204
|
+
none: false
|
205
|
+
requirements:
|
206
|
+
- - ! '>='
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: 1.0.2
|
209
|
+
- !ruby/object:Gem::Dependency
|
150
210
|
name: timeframe
|
151
|
-
requirement:
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
152
212
|
none: false
|
153
|
-
requirements:
|
154
|
-
- -
|
155
|
-
- !ruby/object:Gem::Version
|
156
|
-
version:
|
213
|
+
requirements:
|
214
|
+
- - ! '>='
|
215
|
+
- !ruby/object:Gem::Version
|
216
|
+
version: '0'
|
157
217
|
type: :runtime
|
158
218
|
prerelease: false
|
159
|
-
version_requirements:
|
160
|
-
|
219
|
+
version_requirements: !ruby/object:Gem::Requirement
|
220
|
+
none: false
|
221
|
+
requirements:
|
222
|
+
- - ! '>='
|
223
|
+
- !ruby/object:Gem::Version
|
224
|
+
version: '0'
|
225
|
+
- !ruby/object:Gem::Dependency
|
161
226
|
name: geocoder
|
162
|
-
requirement:
|
227
|
+
requirement: !ruby/object:Gem::Requirement
|
163
228
|
none: false
|
164
|
-
requirements:
|
165
|
-
- -
|
166
|
-
- !ruby/object:Gem::Version
|
167
|
-
version:
|
229
|
+
requirements:
|
230
|
+
- - ! '>='
|
231
|
+
- !ruby/object:Gem::Version
|
232
|
+
version: '0'
|
168
233
|
type: :runtime
|
169
234
|
prerelease: false
|
170
|
-
version_requirements:
|
171
|
-
|
235
|
+
version_requirements: !ruby/object:Gem::Requirement
|
236
|
+
none: false
|
237
|
+
requirements:
|
238
|
+
- - ! '>='
|
239
|
+
- !ruby/object:Gem::Version
|
240
|
+
version: '0'
|
241
|
+
- !ruby/object:Gem::Dependency
|
172
242
|
name: bundler
|
173
|
-
requirement:
|
243
|
+
requirement: !ruby/object:Gem::Requirement
|
174
244
|
none: false
|
175
|
-
requirements:
|
176
|
-
- -
|
177
|
-
- !ruby/object:Gem::Version
|
178
|
-
version:
|
245
|
+
requirements:
|
246
|
+
- - ! '>='
|
247
|
+
- !ruby/object:Gem::Version
|
248
|
+
version: '0'
|
179
249
|
type: :development
|
180
250
|
prerelease: false
|
181
|
-
version_requirements:
|
182
|
-
|
251
|
+
version_requirements: !ruby/object:Gem::Requirement
|
252
|
+
none: false
|
253
|
+
requirements:
|
254
|
+
- - ! '>='
|
255
|
+
- !ruby/object:Gem::Version
|
256
|
+
version: '0'
|
257
|
+
- !ruby/object:Gem::Dependency
|
183
258
|
name: charisma
|
184
|
-
requirement:
|
259
|
+
requirement: !ruby/object:Gem::Requirement
|
185
260
|
none: false
|
186
|
-
requirements:
|
187
|
-
- -
|
188
|
-
- !ruby/object:Gem::Version
|
189
|
-
version:
|
261
|
+
requirements:
|
262
|
+
- - ! '>='
|
263
|
+
- !ruby/object:Gem::Version
|
264
|
+
version: '0'
|
190
265
|
type: :development
|
191
266
|
prerelease: false
|
192
|
-
version_requirements:
|
193
|
-
|
267
|
+
version_requirements: !ruby/object:Gem::Requirement
|
268
|
+
none: false
|
269
|
+
requirements:
|
270
|
+
- - ! '>='
|
271
|
+
- !ruby/object:Gem::Version
|
272
|
+
version: '0'
|
273
|
+
- !ruby/object:Gem::Dependency
|
194
274
|
name: cucumber
|
195
|
-
requirement:
|
275
|
+
requirement: !ruby/object:Gem::Requirement
|
196
276
|
none: false
|
197
|
-
requirements:
|
198
|
-
- -
|
199
|
-
- !ruby/object:Gem::Version
|
200
|
-
version:
|
277
|
+
requirements:
|
278
|
+
- - ! '>='
|
279
|
+
- !ruby/object:Gem::Version
|
280
|
+
version: '0'
|
201
281
|
type: :development
|
202
282
|
prerelease: false
|
203
|
-
version_requirements:
|
204
|
-
|
283
|
+
version_requirements: !ruby/object:Gem::Requirement
|
284
|
+
none: false
|
285
|
+
requirements:
|
286
|
+
- - ! '>='
|
287
|
+
- !ruby/object:Gem::Version
|
288
|
+
version: '0'
|
289
|
+
- !ruby/object:Gem::Dependency
|
205
290
|
name: dbf
|
206
|
-
requirement:
|
291
|
+
requirement: !ruby/object:Gem::Requirement
|
207
292
|
none: false
|
208
|
-
requirements:
|
209
|
-
- -
|
210
|
-
- !ruby/object:Gem::Version
|
211
|
-
version:
|
293
|
+
requirements:
|
294
|
+
- - ! '>='
|
295
|
+
- !ruby/object:Gem::Version
|
296
|
+
version: '0'
|
212
297
|
type: :development
|
213
298
|
prerelease: false
|
214
|
-
version_requirements:
|
215
|
-
|
299
|
+
version_requirements: !ruby/object:Gem::Requirement
|
300
|
+
none: false
|
301
|
+
requirements:
|
302
|
+
- - ! '>='
|
303
|
+
- !ruby/object:Gem::Version
|
304
|
+
version: '0'
|
305
|
+
- !ruby/object:Gem::Dependency
|
216
306
|
name: factory_girl
|
217
|
-
requirement:
|
307
|
+
requirement: !ruby/object:Gem::Requirement
|
218
308
|
none: false
|
219
|
-
requirements:
|
220
|
-
- -
|
221
|
-
- !ruby/object:Gem::Version
|
222
|
-
version:
|
309
|
+
requirements:
|
310
|
+
- - ! '>='
|
311
|
+
- !ruby/object:Gem::Version
|
312
|
+
version: '0'
|
223
313
|
type: :development
|
224
314
|
prerelease: false
|
225
|
-
version_requirements:
|
226
|
-
|
315
|
+
version_requirements: !ruby/object:Gem::Requirement
|
316
|
+
none: false
|
317
|
+
requirements:
|
318
|
+
- - ! '>='
|
319
|
+
- !ruby/object:Gem::Version
|
320
|
+
version: '0'
|
321
|
+
- !ruby/object:Gem::Dependency
|
227
322
|
name: georuby
|
228
|
-
requirement:
|
323
|
+
requirement: !ruby/object:Gem::Requirement
|
229
324
|
none: false
|
230
|
-
requirements:
|
231
|
-
- -
|
232
|
-
- !ruby/object:Gem::Version
|
233
|
-
version:
|
325
|
+
requirements:
|
326
|
+
- - ! '>='
|
327
|
+
- !ruby/object:Gem::Version
|
328
|
+
version: '0'
|
234
329
|
type: :development
|
235
330
|
prerelease: false
|
236
|
-
version_requirements:
|
237
|
-
|
331
|
+
version_requirements: !ruby/object:Gem::Requirement
|
332
|
+
none: false
|
333
|
+
requirements:
|
334
|
+
- - ! '>='
|
335
|
+
- !ruby/object:Gem::Version
|
336
|
+
version: '0'
|
337
|
+
- !ruby/object:Gem::Dependency
|
238
338
|
name: mysql2
|
239
|
-
requirement:
|
339
|
+
requirement: !ruby/object:Gem::Requirement
|
240
340
|
none: false
|
241
|
-
requirements:
|
242
|
-
- -
|
243
|
-
- !ruby/object:Gem::Version
|
244
|
-
version:
|
341
|
+
requirements:
|
342
|
+
- - ! '>='
|
343
|
+
- !ruby/object:Gem::Version
|
344
|
+
version: '0'
|
245
345
|
type: :development
|
246
346
|
prerelease: false
|
247
|
-
version_requirements:
|
248
|
-
|
347
|
+
version_requirements: !ruby/object:Gem::Requirement
|
348
|
+
none: false
|
349
|
+
requirements:
|
350
|
+
- - ! '>='
|
351
|
+
- !ruby/object:Gem::Version
|
352
|
+
version: '0'
|
353
|
+
- !ruby/object:Gem::Dependency
|
249
354
|
name: pg
|
250
|
-
requirement:
|
355
|
+
requirement: !ruby/object:Gem::Requirement
|
251
356
|
none: false
|
252
|
-
requirements:
|
253
|
-
- -
|
254
|
-
- !ruby/object:Gem::Version
|
255
|
-
version:
|
357
|
+
requirements:
|
358
|
+
- - ! '>='
|
359
|
+
- !ruby/object:Gem::Version
|
360
|
+
version: '0'
|
256
361
|
type: :development
|
257
362
|
prerelease: false
|
258
|
-
version_requirements:
|
259
|
-
|
363
|
+
version_requirements: !ruby/object:Gem::Requirement
|
364
|
+
none: false
|
365
|
+
requirements:
|
366
|
+
- - ! '>='
|
367
|
+
- !ruby/object:Gem::Version
|
368
|
+
version: '0'
|
369
|
+
- !ruby/object:Gem::Dependency
|
260
370
|
name: rake
|
261
|
-
requirement:
|
371
|
+
requirement: !ruby/object:Gem::Requirement
|
262
372
|
none: false
|
263
|
-
requirements:
|
264
|
-
- -
|
265
|
-
- !ruby/object:Gem::Version
|
266
|
-
version:
|
373
|
+
requirements:
|
374
|
+
- - ! '>='
|
375
|
+
- !ruby/object:Gem::Version
|
376
|
+
version: '0'
|
267
377
|
type: :development
|
268
378
|
prerelease: false
|
269
|
-
version_requirements:
|
270
|
-
|
379
|
+
version_requirements: !ruby/object:Gem::Requirement
|
380
|
+
none: false
|
381
|
+
requirements:
|
382
|
+
- - ! '>='
|
383
|
+
- !ruby/object:Gem::Version
|
384
|
+
version: '0'
|
385
|
+
- !ruby/object:Gem::Dependency
|
271
386
|
name: rdoc
|
272
|
-
requirement:
|
387
|
+
requirement: !ruby/object:Gem::Requirement
|
273
388
|
none: false
|
274
|
-
requirements:
|
275
|
-
- -
|
276
|
-
- !ruby/object:Gem::Version
|
277
|
-
version:
|
389
|
+
requirements:
|
390
|
+
- - ! '>='
|
391
|
+
- !ruby/object:Gem::Version
|
392
|
+
version: '0'
|
278
393
|
type: :development
|
279
394
|
prerelease: false
|
280
|
-
version_requirements:
|
281
|
-
|
395
|
+
version_requirements: !ruby/object:Gem::Requirement
|
396
|
+
none: false
|
397
|
+
requirements:
|
398
|
+
- - ! '>='
|
399
|
+
- !ruby/object:Gem::Version
|
400
|
+
version: '0'
|
401
|
+
- !ruby/object:Gem::Dependency
|
282
402
|
name: rspec
|
283
|
-
requirement:
|
403
|
+
requirement: !ruby/object:Gem::Requirement
|
284
404
|
none: false
|
285
|
-
requirements:
|
286
|
-
- -
|
287
|
-
- !ruby/object:Gem::Version
|
288
|
-
version:
|
405
|
+
requirements:
|
406
|
+
- - ! '>='
|
407
|
+
- !ruby/object:Gem::Version
|
408
|
+
version: '0'
|
289
409
|
type: :development
|
290
410
|
prerelease: false
|
291
|
-
version_requirements:
|
292
|
-
|
411
|
+
version_requirements: !ruby/object:Gem::Requirement
|
412
|
+
none: false
|
413
|
+
requirements:
|
414
|
+
- - ! '>='
|
415
|
+
- !ruby/object:Gem::Version
|
416
|
+
version: '0'
|
417
|
+
- !ruby/object:Gem::Dependency
|
293
418
|
name: sandbox
|
294
|
-
requirement:
|
419
|
+
requirement: !ruby/object:Gem::Requirement
|
295
420
|
none: false
|
296
|
-
requirements:
|
297
|
-
- -
|
298
|
-
- !ruby/object:Gem::Version
|
299
|
-
version:
|
421
|
+
requirements:
|
422
|
+
- - ! '>='
|
423
|
+
- !ruby/object:Gem::Version
|
424
|
+
version: '0'
|
300
425
|
type: :development
|
301
426
|
prerelease: false
|
302
|
-
version_requirements:
|
303
|
-
|
427
|
+
version_requirements: !ruby/object:Gem::Requirement
|
428
|
+
none: false
|
429
|
+
requirements:
|
430
|
+
- - ! '>='
|
431
|
+
- !ruby/object:Gem::Version
|
432
|
+
version: '0'
|
433
|
+
- !ruby/object:Gem::Dependency
|
304
434
|
name: sqlite3
|
305
|
-
requirement:
|
435
|
+
requirement: !ruby/object:Gem::Requirement
|
306
436
|
none: false
|
307
|
-
requirements:
|
308
|
-
- -
|
309
|
-
- !ruby/object:Gem::Version
|
310
|
-
version:
|
437
|
+
requirements:
|
438
|
+
- - ! '>='
|
439
|
+
- !ruby/object:Gem::Version
|
440
|
+
version: '0'
|
311
441
|
type: :development
|
312
442
|
prerelease: false
|
313
|
-
version_requirements:
|
314
|
-
|
443
|
+
version_requirements: !ruby/object:Gem::Requirement
|
444
|
+
none: false
|
445
|
+
requirements:
|
446
|
+
- - ! '>='
|
447
|
+
- !ruby/object:Gem::Version
|
448
|
+
version: '0'
|
449
|
+
- !ruby/object:Gem::Dependency
|
315
450
|
name: thor
|
316
|
-
requirement:
|
451
|
+
requirement: !ruby/object:Gem::Requirement
|
317
452
|
none: false
|
318
|
-
requirements:
|
319
|
-
- -
|
320
|
-
- !ruby/object:Gem::Version
|
321
|
-
version:
|
453
|
+
requirements:
|
454
|
+
- - ! '>='
|
455
|
+
- !ruby/object:Gem::Version
|
456
|
+
version: '0'
|
322
457
|
type: :development
|
323
458
|
prerelease: false
|
324
|
-
version_requirements:
|
325
|
-
|
459
|
+
version_requirements: !ruby/object:Gem::Requirement
|
460
|
+
none: false
|
461
|
+
requirements:
|
462
|
+
- - ! '>='
|
463
|
+
- !ruby/object:Gem::Version
|
464
|
+
version: '0'
|
465
|
+
- !ruby/object:Gem::Dependency
|
326
466
|
name: pry
|
327
|
-
requirement:
|
467
|
+
requirement: !ruby/object:Gem::Requirement
|
328
468
|
none: false
|
329
|
-
requirements:
|
330
|
-
- -
|
331
|
-
- !ruby/object:Gem::Version
|
332
|
-
version:
|
469
|
+
requirements:
|
470
|
+
- - ! '>='
|
471
|
+
- !ruby/object:Gem::Version
|
472
|
+
version: '0'
|
333
473
|
type: :development
|
334
474
|
prerelease: false
|
335
|
-
version_requirements:
|
475
|
+
version_requirements: !ruby/object:Gem::Requirement
|
476
|
+
none: false
|
477
|
+
requirements:
|
478
|
+
- - ! '>='
|
479
|
+
- !ruby/object:Gem::Version
|
480
|
+
version: '0'
|
336
481
|
description: An earth-simulation environment with ActiveRecord models and data
|
337
|
-
email:
|
482
|
+
email:
|
338
483
|
- seamus@abshere.net
|
339
484
|
- dkastner@gmail.com
|
340
485
|
- andy@rossmeissl.net
|
341
486
|
- ijhough@gmail.com
|
342
|
-
executables:
|
487
|
+
executables:
|
343
488
|
- earth_tester.rb
|
344
489
|
extensions: []
|
345
|
-
|
346
490
|
extra_rdoc_files: []
|
347
|
-
|
348
|
-
files:
|
491
|
+
files:
|
349
492
|
- .gitignore
|
350
493
|
- CHANGELOG
|
351
494
|
- DEVELOPERS.markdown
|
@@ -356,7 +499,6 @@ files:
|
|
356
499
|
- README.markdown
|
357
500
|
- Rakefile
|
358
501
|
- TODO
|
359
|
-
- ar17.html
|
360
502
|
- bin/earth_tester.rb
|
361
503
|
- certification_changelog.markdown
|
362
504
|
- data/air/aircraft.csv
|
@@ -384,6 +526,7 @@ files:
|
|
384
526
|
- data/rail/ntd_fuel_consumption.csv
|
385
527
|
- data/rail/ntd_modes.csv
|
386
528
|
- data/rail/ntd_service.csv
|
529
|
+
- data/residence/recs_response_groupings.csv
|
387
530
|
- earth.gemspec
|
388
531
|
- errata/aircraft/faa_errata.csv
|
389
532
|
- errata/airline/bts_carrier_codes_errata.csv
|
@@ -527,7 +670,7 @@ files:
|
|
527
670
|
- lib/earth/industry/sic_1987.rb
|
528
671
|
- lib/earth/industry/sic_1987/data_miner.rb
|
529
672
|
- lib/earth/inflectors.rb
|
530
|
-
- lib/earth/
|
673
|
+
- lib/earth/irradiance_scopes.rb
|
531
674
|
- lib/earth/loader.rb
|
532
675
|
- lib/earth/locality.rb
|
533
676
|
- lib/earth/locality/census_division.rb
|
@@ -540,8 +683,8 @@ files:
|
|
540
683
|
- lib/earth/locality/climate_division_month/data_miner.rb
|
541
684
|
- lib/earth/locality/country.rb
|
542
685
|
- lib/earth/locality/country/data_miner.rb
|
543
|
-
- lib/earth/locality/
|
544
|
-
- lib/earth/locality/
|
686
|
+
- lib/earth/locality/direct_normal_irradiance.rb
|
687
|
+
- lib/earth/locality/direct_normal_irradiance/data_miner.rb
|
545
688
|
- lib/earth/locality/egrid_country.rb
|
546
689
|
- lib/earth/locality/egrid_country/data_miner.rb
|
547
690
|
- lib/earth/locality/egrid_region.rb
|
@@ -550,12 +693,12 @@ files:
|
|
550
693
|
- lib/earth/locality/egrid_subregion/data_miner.rb
|
551
694
|
- lib/earth/locality/electricity_mix.rb
|
552
695
|
- lib/earth/locality/electricity_mix/data_miner.rb
|
553
|
-
- lib/earth/locality/
|
554
|
-
- lib/earth/locality/
|
696
|
+
- lib/earth/locality/global_horizontal_irradiance.rb
|
697
|
+
- lib/earth/locality/global_horizontal_irradiance/data_miner.rb
|
555
698
|
- lib/earth/locality/petroleum_administration_for_defense_district.rb
|
556
699
|
- lib/earth/locality/petroleum_administration_for_defense_district/data_miner.rb
|
557
|
-
- lib/earth/locality/
|
558
|
-
- lib/earth/locality/
|
700
|
+
- lib/earth/locality/photovoltaic_irradiance.rb
|
701
|
+
- lib/earth/locality/photovoltaic_irradiance/data_miner.rb
|
559
702
|
- lib/earth/locality/state.rb
|
560
703
|
- lib/earth/locality/state/data_miner.rb
|
561
704
|
- lib/earth/locality/zip_code.rb
|
@@ -598,6 +741,9 @@ files:
|
|
598
741
|
- lib/earth/residence/clothes_machine_use/data_miner.rb
|
599
742
|
- lib/earth/residence/dishwasher_use.rb
|
600
743
|
- lib/earth/residence/dishwasher_use/data_miner.rb
|
744
|
+
- lib/earth/residence/recs_2009_response.rb
|
745
|
+
- lib/earth/residence/recs_2009_response/data_miner.rb
|
746
|
+
- lib/earth/residence/recs_2009_response/parser.rb
|
601
747
|
- lib/earth/residence/residence_appliance.rb
|
602
748
|
- lib/earth/residence/residence_appliance/data_miner.rb
|
603
749
|
- lib/earth/residence/residence_class.rb
|
@@ -679,14 +825,14 @@ files:
|
|
679
825
|
- spec/earth/locality/climate_division_month_spec.rb
|
680
826
|
- spec/earth/locality/climate_division_spec.rb
|
681
827
|
- spec/earth/locality/country_spec.rb
|
682
|
-
- spec/earth/locality/
|
828
|
+
- spec/earth/locality/direct_normal_irradiance_spec.rb
|
683
829
|
- spec/earth/locality/egrid_country_spec.rb
|
684
830
|
- spec/earth/locality/egrid_region_spec.rb
|
685
831
|
- spec/earth/locality/egrid_subregion_spec.rb
|
686
832
|
- spec/earth/locality/electricity_mix_spec.rb
|
687
|
-
- spec/earth/locality/
|
833
|
+
- spec/earth/locality/global_horizontal_irradiance_spec.rb
|
688
834
|
- spec/earth/locality/padd_spec.rb
|
689
|
-
- spec/earth/locality/
|
835
|
+
- spec/earth/locality/photovoltaic_irradiance_spec.rb
|
690
836
|
- spec/earth/locality/state_spec.rb
|
691
837
|
- spec/earth/locality/zip_code_spec.rb
|
692
838
|
- spec/earth/model_spec.rb
|
@@ -707,6 +853,7 @@ files:
|
|
707
853
|
- spec/earth/residence/air_conditioner_use_spec.rb
|
708
854
|
- spec/earth/residence/clothes_machine_use_spec.rb
|
709
855
|
- spec/earth/residence/dishwasher_use_spec.rb
|
856
|
+
- spec/earth/residence/recs_2009_response_spec.rb
|
710
857
|
- spec/earth/residence/residence_appliance_spec.rb
|
711
858
|
- spec/earth/residence/residence_class_spec.rb
|
712
859
|
- spec/earth/residence/residence_fuel_price_spec.rb
|
@@ -755,38 +902,29 @@ files:
|
|
755
902
|
- spec/support/integration.rb
|
756
903
|
homepage: https://github.com/brighterplanet/earth
|
757
904
|
licenses: []
|
758
|
-
|
759
905
|
post_install_message:
|
760
906
|
rdoc_options: []
|
761
|
-
|
762
|
-
require_paths:
|
907
|
+
require_paths:
|
763
908
|
- lib
|
764
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
909
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
765
910
|
none: false
|
766
|
-
requirements:
|
767
|
-
- -
|
768
|
-
- !ruby/object:Gem::Version
|
769
|
-
|
770
|
-
|
771
|
-
- 0
|
772
|
-
version: "0"
|
773
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
911
|
+
requirements:
|
912
|
+
- - ! '>='
|
913
|
+
- !ruby/object:Gem::Version
|
914
|
+
version: '0'
|
915
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
774
916
|
none: false
|
775
|
-
requirements:
|
776
|
-
- -
|
777
|
-
- !ruby/object:Gem::Version
|
778
|
-
|
779
|
-
segments:
|
780
|
-
- 0
|
781
|
-
version: "0"
|
917
|
+
requirements:
|
918
|
+
- - ! '>='
|
919
|
+
- !ruby/object:Gem::Version
|
920
|
+
version: '0'
|
782
921
|
requirements: []
|
783
|
-
|
784
922
|
rubyforge_project:
|
785
|
-
rubygems_version: 1.8.
|
923
|
+
rubygems_version: 1.8.25
|
786
924
|
signing_key:
|
787
925
|
specification_version: 3
|
788
926
|
summary: Land, sky, and sea
|
789
|
-
test_files:
|
927
|
+
test_files:
|
790
928
|
- spec/data_mining_spec.rb
|
791
929
|
- spec/earth/air/aircraft_spec.rb
|
792
930
|
- spec/earth/air/airline_spec.rb
|
@@ -845,14 +983,14 @@ test_files:
|
|
845
983
|
- spec/earth/locality/climate_division_month_spec.rb
|
846
984
|
- spec/earth/locality/climate_division_spec.rb
|
847
985
|
- spec/earth/locality/country_spec.rb
|
848
|
-
- spec/earth/locality/
|
986
|
+
- spec/earth/locality/direct_normal_irradiance_spec.rb
|
849
987
|
- spec/earth/locality/egrid_country_spec.rb
|
850
988
|
- spec/earth/locality/egrid_region_spec.rb
|
851
989
|
- spec/earth/locality/egrid_subregion_spec.rb
|
852
990
|
- spec/earth/locality/electricity_mix_spec.rb
|
853
|
-
- spec/earth/locality/
|
991
|
+
- spec/earth/locality/global_horizontal_irradiance_spec.rb
|
854
992
|
- spec/earth/locality/padd_spec.rb
|
855
|
-
- spec/earth/locality/
|
993
|
+
- spec/earth/locality/photovoltaic_irradiance_spec.rb
|
856
994
|
- spec/earth/locality/state_spec.rb
|
857
995
|
- spec/earth/locality/zip_code_spec.rb
|
858
996
|
- spec/earth/model_spec.rb
|
@@ -873,6 +1011,7 @@ test_files:
|
|
873
1011
|
- spec/earth/residence/air_conditioner_use_spec.rb
|
874
1012
|
- spec/earth/residence/clothes_machine_use_spec.rb
|
875
1013
|
- spec/earth/residence/dishwasher_use_spec.rb
|
1014
|
+
- spec/earth/residence/recs_2009_response_spec.rb
|
876
1015
|
- spec/earth/residence/residence_appliance_spec.rb
|
877
1016
|
- spec/earth/residence/residence_class_spec.rb
|
878
1017
|
- spec/earth/residence/residence_fuel_price_spec.rb
|
@@ -919,3 +1058,4 @@ test_files:
|
|
919
1058
|
- spec/factories/zip_code.rb
|
920
1059
|
- spec/spec_helper.rb
|
921
1060
|
- spec/support/integration.rb
|
1061
|
+
has_rdoc:
|