Tutorials 4.1 Maneuvers

De Wiki
Révision de 20 décembre 2018 à 15:40 par Admin (discussion | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

Impulsive maneuvers

This kind of maneuver consists in modelizing a maneuver as an instantaneous modification of the velocity. So, to define it, we must set, at least:

  1. an event that will determine that the maneuver will occur;
  2. three components, corresponding to the velocity increment;
  3. the specific impulse in order to be able to calculate the mass decrease due to the maneuver (we do not use here the PropulsiveProperty);
  4. as a consequence of the mass evolution, a MassModel and the part of this model where we will use ergols mass (here a specific tank).

Be careful that, when the maneuver direction is expressed in the vehicle frame, it will be mandatory to define an attitude when propagating the orbit !

In the example below, we will define a 20 m/s ΔV activated at the apogee of the orbit.

Code examples:

Continuous maneuvers

This time, a continuous thrust maneuver is no more considered as an impulsive one but as a more realistic one with a given duration. So to define it, we must set, at least:

  1. information about the start and the end of the maneuver
  2. the thrust direction
  3. the thrust level and the specific impulse via PropulsiveProperty
  4. as a consequence of the mass evolution, a MassModel and the part of this model where we will use ergols mass (here a specific tank)

Code examples:

Sequence of maneuvers

Such a sequence allows to group several maneuvers (impulsive or continuous ones) in a single object synthetizing a maneuver strategy. In fact, it is actually very simple to build it once each maneuver has been defined. We only have:

  1. to set a value in seconds for the minimum allowed time between a continuous maneuver and the next maneuver
  2. to set a value in seconds for the minimum allowed time between an impulse maneuver and the next maneuver
  3. to add each maneuver by using the add() method

In the example below, we have taken the impulsive maneuver build in the Impulsive maneuvers tutorial and the continuous maneuver taken from the Continuous maneuvers tutorial , putting them together in a sequence.

Code example: Sequence of maneuvers