Sidereon.CCSDS.OEM.Covariance (Sidereon v3.0.0)

Copy Markdown View Source

One 6x6 covariance block inside a parsed CCSDS OEM segment, held exactly as read.

lower_triangle holds the 21 lower-triangle values in keyword order CX_X, CY_X, CY_Y ... CZ_DOT_Z_DOT, row by row. No definiteness check is applied, so a matrix printed to a few digits that falls short of positive semidefinite only through that rounding is read. cov_ref_frame is the optional COV_REF_FRAME override, or nil to inherit the segment frame. to_matrix/1 expands the values to six symmetric rows.

Summary

Functions

The symmetric 6x6 matrix, as six six-element rows, that the 21 lower-triangle values state. The values are placed as read; nothing is validated.

Types

t()

@type t() :: %Sidereon.CCSDS.OEM.Covariance{
  cov_ref_frame: String.t() | nil,
  epoch: String.t(),
  lower_triangle: [float()]
}

Functions

to_matrix(covariance)

@spec to_matrix(t()) :: [[float()]]

The symmetric 6x6 matrix, as six six-element rows, that the 21 lower-triangle values state. The values are placed as read; nothing is validated.