Simulation
The Simulation module provides the capability to simulate satellite orbit and attitude dynamics by combining the dynamics functions provided in this module with the numerical integration capabilities of DifferentialEquations.jl.
The goal is to provide straight forward, and easily customizable interfaces for simulations of orbit and attitude dynamics.
SatelliteDynamics.Simulation.propagate_orbit
— Function.Simulate orbit dynamics
Arguments:
epc0::Epoch
: Propagation start Epocheci0::Epoch
: Initial Cartesean inertial state [m; m/s]epcf::Epoch
: Final to simulate to.timestep::Real
: Timestep to use for simulation (Default: 5.0)solver
: Solver to use to solve ODEProblematol::Real
: Absolute tolerate limit for differential equation solution (Default: 1.0e-9)atol::Real
: Absolute tolerate limit for differential equation solution (Default: 1.0e-9)mass::Real
: Satellite mass (Default: 100.0) [kg]area_drag::Real
: Area of drag (cannon-ball model) (Default: 1.0) [m^2]coef_drag::Real
: Coefficient of drag (Default: 2.3) [dimensionless]area_srp::Real
: Area of solar radiation prerssure (Default: 1.0) [m^2]coef_srp::Real
: Coefficient of reflectivity (Default: 1.8) [dimensionless]n_grav::Integer
: Degree of gravity field (Default: 0.0) [dimensionless]m_grav::Integer
: Order of gravity field (Default: 0.0) [dimensionless]drag::Bool
: Apply drag perturbation (Default: false)srp::Bool
: Apply solar radiation pressure perturbation (Default: false)moon::Bool
: Apply third-body lunar gravity perturbation (Default: false)sun::Bool
: Apply third-body solar gravity perturbation (Default: false)relativity::Bool
: Apply relativistic perturbations (Default: false)
Returns:
t::Array{Float64, 1}
: Simulation output times at elapsed seconds from initial Epochepc::Array{Epoch, 1}
: Simulation output times as absolute Epochseci::Array{Float64, 2}
: Propgated inertial state. Time is aligned with column dimension.