AttitudeEstimator

giant.stellar_opnav.estimators.attitude_estimator:

class giant.stellar_opnav.estimators.attitude_estimator.AttitudeEstimator(options_type, *args, options=None, **kwargs)[source]

This abstract base class (ABC) serves as a template for creating an attitude estimator that GIANT can use.

While it is not required to subclass this ABC in user created estimators, it is encouraged as it will ensure that the appropriate methods and attributes are created to ensure a seamless integration. In particular, the following attributes should be implemented:

Attributes

These attributes will be accessed directly for reading or writing by the GIANT StarID and StellarClass classes (that is, they won’t be specified during initialization). In addition, the following method should be implemented with no arguments:

Methods

See the DavenportQMethod class for an example of how to make a working attitude estimator

Parameters:
abstract property post_fit_covariance: ndarray[tuple[Any, ...], dtype[float64]]

The post-fit covariance from the attitude estimation as a 4x4 array

property options_dict: Dict

Determine the options input to the dataclass.

This property method will ignore all internal properties and functions

property original_options: OptionsT

Get the original configuration options.

Returns:

OptionsT: The original options used during initialization.

Warning

Modifying the returned object will affect reset behavior.

weighted_estimation: bool = False

A flag specifying whether to use weights in the estimation of the rotation.

Summary of Methods

apply_options

Update the options as attributes of the object class

attitude_profile_matrix

Computes the attitude profile matrix for the provided vector sets

comparison_dictionary

Compares each attribute of self to other and stores the result in a dict mapping the attribute to the comparison result.

compute_residuals

This method computes the residuals between the aligned unit vectors according to Wahba's problem definitions.

estimate

This method solves for the rotation matrix that best aligns the unit vectors in base_frame_directions with the unit vectors in target_frame_directions and returns the results

local_vars

this is used to overwrite options in variables only used in __init__

override_options

This method is used for special cases when certain options should be overwritten

reset_settings

Resets the class to the state it was originally initialized with.