Esempio n. 1
0
 /// <summary>
 /// Gets longitude of true ascending node of lunar orbit
 /// </summary>
 private double AscendingNode(SkyContext c)
 {
     return(LunarEphem.TrueAscendingNode(c.JulianDay));
 }
Esempio n. 2
0
 /// <summary>
 /// Gets nearest apsis date
 /// </summary>
 private Date NearestApsis(SkyContext c, MoonApsis a)
 {
     return(c.GetDate(LunarEphem.NearestApsis(c.JulianDay, a, out double diameter)));
 }
Esempio n. 3
0
 /// <summary>
 /// Gets nearest greatest lunar declination date
 /// </summary>
 private Date NearestMaxDeclination(SkyContext c, MoonDeclination d)
 {
     return(c.GetDate(LunarEphem.NearestMaxDeclination(c.JulianDay, d, out double delta)));
 }
Esempio n. 4
0
 /// <summary>
 /// Gets nearest phase date
 /// </summary>
 private Date NearestPhase(SkyContext c, MoonPhase p)
 {
     return(c.GetDate(LunarEphem.NearestPhase(c.JulianDay, p)));
 }
Esempio n. 5
0
 /// <summary>
 /// Gets Moon age in days
 /// </summary>
 private double Age(SkyContext c)
 {
     return(LunarEphem.Age(c.JulianDay));
 }
Esempio n. 6
0
 /// <summary>
 /// Gets libration info for the Moon
 /// </summary>
 private Libration LibrationElements(SkyContext c)
 {
     return(LunarEphem.Libration(c.JulianDay, c.Get(Ecliptical), c.NutationElements.deltaPsi));
 }
Esempio n. 7
0
 /// <summary>
 /// Gets visual magnitude of the Moon
 /// </summary>
 public double Magnitude(SkyContext c)
 {
     return(LunarEphem.Magnitude(c.Get(PhaseAngle)));
 }
Esempio n. 8
0
 /// <summary>
 /// Gets visible semidiameter of the Moon, in seconds of arc
 /// </summary>
 public double Semidiameter(SkyContext c)
 {
     return(LunarEphem.Semidiameter(c.Get(Ecliptical0).Distance));
 }
Esempio n. 9
0
 /// <summary>
 /// Get position angle of axis for the Moon
 /// </summary>
 private double PAaxis(SkyContext c)
 {
     return(LunarEphem.PositionAngleOfAxis(c.JulianDay, c.Get(Ecliptical), c.Epsilon, c.NutationElements.deltaPsi));
 }
Esempio n. 10
0
        public void Parallax()
        {
            double pi = LunarEphem.Parallax(368409.7);

            Assert.AreEqual(0.991990, pi, 1e-6);
        }
Esempio n. 11
0
 /// <summary>
 /// Gets Moon horizontal equatorial parallax
 /// </summary>
 private double Parallax(SkyContext c)
 {
     return(LunarEphem.Parallax(c.Get(Ecliptical0).Distance));
 }
Esempio n. 12
0
 /// <summary>
 /// Gets details of Earth shadow
 /// </summary>
 private ShadowAppearance EarthShadow(SkyContext c)
 {
     return(LunarEphem.Shadow(c.JulianDay));
 }
Esempio n. 13
0
 /// <summary>
 /// Gets nearest max libration date
 /// </summary>
 private Date NearestMaxLibration(SkyContext c, LibrationEdge e)
 {
     return(c.GetDate(LunarEphem.NearestMaxLibration(c.JulianDay, e, out double angle)));
 }
Esempio n. 14
0
        /// <summary>
        /// Gets Brown lunation number
        /// </summary>
        private int Lunation(SkyContext c)
        {
            double age = c.Get(Age);

            return(LunarEphem.Lunation(c.JulianDay - age));
        }