def main(): args = sys.argv[1:] if not args: print('usage: deprecations.py (a|b...)') sys.exit(2) arg = args[0] if arg == 'a': from skyfield.api import earth, mars, now earth(now()).observe(mars).radec() elif arg == 'b': from skyfield.api import earth earth.topos('42.3583 N', '71.0636 W') elif arg == 'c': from skyfield.api import load eph = load('de421.bsp') earth = eph['earth'] earth(100) elif arg == 'd': from skyfield.api import JulianDate JulianDate(utc=(1980, 1, 1)) elif arg == 'e': from skyfield.api import load eph = load('de421.bsp') earth = eph['earth'] earth.at(utc=(1980, 1, 1))
def find_subsolar_location_based_on_skyfield_locator(self): x, y, z = earth( JulianDate(utc=self.time)).observe(sun).apparent().position.km julian_date = JulianDate(utc=self.time).tt dublin_julian_date = julian_date - 2415020 sidereal_solar = 1.0027379093 sid_day = floor(dublin_julian_date) t = (sid_day - 0.5) / 36525 sid_reference = (6.6460656 + (2400.051262 * t) + (0.00002581 * (t**2))) / 24 sid_reference -= floor(sid_reference) lon = 2 * pi * ((dublin_julian_date - sid_day) * sidereal_solar + sid_reference) - atan2(y, x) lon = lon % (2 * pi) lon -= pi self.sun_lon = -lon self.sun_lat = atan(z / sqrt(x**2 + y**2)) self.sun_colat = (pi / 2) - self.sun_lat self.sun_colon = pi - self.sun_lon return
sidereal_solar + sid_reference) - atan2(y, x) lon = lon % (2 * pi) lon -= pi lat = atan(z / sqrt(x**2 + y**2)) return degrees(lat), degrees(-lon) time = datetime.utcnow() time = time.replace(tzinfo=utc) data = {} data['moon'] = {} data['sun'] = {} x, y, z = earth(JulianDate(utc=time)).observe(moon).apparent().position.AU lat, lng = earth_latlon(x, y, z, time) data['moon']['latitude'] = lat data['moon']['longitude'] = lng x, y, z = earth(JulianDate(utc=time)).observe(sun).apparent().position.AU lat, lng = earth_latlon(x, y, z, time) data['sun']['latitude'] = lat data['sun']['longitude'] = lng observer = ephem.Observer() observer.date = ephem.Date(time) observer.lon = sys.argv[2] observer.lat = sys.argv[1] observer.elev = float(sys.argv[3])
def test_star_position_class(): star = api.Star(ra_hours=0, dec_degrees=0) p = api.earth(utc=(2014, 2, 9, 15, 1)).observe(star) assert isinstance(p, positionlib.Astrometric)
def test_astrometric_position_class(): p = api.earth(utc=(2014, 2, 9, 14, 50)).observe(api.mars) assert isinstance(p, positionlib.Astrometric)
def test_apparent_position_class(): p = api.earth(utc=(2014, 2, 9, 14, 50)).observe(api.mars).apparent() assert isinstance(p, positionlib.Apparent)
def test_sending_jd_that_is_not_a_julian_date(): with assert_raises(ValueError, 'your "jd" argument is not a JulianDate: '): api.earth('blah')