Module: TimeCrisis::MeteorologicalSeasons

Defined in:
lib/time_crisis/meteorological_seasons.rb

Overview

Meteorological seasons are reckoned by temperature, with summer being the hottest quarter of the year and winter the coldest quarter of the year. Using this reckoning, the Roman calendar began the year and the spring season on the first of March, with each season occupying three months. In 1780 the Societas Meteorologica Palatina, an early international organization for meteorology, defined seasons as groupings of three whole months. Ever since, professional meteorologists everywhere have used this definition. So, in meteorology for the Northern hemisphere: spring begins on 1 March, summer on 1 June, autumn on 1 September, and winter on 1 December.

Instance Method Summary collapse

Instance Method Details

#beginning_of_meteorological_autumnObject Also known as: beginning_of_meteorological_fall



22
23
24
# File 'lib/time_crisis/meteorological_seasons.rb', line 22

def beginning_of_meteorological_autumn
  ::Date.civil(self.year, 9, 1)
end

#beginning_of_meteorological_springObject



14
15
16
# File 'lib/time_crisis/meteorological_seasons.rb', line 14

def beginning_of_meteorological_spring
  ::Date.civil(self.year, 3, 1)
end

#beginning_of_meteorological_summerObject



18
19
20
# File 'lib/time_crisis/meteorological_seasons.rb', line 18

def beginning_of_meteorological_summer
  ::Date.civil(self.year, 6, 1)
end

#beginning_of_meteorological_winterObject



27
28
29
# File 'lib/time_crisis/meteorological_seasons.rb', line 27

def beginning_of_meteorological_winter
  ::Date.civil(self.year, 12, 1)
end

#meteorological_autumn?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'lib/time_crisis/meteorological_seasons.rb', line 39

def meteorological_autumn?
  (beginning_of_meteorological_autumn...beginning_of_meteorological_winter).include?(self)
end

#meteorological_seasonObject



48
49
50
51
52
53
# File 'lib/time_crisis/meteorological_seasons.rb', line 48

def meteorological_season
  return 'spring' if meteorological_spring?
  return 'summer' if meteorological_summer?
  return 'fall' if meteorological_autumn?
  return 'winter' if meteorological_winter?
end

#meteorological_spring?Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/time_crisis/meteorological_seasons.rb', line 31

def meteorological_spring?
  (beginning_of_meteorological_spring...beginning_of_meteorological_summer).include?(self)
end

#meteorological_summer?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/time_crisis/meteorological_seasons.rb', line 35

def meteorological_summer?
  (beginning_of_meteorological_summer...beginning_of_meteorological_autumn).include?(self)
end

#meteorological_winter?Boolean

Returns:

  • (Boolean)


43
44
45
46
# File 'lib/time_crisis/meteorological_seasons.rb', line 43

def meteorological_winter?
  (beginning_of_year...beginning_of_meteorological_spring).include?(self) ||
    (beginning_of_meteorological_winter..end_of_year).include?(self)
end