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, PSEC, Pluto, SIN, SINL, SINLT, SINT, Saturn, Uranus, Venus
Constants included from Namespace
Namespace::DC, Namespace::DCQ, Namespace::DCT, Namespace::FOAF, Namespace::OWL, Namespace::RDF, Namespace::RDFC, Namespace::RDFS, Namespace::RSS, Namespace::XSD
Instance Attribute Summary collapse
-
#aberration ⇒ Numeric
readonly
光行差 / 度.
-
#luminosity ⇒ Numeric
readonly
光度 / magnitude.
Attributes inherited from BasicTypes::Object
Attributes included from Parts::Resource
#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
#[], #^, _instance, _setup_, _setup_info, base_uri, #each, #enum_for, #hierarchy, #include?, #included?, #iri, #leaf?, #m17n, #map, #parent, #registered?, root_dir
Methods included from Parts::Resource::Pool
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)
光行差 / 度
757 758 759 |
# File 'lib/when_exe/ephemeris.rb', line 757 def aberration @aberration end |
#luminosity ⇒ Numeric (readonly)
光度 / magnitude
761 762 763 |
# File 'lib/when_exe/ephemeris.rb', line 761 def luminosity @luminosity end |
Instance Method Details
#coords(t, base = nil) ⇒ When::Ephemeris::Coords
天体位置 (黄道座標)
771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 |
# File 'lib/when_exe/ephemeris.rb', line 771 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 |