In [1]:
# calculate sunrise, sunset, twilight for Subaru
from qplan.common import moon
from qplan.util.site import get_site
subaru = get_site('subaru')
In [2]:
t = subaru.get_date('2016-02-29')
t
Out[2]:
In [3]:
# leap year day
subaru.set_date(t)
In [4]:
subaru.sunset()
Out[4]:
In [5]:
print(subaru.get_text_almanac(subaru.get_date('2016-02-29')))
In [6]:
print(subaru.get_text_almanac(subaru.get_date('2016-03-01')))
In [7]:
print(subaru.get_text_almanac(subaru.get_date('2016-03-04')))
In [8]:
subaru.night_center()
Out[8]:
In [9]:
from qplan.entity import StaticTarget
In [10]:
tgt1 = StaticTarget(name="target1", ra="10:00:00.000", dec="+08:00:00.00")
tgt2 = StaticTarget(name="target2", ra="14:00:00.000", dec="-10:00:00.00")
subaru.set_date(subaru.get_date('2016-03-01'))
In [11]:
# moon sparation, elevation and illumination
cr1 = subaru.calc(tgt1, subaru.get_date('2016-03-02 03:30:00'))
cr1.moon_sep, cr1.moon_alt, cr1.moon_pct
Out[11]:
In [12]:
cr2 = subaru.calc(tgt2, subaru.get_date('2016-03-02 03:30:00'))
cr2.moon_sep
Out[12]:
In [13]:
subaru.moon_rise(subaru.get_date('2016-02-29 17:50'))
Out[13]:
In [14]:
# moonrise
# TODO: got to be a way to simplify this in the entity
subaru.moon_rise(subaru.get_date('2016-02-29 17:50')).strftime("%m/%d %H:%M")
Out[14]:
In [15]:
# moon set
#subaru.tz_utc.localize(subaru.moon_set(subaru.get_date('2016-03-01 00:50')).datetime()).astimezone(subaru.tz_local).strftime("%m/%d %H:%M")
subaru.moon_set().strftime("%m/%d %H:%M")
Out[15]:
In [16]:
subaru.moon_phase(subaru.get_date('2016-02-29 17:50'))
Out[16]:
In [17]:
from qplan.plots import airmass
In [18]:
reload(airmass)
Out[18]:
In [19]:
from ginga.misc.log import get_logger
logger = get_logger('foo', log_stderr=True)
In [20]:
amp = airmass.AirMassPlot(800, 600, logger=logger)
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
canvas = FigureCanvas(amp.fig)
In [21]:
subaru.set_date(subaru.get_date('2016-02-29 17:00:00'))
subaru.date
Out[21]:
In [22]:
print(subaru.get_target_info_table(tgt1))
In [23]:
targets = [tgt1, tgt2]
In [24]:
from ginga.misc import Bunch
In [25]:
target_data = []
for tgt in targets:
info_list = subaru.get_target_info(tgt)
target_data.append(Bunch.Bunch(history=info_list, target=tgt))
In [26]:
subaru.date
Out[26]:
In [27]:
#subaru.set_date(subaru.get_date('2016-03-02 17:00:00'))
amp.plot_airmass(subaru, target_data, subaru.timezone)
In [28]:
from io import BytesIO
buf = BytesIO()
canvas.print_figure(buf, format='png')
In [29]:
from IPython.display import Image
Image(data=bytes(buf.getvalue()), format='png', embed=True)
Out[29]:
In [30]:
subaru.sunset(subaru.get_date('2016-02-29 17:50')).strftime("%m/%d %H:%M")
Out[30]:
In [31]:
subaru.date
Out[31]:
In [32]:
#subaru.set_date(subaru.get_date('2016-03-02 17:00:00'))
amp.plot_altitude(subaru, target_data, subaru.timezone)
buf2 = BytesIO()
canvas.print_figure(buf2, format='png')
Image(data=bytes(buf2.getvalue()), format='png', embed=True)
Out[32]:
In [ ]: