Astrodynamics Problems#
There are several problem classes within scocp
that are ready-made for common astrodynamics problems.
These all require an integrator - in other words, by swapping the integrator, the same class can be used to design e.g. a rendez-vous trajectory in a restricted two-body dynamics, CR3BP, Clohessy-Wiltshire model, high-fidelity ephemeris model, etc.
Below is a list of implemented classes:
Continuous control problems#
Class |
Dynamics |
Final time |
Initial conditions |
Final conditions |
---|---|---|---|---|
Translational dynamics |
Fixed |
Fixed |
Fixed |
|
Translational dynamics + log-mass |
Fixed |
Fixed |
Fixed |
|
Translational dynamics |
Free |
Fixed |
Fixed |
|
Translational dynamics + log-mass |
Free |
Fixed |
Fixed |
|
Translational dynamics + log-mass |
Free |
Fixed |
Moving target |
|
Translational dynamics + mass |
Free |
Fixed |
Moving target |
Log-mass vs. mass dynamics?#
As the name suggests, there are classes that include a log-mass dynamics and mass dynamics, i.e. the state includes either \(z = \log{m}\) or \(m\). This makes a difference in the way control comes into the dynamics. With \(z\), the control \(\boldsymbol{u}\) is the acceleration, and we get
with the additional nonconvex constraint
In contrast, with \(m\), the control \(\boldsymbol{u}\) is the thrust throttle, and we get
with the additional second-order cone constraint
Here are some pros and cons to either model:
Property |
Model with \(\log{m}\) |
Model with \(z\) |
---|---|---|
Control type |
Acceleration |
Throttle |
Affinity |
Control-affine |
General nonconvex |
Additional constraint |
Nonconvex |
Second-order cone |