giant.coverage.utilities.dop_computations.DOPComputations

class giant.coverage.utilities.dop_computations.DOPComputations(az_grid, elev_grid, brdf, visibility=None)[source]

Bases: object

This class serves as a container for methods that compute dilution of precision (DOP) metrics for given illumination observation data.

This is used to make it easy to distribute the DOP computations across multiple cores using multiprocessing. Generally, you should not use this as the Coverage class should set everything up for you.

Parameters:
  • az_grid (ndarray[tuple[Any, ...], dtype[float64]]) – An array of azimuth angles in radians with shape (n, m) where n is the number of distinct azimuth values the facet’s surface normal will permutate through, and m is the number of distinct elevation values the facet’s surface normal will permutate through

  • elev_grid (ndarray[tuple[Any, ...], dtype[float64]]) – An array of elevation angles in radians with shape (n, m) where n is the number of distinct azimuth values the facet’s surface normal will permutate through, and m is the number of distinct elevation values the facet’s surface normal will permutate through

  • brdf (IlluminationModel) – An IlluminationModel representing a Bidirectional Reflectance Distribution Function (BRDF) used to compute the jacobian matrix of the change in the illumination values given a change in the surface normal and/or albedo.

  • visibility (ndarray[tuple[Any, ...], dtype[_ScalarT]] | None) – An optional array of observations of the target body ILLUM_DTYPE values with shape (i, f) where i is the number of images and f is the number of surface elements for the shape model being used (surface elements can be vertices or facets). Each entry characterizes the illumination geometry of a surface element at a specific time so that DOP metrics can be computed from the surface normal vector provided by each entry.

Summary of Methods

compute_target_dop

This method takes a surface element index and a surface normal vector to compute the DOP metrics for the surface element at various potential orientations.

compute_target_dop_facet

This method takes a list of observations for a certain facet on the target's surface and computes DOP metrics based on the observations where the facet is visible.