Class: When::Ephemeris::MeanLunation

Inherits:
Formula show all
Defined in:
lib/when_exe/ephemeris.rb

Overview

Luni-Solar Calendar Formula for Mean Lunation Type

Direct Known Subclasses

ChineseTrueLunation

Constant Summary

Constants inherited from Formula

Formula::Bs, Formula::CYCLE_0M, Formula::CYCLE_1M, Formula::Sgn

Constants included from When::Ephemeris

AU, AcS, BCENT, C0, CIRCLE, COS, COSL, COSLT, COST, DAY, DEG, EPOCH1800, EPOCH1900, EPOCH1975, EPOCH2000, FARAWAY, JCENT, JYEAR, Jupiter, LIN, Mars, Mercury, Neptune, P0B, P0L, P0P, P0dB, P0dL, P1B, P1L, P1R, P2B, P2L, P2Q, P2dL, P3L, P3Q, P4B, P4L, P4Q, P4dL, P5B, P5L, P5Q, P5dL, P5l, P5n, P5r, P5t, P6B, P6L, P6Q, P6dL, P6l, P6n, P6r, P6t, P7B, P7L, P7R, P8B, P8L, P8R, P9B, P9L, P9R, PSEC, Pluto, SIN, SINL, SINLT, SINT, Saturn, Uranus, Venus

Constants included from Parts::MethodCash

Parts::MethodCash::Escape

Constants included from Parts::Resource

Parts::Resource::LabelProperty

Instance Attribute Summary collapse

Attributes inherited from Formula

#alt, #formula, #graha, #is_dynamical, #lat, #location, #time_standard

Attributes inherited from BasicTypes::Object

#label

Attributes included from Parts::Resource

#_pool, #child, #keys, #locale, #namespace

Instance Method Summary collapse

Methods inherited from Formula

#_coords, #_to_seed_type, #day_event, #meridian_passage_of_moon, #meridian_passage_of_sun, #moon_noon, #moon_visibility, #moonrise, #moonset, #nearest_past, #sun_noon, #sunset, #thiti_range, #time_to_cn, #year_event

Methods included from When::Ephemeris

_adjust, _rot, _to_p2, _to_p3, _to_r3, acos, asin, cosc, cosd, delta_e, delta_p, julian_century_from_2000, julian_year_from_1975, obl, polynomial, root, sinc, sind, tanc, tand, trigonometric

Methods included from Parts::MethodCash

_setup_, escape, #method_missing, #method_missing_

Methods included from Parts::Resource

#[], #^, _decode, _encode, _extract_prefix, _instance, _parse, _path_with_prefix, _replace_tags, _setup_, #each, #enum_for, #hierarchy, #include?, #included?, #iri, #leaf?, #m17n, #map, #next, #parent, #prev, #registered?

Methods included from Parts::Resource::Pool

#[], #[]=, #_pool, #_setup_, #pool_keys

Methods included from Parts::Resource::Synchronize

#synchronize

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class When::Parts::MethodCash

Instance Attribute Details

#day_epochNumeric (readonly)

計算の元期(日)

Returns:



1791
1792
1793
# File 'lib/when_exe/ephemeris.rb', line 1791

def day_epoch
  @day_epoch
end

#denominatorNumeric (readonly)

統法

Returns:



1807
1808
1809
# File 'lib/when_exe/ephemeris.rb', line 1807

def denominator
  @denominator
end

#longNumeric (readonly)

計算の基準経度 / 度

Returns:



1779
1780
1781
# File 'lib/when_exe/ephemeris.rb', line 1779

def long
  @long
end

#lunation_lengthNumeric (readonly)

朔望月

Returns:



1803
1804
1805
# File 'lib/when_exe/ephemeris.rb', line 1803

def lunation_length
  @lunation_length
end

#month_epochNumeric (readonly)

計算の元期(月)

Returns:



1787
1788
1789
# File 'lib/when_exe/ephemeris.rb', line 1787

def month_epoch
  @month_epoch
end

#month_lengthNumeric (readonly)

恒星月

Returns:



1799
1800
1801
# File 'lib/when_exe/ephemeris.rb', line 1799

def month_length
  @month_length
end

#year_epochNumeric (readonly)

計算の元期(年)

Returns:



1783
1784
1785
# File 'lib/when_exe/ephemeris.rb', line 1783

def year_epoch
  @year_epoch
end

#year_lengthNumeric (readonly)

回帰年

Returns:



1795
1796
1797
# File 'lib/when_exe/ephemeris.rb', line 1795

def year_length
  @year_length
end

Instance Method Details

#_mean_moon_(t) ⇒ Numeric Also known as: _true_moon_

月の平均黄経を返します。

Parameters:

  • t (Numeric)

    ユリウス日(Terrestrial Time)

Returns:



1823
# File 'lib/when_exe/ephemeris.rb', line 1823

def _mean_moon_(t) (t - @day_epoch) / @month_length + @month_epoch end

#_mean_sun_(t) ⇒ Numeric Also known as: _true_sun_

太陽の平均黄経を返します。

Parameters:

  • t (Numeric)

    ユリウス日(Terrestrial Time)

Returns:



1815
# File 'lib/when_exe/ephemeris.rb', line 1815

def _mean_sun_(t)  (t - @day_epoch) / @year_length + @year_epoch end

#sunrise(sdn, height = nil) ⇒ Numeric

日の出の日時

Parameters:

  • sdn (Numeric)

    ユリウス日(Terrestrial Time)

  • height (Numeric) (defaults to: nil)

    観測地の高度(本クラスでは使用しない)

Returns:

  • (Numeric)

    日の出の日時のユリウス日



1832
1833
1834
# File 'lib/when_exe/ephemeris.rb', line 1832

def sunrise(sdn, height=nil)
  return sdn.to_i - @long / 360.0 - 0.25
end