.. SOLSTICE documentation master file, created by
sphinx-quickstart on Mon Dec 10 18:04:47 2018.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Documentation du Module SOLSTICE
================================
Links:
An up to date version of this documentation is available on `https://hpp.education/Lessons/MecaSpace/Solstice/ `_
The gitlab repo is `https://gitlab.com/SimonMarie/orbiter `_
A demo jupyter notebook can be found here `https://hpp.education/Lessons/MecaSpace/Solstice/Solstice-Demo.ipynb `_
.. toctree::
:maxdepth: 2
Présentation générale
=====================
Le module SOLSTICE basé sur le language Python, permet l'intégration numérique
de la trajectoire d'un astronef dans le champs gravitationel de 2 corps: Un corps principal
(fixe), et un corps secondaire (en mouvement de rotation uniforme autour du corps
principal).
* La class *Capsule* est une modélisation simple permettant de spécifier directement le delta_v d'une manoeuvre.
* La class *Stage* modélise un étage et son moteur grace à son ISP et son débit.
* La class *Launcher* permet de modéliser un lanceur à partir de plusieurs éléments *Stage*.
Ces trois class sont équivalentes en terme d'intégration numérique mais ne présentent pas le même niveau de
modélisation. Elles sont basées sur
l'intégration des lois de Newton dans le repère du corps principal (CP) en coordonnées
polaire :math:`(r,\theta)`.
.. image:: https://hpp.education/Lessons/MecaSpace/SystemOrbite.jpg
Le système représenté est basé sur l'influence gravitationelle d'un corps
principal et d'un corps secondaire (généralement le satellite le plus massif).
Le corps secondaire est placé initialement en :math:`\theta_L=\pi/2` et se déplace sur son orbite
circulaire dans le sens anti-horaire. Le corps principal peut être changé en utilisant
la fonction planet(nom) ou body=nom dans l'initialisation. Le corps secondaire
peut être modifié en utilisant la fonction setmoon(nom).
Les équations du mouvement intégrées dans la méthode integtraj() sont les suivantes:
.. math::
m(\ddot{r}-r\dot{\theta}^2) = -P_1-P_2\cos(\zeta)+(F_d-F_t)\sin(\gamma_e)+F_l\cos(\gamma_e)\\
m(r\ddot{\theta}+2\dot{r}\dot{\theta}) = -P_2\sin(\zeta)+(F_t-F_d)\cos(\gamma_e)+F_l\sin(\gamma_e)
Notations:
:math:`P1`: Force gravitationel du corps principale (N).
:math:`P2`: Force gravitationel du corps secondaire (N).
:math:`F_t`: Poussée (N)
:math:`F_d`: Trainée (N).
:math:`F_l`: Portance (N).
:math:`\gamma_e`: Angle entre le vecteur vitesse (/CP) et le vecteur :math:`e_\theta`.
:math:`\omega` Angle de manoeuvre.
:math:`\Delta U` Différentiel de vitesse de la manoeuvre.
Le corps princpal possède généralement une atmosphère simple de type:
.. math::
\rho(z)=\rho_0\exp(-z/Z_0)
Lors de la rentrée atmosphérique, le repère lanceur est le suivant:
.. image:: https://hpp.education/Lessons/MecaSpace/RepereLanceur.jpg
Par convention l'angle :math:`\gamma` est orienté positivement vers l'intérieur.
Un angle :math:`\gamma` positif induira donc une composate :math:`e_r` négative.
La Class SpaceDevice
====================
.. autoclass:: SOLSTICE.Spacedevice
:special-members:
:undoc-members:
:members:
:show-inheritance:
La Class Capsule
================
.. autoclass:: SOLSTICE.Capsule
:members:
:undoc-members:
:show-inheritance:
:special-members:
La Class Stage
==============
.. autoclass:: SOLSTICE.Stage
:special-members:
:undoc-members:
:members:
:show-inheritance:
La Class Launcher
=================
.. autoclass:: SOLSTICE.Launcher
:special-members:
:undoc-members:
:members:
:show-inheritance:
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`