In [1]:
%autosave 20
import matplotlib.pyplot as plt
import numpy as np
import astropy.utils.iers
astropy.utils.iers.conf.auto_download = False
In [2]:
import astropy.units as u
import astropy.constants as c
c.M_sun
Out[2]:
In [3]:
c.au.cgs
Out[3]:
In [4]:
AU = c.au.cgs.value
AU
Out[4]:
In [5]:
print(type(1*u.km))
print(type(u.km))
In [6]:
a_mars = 1.5 * u.au
a_mars_km = a_mars.to_value(u.km)
type(a_mars_km)
Out[6]:
In [7]:
v = 2*np.pi * 1*u.au / (1*u.year)
v.to(u.km / u.s)
Out[7]:
In [8]:
v = np.sqrt(c.G * c.M_earth / c.R_earth)
In [9]:
M = 10 * u.Msun
Ledd = 4*np.pi * c.G * c.m_p * c.c / c.sigma_T * M
display(Ledd)
# Ledd.to(u.erg/u.s**2)
display(Ledd.to(u.erg / u.s))
Ledd.decompose()
Out[9]:
In [10]:
a = (10*u.g)**(2/7 + 1/5)
display(a)
In [11]:
from fractions import Fraction as Fr
a = (10*u.g)**(Fr(2,7) + Fr(1,5))
display(a)
In [12]:
angle = 90*u.deg
display(np.sin(angle))
angle = 1*u.arcsec
1 / np.sin(angle)
Out[12]:
In [13]:
assert u.Angstrom == u.AA == u.angstrom
assert 1*u.m == 1e2*u.cm == 1e3*u.mm == 1e6*u.micrometer == 1e-6*u.Mm
(1*u.mpc).to(u.pc)
Out[13]:
In [14]:
micron = list(u.Angstrom.find_equivalent_units())[1]
(1*micron).to(u.cm)
Out[14]:
In [15]:
x = 10*u.cm / (100 * u.m)
display(x.to(u.dimensionless_unscaled))
x.value, x.unit
Out[15]:
In [16]:
delta_m = 1*u.mag
mAB = 10*u.ABmag # u.STmag
m = mAB - delta_m
display(m.physical.to(u.erg/u.s/u.cm**2/u.Hz))
m1 = u.Magnitude(10 * u.count / u.s)
m2 = u.Magnitude(1e5 * u.count / u.hour)
display((m2 - m1).decompose() - delta_m)
m1.physical
Out[16]:
In [17]:
from astropy import coordinates as coord
display(coord.SkyCoord('05h35m17.3s -05d23m28s'))
display(coord.SkyCoord(ra=5*u.hourangle, dec=-5*u.deg-23*u.arcmin))
star = coord.SkyCoord('05h35m17.3s -05d23m28s')
display(star.galactic)
coord.SkyCoord(l=5*u.deg, b=-5*u.deg-23*u.arcmin, frame='galactic')
coord.SkyCoord(l=5*u.deg, b=-5*u.deg-23*u.arcmin, distance=1*u.kpc, frame='galactic')
Out[17]:
In [18]:
from astropy.time import Time
t = Time.now()
loc = coord.EarthLocation.of_site('subaru')
# sai = coord.EarthLocation.of_address('Университетский проспект 13, Москва')
loc.geodetic
alt_az_frame = coord.AltAz(obstime=t, location=loc)
star.transform_to(alt_az_frame)
Out[18]:
In [32]:
from astropy import visualization
dt = np.linspace(0, 1, 100) * u.day
t = Time.now() + dt
moon = coord.get_moon(t)
print(type(moon))
keck = coord.EarthLocation.of_site('Keck')
moon_altaz = moon.transform_to(
coord.AltAz(location=keck)
)
with visualization.quantity_support():
plt.plot(dt, moon_altaz.alt.to(u.deg))
In [37]:
with visualization.quantity_support():
x = np.linspace(0, 1, 100) * u.km
y = np.linspace(1, 0, 100) * u.km
plt.xlabel('x')
plt.plot(x, y)
In [45]:
from astropy import io
with io.fits.open('sombrero.fits') as sombr:
hdu = sombr[0]
print(hdu.header)
data = hdu.data
plt.imshow(data, origin='lower')
Out[45]:
In [49]:
data = io.ascii.read('freddi.dat')
display(data)
io.ascii.write(data['t', 'Mdot'], 'table.tex', format='latex')
In [50]:
with open('table.tex') as fh:
print(fh.read())
In [ ]: