예제 #1
0
dataset_kwargs = dict(compression='gzip')

import sys

planet = sys.argv[1]

with ObservationArchive(run_name+'_'+planet, 'w') as obs:
    if 'wavelengths' not in obs.archive:
        obs.archive.create_dataset('wavelengths', data=wl)

    if planet in obs.archive:
        print('deleting old copy')
        del obs.archive[planet]
    group = obs.archive.create_group(planet)

    u1, u2 = trappist1(planet).u
    duration = transit_duration(trappist1(planet))

    spectrum_photo = IRTFTemplate(sptype_phot)
    spectrum_spots = IRTFTemplate(sptype_spot)#spectrum_photo.scale_temperature(delta_teff)

    for midtransit in trappist_transits["{0} {1}".format(name, planet)]:
        print('midtransit', midtransit)
        times = np.arange(midtransit - 1.5*duration,
                          midtransit + 1.5*duration, exptime.to(u.day).value)
        # times = np.arange(midtransit - 1*duration, midtransit, exptime.to(u.day).value)

        #transit = transit_model(times, trappist1(planet))
        transit = trappist1_all_transits(times)

        subgroup = group.create_group("{0}".format(Time(midtransit, format='jd').isot))
예제 #2
0
 def get_value(self, t):
     params = deepcopy(trappist1('b'))
     params.rp = self.depth**0.5
     params.t0 = self.t0 + original_params.t0
     return self.amp * transit_model(t, params)
예제 #3
0
    def get_value(self, t):
        params = deepcopy(original_params)
        params.rp = self.depth**0.5
        params.t0 = self.t0
        return self.amp * transit_model(t, params)


run_name = 'trappist1_bright'
output_dir = '/gscratch/stf/bmmorris/libra/'


from mpi4py import MPI

#with ObservationArchive(run_name, 'a', outputs_dir=output_dir) as obs:
for planet in list('h'):
    original_params = trappist1(planet)
    with ObservationArchive(run_name, 'a',
                        comm=MPI.COMM_WORLD, driver='mpio') as obs:

        for obs_planet in getattr(obs, planet):
            print(planet, obs_planet.path)
            mask = mask_simultaneous_transits(obs_planet.times, planet)
            obs_time = obs_planet.times[mask]
            obs_flux = np.sum(obs_planet.spectra[mask], axis=1)
            obs_err = np.sqrt(obs_flux)

            params = trappist1(planet)

            # plt.plot(obs_time, obs_flux, '.')

            mid_transit_answer = obs_planet.attrs['t0']
예제 #4
0
import matplotlib.pyplot as plt
import numpy as np
import astropy.units as u
import celerite
from celerite import terms
from scipy.optimize import minimize
from celerite.modeling import Model
from copy import deepcopy
from astropy.utils.console import ProgressBar

from libra import (trappist1, transit_model, ObservationArchive,
                   trappist_out_of_transit, nirspec_pixel_wavelengths,
                   transit_duration)

t0 = trappist1('b').t0
original_params = trappist1('b')
duration = transit_duration(original_params)
times = np.arange(t0 - 1.5 * duration, t0 + 1.5 * duration, 1 / 60 / 60 / 24)

import sys
j = int(sys.argv[1])

outputs_dir = '/astro/store/scratch/tmp/bmmorris/libra/'

with ObservationArchive('trappist1_bright2_b', 'r',
                        outputs_dir=outputs_dir) as obs:
    # with ObservationArchive('trappist1_bright2_b', 'r') as obs:
    sim = obs.b[j]
    times = sim.times[:]
    spectra = sim.spectra[:]
    plt.plot(sim.times, np.sum(sim.spectra, axis=1))