Module: Zmanim::Util::AstronomicalCalculations

Included in:
NOAACalculator, SunTimesCalculator
Defined in:
lib/zmanim/util/astronomical_calculations.rb

Constant Summary collapse

GEOMETRIC_ZENITH =
90.0

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#earth_radiusObject



21
22
23
# File 'lib/zmanim/util/astronomical_calculations.rb', line 21

def earth_radius
  @earth_radius ||= 6356.9  # km
end

#refractionObject



13
14
15
# File 'lib/zmanim/util/astronomical_calculations.rb', line 13

def refraction
  @refraction ||= 34 / 60.0
end

#solar_radiusObject



17
18
19
# File 'lib/zmanim/util/astronomical_calculations.rb', line 17

def solar_radius
  @solar_radius ||= 16 / 60.0
end

Instance Method Details

#adjusted_zenith(zenith, elevation) ⇒ Object



29
30
31
32
# File 'lib/zmanim/util/astronomical_calculations.rb', line 29

def adjusted_zenith(zenith, elevation)
  return zenith unless zenith == GEOMETRIC_ZENITH  #only adjust for exact sunrise or sunset
  zenith + solar_radius + refraction + elevation_adjustment(elevation)
end

#elevation_adjustment(elevation) ⇒ Object



25
26
27
# File 'lib/zmanim/util/astronomical_calculations.rb', line 25

def elevation_adjustment(elevation)
  Math.acos(earth_radius / (earth_radius + (elevation / 1000.0))).to_degrees
end