public void IsSingleton()
        {
            LocalSiderialTime theLST = LocalSiderialTime.LST;

            Assert.That(theLST != null);
            Assert.That(theLST, Is.SameAs(LocalSiderialTime.LST));
        }
        public void TestGST()
        {
            LocalSiderialTime theLST = LocalSiderialTime.LST;

            Assert.That(theLST.JulianCentury(2443825.5), Is.EqualTo(0.7886516085).Within(0.00000000005));
            Assert.That(theLST.GST0(2443825.5), Is.EqualTo(3.4503696).Within(0.0000005));

            DateTime theDate = new DateTime(1978, 11, 13, 4, 34, 0);

            Assert.That(theLST.GST(theDate), Is.EqualTo(8.0295394).Within(0.0000005));
        }
        public void TestLAST()
        {
            LocalSiderialTime   theLST      = LocalSiderialTime.LST;
            ObservationLocation theLocation = ObservationLocation.Location;

            theLocation.Longitude = 0.0;
            Assert.That(theLST.LAST, Is.EqualTo(theLST.GAST));

            double   oldGAST = theLST.iBaseGAST;
            DateTime theDate = new DateTime(1978, 11, 13, 4, 34, 0);

            theLocation.UTC = theDate;

            Assert.That(theLST.LAST, Is.EqualTo(8.0295394).Within(0.0000005));

            theLocation.Longitude = 4.0; // 4 degrees east => +(4 / 15) hours;
            Assert.That(theLST.LAST, Is.EqualTo(theLST.GAST + (4.0 / 15)).Within(0.0000001));
        }