Class: AutomobileActivityYearType

Inherits:
ActiveRecord::Base
  • Object
show all
Extended by:
Earth::Model
Defined in:
lib/earth/automobile/automobile_activity_year_type.rb

Constant Summary collapse

TABLE_STRUCTURE =
<<-EOS

CREATE TABLE automobile_activity_year_types
  (
     name                      CHARACTER VARYING(255) NOT NULL PRIMARY KEY,
     activity_year             INTEGER,
     type_name                 CHARACTER VARYING(255),
     hfc_emissions             FLOAT,
     hfc_emissions_units       CHARACTER VARYING(255),
     hfc_emission_factor       FLOAT,
     hfc_emission_factor_units CHARACTER VARYING(255)
  );

EOS

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Earth::Model

extend_mining, extended, registry

Class Method Details

.find_by_type_name_and_closest_year(type_name, year) ⇒ Object

Used by Automobile and AutomobileTrip



26
27
28
29
30
31
32
33
# File 'lib/earth/automobile/automobile_activity_year_type.rb', line 26

def self.find_by_type_name_and_closest_year(type_name, year)
  candidates = where(:type_name => type_name)
  if year > (max_year = candidates.maximum(:activity_year))
    candidates.where(:activity_year => max_year).first
  else
    candidates.where(:activity_year => [year, candidates.minimum(:activity_year)].max).first
  end
end

Instance Method Details

#activity_year_type_fuelsObject

for calculating hfc ef



36
37
38
# File 'lib/earth/automobile/automobile_activity_year_type.rb', line 36

def activity_year_type_fuels
  AutomobileActivityYearTypeFuel.where(:activity_year => activity_year, :type_name => type_name)
end