Class: When::Ephemeris::VariableYearLengthMethod

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

Overview

Solar Calendar Formula for Variable Year Length Method

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::Resource

Parts::Resource::LabelProperty, Parts::Resource::Prefix, Parts::Resource::PrefixIndex, Parts::Resource::PrefixKeys, Parts::Resource::PrefixValues

Instance Attribute Summary

Attributes inherited from Formula

#formula, #graha, #is_dynamical, #lat, #location, #long, #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, #moon_noon, #moon_rise, #moon_set, #moon_visibility, #nearest_past, #sun_noon, #sun_rise, #sun_set, #year_event

Methods included from When::Ephemeris

_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

#method_missing, #method_missing_

Methods inherited from BasicTypes::Object

#tap

Methods included from Parts::Resource

#[], #^, _extract_prefix, _instance, _parse, _path_with_prefix, #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 Method Details

#cn_to_time_(cn, time0 = nil) ⇒ Numeric

周期番号 -> 日時

Parameters:

  • cn (Numeric)

    周期番号

  • time0 (Numeric) (defaults to: nil)

    日時の初期近似値

Returns:



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

def cn_to_time_(cn, time0=nil)
  t, n = (cn / 12.0 - @longitude_shift - @year_epoch).divmod(1)
  @day_epoch + @year_length * t - @year_delta * t * (t-1) + (@year_length - 2 * @year_delta * t) * n
end

#time_to_cn(t, cn0 = nil) ⇒ Numeric

日時 -> 周期番号

Parameters:

Returns:



1811
1812
1813
1814
# File 'lib/when_exe/ephemeris.rb', line 1811

def time_to_cn(t, cn0=nil)
  cn0 ||= (t.to_f - @day_epoch) / @year_length + @year_epoch + @longitude_shift
  root(cn0 * 12, t.to_f) {|cn| cn_to_time(cn) }
end