def test_pointingdirection_init(self): """Test the transform.PointingDirection constructor.""" lon = lwa1.long * 180.0 / math.pi lat = lwa1.lat * 180.0 / math.pi elv = lwa1.elev g0 = transform.GeographicalPosition([lon, lat, elv]) p0 = transform.PlanetaryPosition('Jupiter') str(p0) repr(p0) d0 = transform.PointingDirection(p0, g0)
def test_pointingdirection_azalt(self): """Test the transform.PointingDirection az/alt transform.""" t0 = transform.Time('2013-01-08 01:23:45.000', format='STR') lon = lwa1.long * 180.0 / math.pi lat = lwa1.lat * 180.0 / math.pi elv = lwa1.elev obs = lwa1.get_observer() obs.date = t0.utc_str jove = ephem.Jupiter() jove.compute(obs) g0 = transform.GeographicalPosition([lon, lat, elv]) p0 = transform.PlanetaryPosition('Jupiter') d0 = transform.PointingDirection(p0, g0) str(d0) repr(d0) self.assertAlmostEqual(d0.hrz(t0)[0], jove.az * 180.0 / math.pi, 0) self.assertAlmostEqual(d0.hrz(t0)[1], jove.alt * 180.0 / math.pi, 0)
def test_pointingdirection_rst(self): """Test the transform.PointingDirection az/alt transform.""" t0 = transform.Time('2013-01-08 01:23:45.000', format='STR') lon = lwa1.long * 180.0 / math.pi lat = lwa1.lat * 180.0 / math.pi elv = lwa1.elev obs = lwa1.get_observer() obs.date = t0.utc_str jove = ephem.Jupiter() jove.compute(obs) g0 = transform.GeographicalPosition([lon, lat, elv]) p0 = transform.PlanetaryPosition('Jupiter') d0 = transform.PointingDirection(p0, g0) rst = d0.rst(t0) self.assertAlmostEqual(rst.rise, obs.next_rising(jove) * 1.0 + DJD_OFFSET, 2) self.assertAlmostEqual(rst.transit, obs.next_transit(jove) * 1.0 + DJD_OFFSET, 2) self.assertAlmostEqual(rst.set, obs.next_setting(jove) * 1.0 + DJD_OFFSET, 2)
def __init__(self, cat, name, site, period): Tkinter.Toplevel.__init__(self) self.lift() self.catalog = cat self.site = site self.period = period self.name = name if self.catalog is None: catName = 'PLANETS' else: catName = self.catalog.name self.title("%s/%s" % (catName, name)) sourceFrame = Tkinter.Frame(self) sourceFrame.pack(expand=True, fill=Tkinter.X) labelFrame = Tkinter.Frame(sourceFrame) labelFrame.pack(side=Tkinter.LEFT, fill=Tkinter.X) SourceLabel(labelFrame, 'Visible') SourceLabel(labelFrame, 'J2000 RA') SourceLabel(labelFrame, 'J2000 DEC') SourceLabel(labelFrame, 'Current RA') SourceLabel(labelFrame, 'Current DEC') SourceLabel(labelFrame, 'Galactic Long.') SourceLabel(labelFrame, 'Galactic Lat.') SourceLabel(labelFrame, 'Azimuth') SourceLabel(labelFrame, 'Altitude') SourceLabel(labelFrame, 'Current Time') SourceLabel(labelFrame, 'Rise Time') SourceLabel(labelFrame, 'Transit Time') SourceLabel(labelFrame, 'Set Time') self.values = {} valueFrame = Tkinter.Frame(sourceFrame) valueFrame.pack(side=Tkinter.RIGHT, fill=Tkinter.X, expand=True) self.values['visible'] = SourceValue(valueFrame) self.values['visible'].config(anchor=Tkinter.CENTER, justify=Tkinter.CENTER) self.values['mean_ra'] = SourceValue(valueFrame) self.values['mean_dec'] = SourceValue(valueFrame) self.values['cur_ra'] = SourceValue(valueFrame) self.values['cur_dec'] = SourceValue(valueFrame) self.values['gal_lng'] = SourceValue(valueFrame) self.values['gal_lat'] = SourceValue(valueFrame) self.values['az'] = SourceValue(valueFrame) self.values['alt'] = SourceValue(valueFrame) self.values['date'] = SourceValue(valueFrame) self.values['rise'] = SourceValue(valueFrame) self.values['transit'] = SourceValue(valueFrame) self.values['set'] = SourceValue(valueFrame) if self.catalog is None: self.position = transform.PlanetaryPosition(self.name) else: source = self.catalog[self.name] self.position = source.position self.direction = transform.PointingDirection(self.position, self.site) self.after(0, self.timer)
# setup transform objects site = args.site.lower().replace('-', '') if site == 'lwa1': station = stations.lwa1 elif site == 'lwasv': station = stations.lwasv elif site == 'ovrolwa': station = stations.lwa1 station.name = 'OVRO-LWA' station.lat, station.lon, station.elev = ('37.2397808', '-118.2816819', 1183.4839) else: raise RuntimeError("Unknown site name: %s" % site) site = transform.GeographicalPosition((station.long*180.0/math.pi, station.lat*180.0/math.pi), name=station.name) sun_pos = transform.PlanetaryPosition('Sun') sun_dir = transform.PointingDirection(sun_pos, site) jup_pos = transform.PlanetaryPosition('Jupiter') jup_dir = transform.PointingDirection(jup_pos, site) gal_pos = transform.CelestialPosition((astro.hms(17, 42, 0.1), astro.dms(True, 28, 55, 8)), name = 'SgrA') gal_dir = transform.PointingDirection(gal_pos, site) tau_pos = transform.CelestialPosition((astro.hms(5, 34, 0.5), astro.dms(False, 22, 0, 52)), name = 'TauA') tau_dir = transform.PointingDirection(tau_pos, site) cyg_pos = transform.CelestialPosition((astro.hms(19, 59, 0.8), astro.dms(False, 40, 44, 2)), name = 'CygA') cyg_dir = transform.PointingDirection(cyg_pos, site)