Class: When::Ephemeris::CelestialObject
- Inherits:
-
BasicTypes::Object
- Object
- BasicTypes::Object
- When::Ephemeris::CelestialObject
- Includes:
- When::Ephemeris
- Defined in:
- lib/when_exe/ephemeris.rb
Overview
天体
天体の特性を定義する
Constant Summary
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::ConstList, Parts::Resource::ConstTypes, Parts::Resource::IRIHeader, Parts::Resource::LabelProperty
Instance Attribute Summary collapse
-
#aberration ⇒ Numeric
readonly
光行差 / 度.
-
#luminosity ⇒ Numeric
readonly
光度 / magnitude.
Attributes inherited from BasicTypes::Object
Attributes included from Parts::Resource
#_pool, #child, #keys, #locale, #namespace
Instance Method Summary collapse
-
#coords(t, base = nil) ⇒ When::Ephemeris::Coords
天体位置 (黄道座標).
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::Resource
#[], #^, _abbreviation_to_iri, _decode, _encode, _extract_prefix, _instance, _instantiate, _parse, _path_with_prefix, _replace_tags, _setup_, _setup_info, _simplify_path, base_uri, #each, #enum_for, #hierarchy, #include?, #included?, #iri, #leaf?, #m17n, #map, #next, #parent, #prev, #registered?, root_dir
Methods included from Parts::Resource::Pool
#[], #[]=, #_pool, #_setup_, #pool_keys
Methods included from Parts::Resource::Synchronize
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class When::Parts::Resource
Instance Attribute Details
#aberration ⇒ Numeric (readonly)
光行差 / 度
752 753 754 |
# File 'lib/when_exe/ephemeris.rb', line 752 def aberration @aberration end |
#luminosity ⇒ Numeric (readonly)
光度 / magnitude
756 757 758 |
# File 'lib/when_exe/ephemeris.rb', line 756 def luminosity @luminosity end |
Instance Method Details
#coords(t, base = nil) ⇒ When::Ephemeris::Coords
天体位置 (黄道座標)
766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 |
# File 'lib/when_exe/ephemeris.rb', line 766 def coords(t, base=nil) t = +t target_coords = self._coords(t) return target_coords unless base base_coords = base._coords(t) differrence = target_coords - base_coords delta_phi = differrence.phi - base_coords.phi phi = differrence.phi theta = differrence.theta if @aberration && @aberration != 0 phi -= @aberration / 360 * cosc(differrence.phi - target_coords.phi) / target_coords.radius end if base.respond_to?(:aberration) phi += base.aberration / 360 / cosc(theta) * cosc(delta_phi) / base_coords.radius theta -= base.aberration / 360 * sinc(theta) * sinc(delta_phi) / base_coords.radius end Coords.polar(phi, theta, differrence.radius, differrence.c) end |