giant.photometry.planning

This module provides a class for doing observation planning of a target given details about a camera, as well as a helper class for specifying discretized trajectories.

Description

By observation planning, we refer to 3 interrelated processes with respect to determining when an object will be visible in a monocular camera.

  1. Determining first acquisition (the distance/time at which a specified snr can be reached for a given phase angle or trajectory and exposure length)

  2. Determining exposure length (the exposure length required to achieve a specified snr for a given distance/phase angle or trajectory)

  3. Determining SNR (the SNR value expected to be achieved for a given exposure length and distance/phase angle or trajectory)

These 3 capabilities are crucial for planning the capture of OpNav images. They do however require more information about the electronics of the camera as well as the properties of the target being observed beyond what is required for typical OpNav scenarios.

Use

To do observation planning in GIANT, create an instance of the ObservationPlanner with the appropriate data. Once initialized, you can use methods predict_acquisition(), predict_exposure(), and predict_snr() to cover most of your needs. For all 3 methods, you can either specify the geometry of the observations, or you can specify a discretized trajectory to do the calculations over, using the DiscretizedPhotometryTrajectory class.

Classes

DiscretizedTrajectory

This class is used to setup a span in which to query the photometry model over.

ObservationPlanner

This class implements observation planning functionality for GIANT.