def eclipse_model(self, xi): r""" Compute eclipse model at orbital phases ``xi``. Parameters ---------- xi : `~numpy.ndarray` Orbital phase angle :math:`\xi` Returns ------- eclipse : `~numpy.ndarray` Eclipse model normalized such that flux is zero in eclipse. """ from batman import TransitModel xi_over_pi = xi / np.pi eclipse = TransitModel( self, xi_over_pi, transittype='secondary', exp_time=xi_over_pi[1] - xi_over_pi[0], supersample_factor=3, ).light_curve(self) eclipse -= eclipse.min() return eclipse
split_times = np.split(times, n_objects_per_night) except ValueError: split_times = np.split( times[len(times) % n_objects_per_night:], n_objects_per_night) for i, ind in enumerate(object_inds_to_observe): obs_times = split_times[i].jd target_name = table['spc'][ind] params.inc = table['inclination'][ind] params.t0 = table['epoch'][ind] transit_model = TransitModel(params, obs_times).light_curve(params) # Only save LCs containing transits if transit_model.min() < 0.995: random_night = np.random.randint(0, len(real_lcs)) obs_fluxes = transit_model * np.tile( real_lcs[random_night].T, 2).T[:len(obs_times), 1] obs_database[target_name]['times'].append(obs_times) obs_database[target_name]['fluxes'].append(obs_fluxes) obs_database[target_name]['model'].append(transit_model) obs_database[target_name]['transit'] = True N_transits = 0 for key in obs_database: if obs_database[key]['transit']: for chunk in range(len(obs_database[key]['times'])): N_transits += 1 n_transits.append(N_transits)