Skip to content

Latest commit

 

History

History
73 lines (49 loc) · 3.01 KB

File metadata and controls

73 lines (49 loc) · 3.01 KB

Translational Dynamics

../acceleration_models/acceleration_model_setup ../acceleration_models/available_acceleration_models ../acceleration_models/third_body_acceleration ../acceleration_models/thrust_models ../acceleration_models/aerodynamics

Settings to propagate the translational state of a body numerically can be created through the ~tudatpy.numerical_simulation.propagation_setup.propagator.translational factory function, described in detail in the API documentation. In the current page, only the Tudat-specific aspects of the input will be briefly described.

The default (processed) representation for solving the translational equations of motion is by using the Cowell propagator (using Cartesian elements as the propagated states), but other formulations can be used (see below and processed_propagated_states).

Inputs

In addition to the settings described here <propagation_inputs>, the definition of translational dynamics settings requires:

  • A set of acceleration models (see acceleration_models_setup)
  • The initial conditions for the propagation (Cartesian state, and time)
  • The central bodies of the propagation
  • A type of propagator, since the translational state can have different representations (listed in ~tudatpy.numerical_simulation.propagation_setup.propagator.TranslationalPropagatorType; default is Cowell).

Warning

The initial state must be provided in Cartesian elements w.r.t. the central body(/bodies), regardless of the propagator type

Example

In the example below, the body "Spacecraft" will be propagated w.r.t. body "Earth" (also termed the 'propagation origin'), using given acceleration models, a given initial state which defines the initial Cartesian state of the center of mass of "Spacecraft" w.r.t. the center of mass of "Earth". A Runge Kutta 4 integrator is defined with step-size of 2 seconds. The propagation will terminate once the simulation_end_epoch termination condition is reached. The state will be propagated through the Encke formulation. Next to that, the propagator is asked to save the total acceleration. The time and state will be printed on the terminal once every 24 hours.

Python

from tudatpy.kernel.numerical_simulation import propagation_setup
from tudatpy.kernel.astro import element_conversion
import numpy as np

/_src_snippets/simulation/environment_setup/full_translational_setup.py

C++

/_src_snippets/simulation/environment_setup/req_create_bodies.cpp