In [1]:
import pyfits
from astropy.time import Time
from astral import Location
from astropy.coordinates import SkyCoord, get_moon, EarthLocation, ICRS, GCRS,AltAz,get_sun

Location


In [2]:
# Location, never changes
apl = Location()
apl.name = 'Apache Point Observatory'
apl.region = 'NM'
apl.latitude = 32.780208
apl.longitude = -105.819749
#apl.timezone = 'US/Mountain'
apl.timezone = 'UTC'
apl.elevation = 2790
import astropy.units as u

aplEL=EarthLocation(lon=apl.longitude*u.deg, lat=apl.latitude*u.deg,height=apl.elevation*u.m)

Angles of Elevation and Azimuth


In [3]:
da=pyfits.open('spec-5478-56014-0716.fits')
h_beg=da[4].header['TAI-BEG']
h_end=da[4].header['TAI-END']
ttime=(h_beg+h_end)/2
#TAI TO MJD
time_MJD=ttime/(86400.)
t=Time(time_MJD, format='mjd')
print('MJD =',t.mjd)
print('Date-time =', t.datetime)


('MJD =', 56014.40175266204)
('Date-time =', datetime.datetime(2012, 3, 28, 9, 38, 31, 430000))

In [4]:
print('elevation (degrees above horizon) =',apl.solar_elevation(t.datetime))
print('azimuth (clockwise from North) =',apl.solar_azimuth(t.datetime))


('elevation (degrees above horizon) =', -39.40657370122722)
('azimuth (clockwise from North) =', 51.999591390034595)

In [5]:
moon=get_moon(t,aplEL)
moonaltaz=moon.transform_to(AltAz(location=aplEL, obstime=t))
print moonaltaz


<SkyCoord (AltAz: obstime=56014.4017527, location=(-1463941.4280467008, -5166661.262953967, 3435000.7831954993) m, pressure=0.0 hPa, temperature=0.0 deg_C, relative_humidity=0, obswl=1.0 micron): (az, alt, distance) in (deg, deg, m)
    (333.11461048, -30.58300676, 406719518.84977168)>

In [6]:
sun=get_sun(t)
sunaltaz=sun.transform_to(AltAz(location=aplEL, obstime=t))
print sunaltaz


<SkyCoord (AltAz: obstime=56014.4017527, location=(-1463941.4280467008, -5166661.262953967, 3435000.7831954993) m, pressure=0.0 hPa, temperature=0.0 deg_C, relative_humidity=0, obswl=1.0 micron): (az, alt, distance) in (deg, deg, m)
    (51.99594211, -39.41706078, 149342670347.74749756)>

In [ ]: