Telescope

class pyLIMA.telescopes.Telescope(name='NDG', camera_filter='I', pixel_scale=1, lightcurve=None, lightcurve_names=None, lightcurve_units=None, astrometry=None, astrometry_names=None, astrometry_units=None, location='Earth', altitude=-6378100.0, longitude=0.57, latitude=49.49, spacecraft_name=None, spacecraft_positions={'astrometry': [], 'photometry': []})

This class contains all information about a telescope (details, observations, Earth ephemerides…)

name
Type:

str, the telescope name (needs to be unique!)

filter
Type:

str, the filter used for observations

lightcurve
Type:

array, the observed lightcurve

[time,mag,err_mag,flux,err_flux,1/err_flux]
astrometry
Type:

array, the astrometric time series

[time,ra,err_ra,dec,err_dec], should be in degree or pixel
bad_data
Type:

dict, a dictionnary containing non-finite data and duplicates

location
Type:

str, ‘Earth’ or ‘Space’

altitude
Type:

float, the telescope altitude in meter

longitude
Type:

float, the telescope longitude in degree

latitutde
Type:

float, the telescope latitude in degree

deltas_positions
Type:

array, the North and East projected into the plane of

sky positions of a telescope relative to Earth center (see parallax)
Earth_positions
Type:

dict, dictionnary orf array containing the XYZ positions of

Earth at time of observations
Earth_speeds
Type:

dict, dictionnary of array containing the XYZ speeds of

Earth at time of observations
sidereal_timesL dict, dictionnary of array containing the sidereal time (i.e.
angle) of a telescope on Earth
Earth_positions_projects
Type:

dict, dictionnary of array containing the projected

positions of Earth at time of observations
Earth_speeds_projects
Type:

dict, dictionnary of array containing the projected

speeds of Earth at time of observations
spacecraft_name
Type:

str, the name of the satellite for the JPL Horizons ephemrides

spacecraft_positions
Type:

dict, a dictionnary of arrays containing the positions of

the satellite
ld_gamma
Type:

float, the microlensing linear limb darkening coefficient

ld_sigma
Type:

float, the microlensing sqrt limb darkending coefficient

ld_a1
Type:

float, the classic linear limb darkening coefficient

ld_a2
Type:

float, the classic sqrt limb darkening coefficient

compute_parallax(parallax_model, North_vector, East_vector)

Compute and set the deltas_positions attributes according to the parallax model.

Parameters:
  • parallax_model (list, [str,float] the parallax model and t0_par)

  • North_vector (array, the projected North vector to project delta_position into)

  • East_vector (array, the projected Eat vector to project delta_position into)

  • module. (details in microlparallax)

define_limb_darkening_coefficients()

Transform ld_gamma and ld_sigma to ld_a1 and ld_a2, and/or vice-versa. See https://iopscience.iop.org/article/10.1086/378196/pdf

find_Earth_positions()

Find the Earh positions relative to photometric and astrometric data

find_Earth_telescope_positions()

Compute the telescope positions relative to Earth center based on altitude, longitude and latitude

find_gamma(star)

NOT FUNCTIONNAL YET

find_sidereal_time(sidereal_type='mean')

Returns the sidereal time (angle to vernal point) for each observations

Parameters:

sidereal_type (str, 'mean' or 'apparent' (much, much slower!))

find_space_positions()

Compute the satellite positions relaitve to Earth center

initialize_positions()

Compute the telescope positions relative to Earth center

lightcurve_in_flux(lightcurve)

Transform lightcurve magnitude to lightcurve flux

lightcurve_in_magnitude(lightcurve)

Transform lightcurve flux to lightcurve magnitude

n_data(choice='magnitude')

Returns the number of photometric data

Parameters:

choice (str, 'flux' or 'magnitude')

Returns:

n_data

Return type:

int, the number of data points

plot_data(choice='Mag')

Plot the photometric data

Parameters:

choice (str, 'Mag' or 'Flux')

trim_data(photometry_mask=None, astrometry_mask=None)

Prune the telescope observations

Parameters:
  • photometry_mask (array, a boolean array to mask photometric data)

  • astrmetry_mask (array, a boolean array to mask astrometric data)