LinearObs

class rubin_sim.moving_objects.LinearObs(footprint='camera', r_fov=1.75, x_tol=5, y_tol=3, eph_mode='nbody', eph_type='basic', obs_code='I11', eph_file=None, obs_time_col='observationStartMJD', obs_time_scale='TAI', seeing_col='seeingFwhmGeom', visit_exp_time_col='visitExposureTime', obs_ra='fieldRA', obs_dec='fieldDec', obs_rot_sky_pos='rotSkyPos', obs_degrees=True, outfile_name='lsst_obs.dat', obs_metadata='', tstep=0.08333333333333333)

Bases: BaseObs

Generate observations for a set of Orbits using linear interpolation.

Uses linear interpolations between grid of true ephemerides. Ephemerides can be generated using 2-body or n-body integration.

Parameters:
footPrint: `str`, optional

Specify the footprint for the FOV. Options include “camera”, “circle”, “rectangle”. ‘Camera’ means use the actual LSST camera footprint (following a rough cut with a circular FOV). Default is circular FOV.

r_fovfloat, optional

If footprint is “circle”, this is the radius of the fov (in degrees). Default 1.75 degrees.

x_tolfloat, optional

If footprint is “rectangle”, this is half of the width of the (on-sky) fov in the RA direction (in degrees). Default 5 degrees. (so size of footprint in degrees will be 10 degrees in the RA direction).

y_tolfloat, optional

If footprint is “rectangular”, this is half of the width of the fov in Declination (in degrees). Default is 3 degrees (so size of footprint in degrees will be 6 degrees in the Dec direction).

eph_mode: `str`, optional

Mode for ephemeris generation - nbody or 2body. Default is nbody.

eph_type: `str`, optional

Type of ephemerides to generate - full or basic. Full includes all values calculated by openorb; Basic includes a more basic set. Default is Basic. (this includes enough information for most standard MAF metrics).

eph_file: `str` or None, optional

The name of the planetary ephemerides file to use for ephemeris generation. Default (None) will use the default for PyOrbEphemerides.

obs_code: `str`, optional

Observatory code for ephemeris generation. Default is “I11” - Cerro Pachon.

obs_time_col: `str`, optional

Name of the time column in the obsData. Default ‘observationStartMJD’.

obs_time_scale: `str`, optional

Type of timescale for MJD (TAI or UTC currently). Default TAI.

seeing_col: `str`, optional

Name of the seeing column in the obsData. Default ‘seeingFwhmGeom’. This should be the geometric/physical seeing as it is used for the trailing loss calculation.

visit_exp_time_col: `str`, optional

Name of the visit exposure time column in the obsData. Default ‘visitExposureTime’.

obs_ra: `str`, optional

Name of the RA column in the obsData. Default ‘fieldRA’.

obs_dec: `str`, optional

Name of the Dec column in the obsData. Default ‘fieldDec’.

obs_rot_sky_pos: str, optional

Name of the Rotator column in the obsData. Default ‘rotSkyPos’.

obs_degrees: `bool`, optional

Whether the observational data is in degrees or radians. Default True (degrees).

outfile_namestr, optional

The output file name. Default is ‘lsst_obs.dat’.

obs_metadatastr, optional

A string that captures provenance information about the observations. For example: ‘baseline_v2.0_10yrs’, MJD 59853-61677’ or ‘baseline2018a minus NES’ Default ‘’.

tstepfloat, optional

The time between points in the ephemeris grid, in days. Default 2 hours.

Methods Summary

run(orbits, obs_data)

Find and write the observations of each object to disk.

Methods Documentation

run(orbits, obs_data)

Find and write the observations of each object to disk.

For each object, identify the observations where the object is within rFOV of the pointing boresight (potentially, also in the camera footprint), and write the ephemeris values and observation metadata to disk. Uses linear interpolation between ephemeris gridpoints.

Parameters:
orbitsrubin_sim.moving_objects.Orbits

The orbits to generate ephemerides for.

obs_datanp.ndarray

The simulated pointing history data.