This is the midas.nav module for implementation of the Guidance block in a navigation
analysis.
The Guidance takes the estimated state distribution from the
Estimator that is known at the commanding epoch before the manoeuvre
execution. The Guidance then performs a computation, e.g., a linearised
guidance computation or a Monte Carlo optimisation, to compute the commanded control parameters. It
is possible to command one or multiple manoeuvres at each commanding cycle.
The result of the Guidance are the commanded control parameters
distribution at the commanding epoch, which is then passed to the
ErrorSimulator to simulate the manoeuvre execution errors and, finally,
the executed control parameters distribution is passed to the Simulator that
propagates the state and parameters distribution to the next commanding opportunity (or end of
mission).
The LinearGuidance algorithm implemented in MIDAS simulates the manoeuvre
optimisation and tries to correct the deviation on some state representation of the state (e.g.,
b-plane parameters) at some future point in time (e.g., TCA or entry point) from the nominal
trajectory. This allows commanding multiple manoeuvres at the same time but does not attempt to
minimise delta-V expenditure.
The LinearGuidance requires as input a list of
Targets, which define the central body, spacecraft and epoch of all
available targets, and a list of Controls, which define the manoeuvres
to be commanded at each commanding epoch and their respective Targets and
TargetedStates.