Prototypages avec DOCKS
DOCKS est une suite logicielle open-source, sous licence GPL v2 (*), pour faciliter la production d’un scénario de mission spatiale, en termes de trajectoires et stratégie de modes (pointage, puissance, données). Toutes les sorties sont compatibles du logiciel gratuit VTS (**) et peuvent être reformatées pour tout autre moteur graphique. DOCKS est adapté à de nombreux contextes, par exemple en croisière interplanétaire ou en opérations à proximité d’un corps complexe (un astéroïde double, par exemple).
Principales fonctions de l’Edition 05/2024 :
- Gitlab sur nos propres serveurs : cliquez ou scannez le QR code "Code Now"
- DOCKS Propagateur de trajectoires, version 6.5
- DOCKS Calcul d’intervisibilités, version 4.3
- Service à distance : glissez-déposez votre calcul sur notre serveur
- (invisible pour vous mais stratégique) CI/CD
DOCKS Propagator. Vous préparez vos conditions initiales dans un fichier .yaml avec les options possibles suivantes : choix des corps du modèle dynamique, SRP avec conditions d’éclipse (ombre, pénombre), champs gravitationnels simples ou complexes (nativement par harmoniques sphériques, compatible d’autres modèles), matrices de rotation en format tabulé ou Spice, intégrateur parmi RKF4(5), RKF5(6), RKF7(8), IAS15 à pas fixes ou variables. Nous avons soigneusement comparé nos résultats avec l’état de l’art (GMAT, FreeFlyer, TUDat) et fournissons des conseils pour les meilleurs réglages. Le CPU a été amélioré et reste notre prochaine priorité. Attention : la propulsion continue est pour le moment désactivée.
Pour DOCKS Intervisibility, vous fournissez votre trajectoire de satellite et les objets en plus du Soleil qui sont à observer, donc possiblement occultés, ou ceux qui peuvent les occulter, de même que les stations sol (sur Terre, pour le moment). Vous obtenez alors les listes d’événements, vus par votre satellite, que sont les entrées et sorties d’éclipses et d’intervisibilités pour vos objets et vos stations sol. Le module a été soigneusement validé, notamment avec reproduction des événements vus par une sonde réelle (Venus Express / ESA).
Avec le Service à distance :, plus de soucis à télécharger et installer un logiciel scientifique. Vous glissez et déposez vos fichiers de configuration dans votre répertoire individuel sur notre serveur. Une notification vous est adressée quand le calcul est fini et vos fichiers disponibles dans votre répertoire. Comment essayer ? Envoyez un email à docks.contact avec "[server]" dans l’objet du message. En réponse, vous recevrez l’adresse de votre répertoire privé avec des instructions dans les fichiers README.
Qu’est-ce que le CI/CD ? Vous ne pouvez pas le voir mais c’est très connu dans le milieu du développement logiciel et, désormais, nous l’avons adopté pour DOCKS. "CI" signifie "intégration continue" : chaque fois que nous modifions DOCKS, une série de tests est effectuée pour s’assurer que les résultats sont pertinents, sans aucune régression par rapport à la dernière version. Toute nouvelle fonction conduit à ajouter de nouveaux tests dans la chaîne de production "CI", pour couvrir l’interface utilisateur ou les résultats scientifiques. "CD" signifie "déploiement continu" : en interne, quand nous jugeons qu’une nouvelle version est prête, nous la déployons à la fois dans le service à distance et dans le Gitlab public.
Vous pouvez vous aussi prendre part au développement de DOCKS, avec de nouvelles fonctions ou par vos preopres tests et vos opinions. Voici nos idées pour de futures versions :
- Propulsion continue : réactiver la fonction dans DOCKS Propagator en association avec des stratégies de pointage et une validation à hauteur de l’état de l’art.
- Exemples de modèles gravitationnels complexes pour DOCKS Propagator (e.g. modèles de distribution de masse).
- Stratégies de pointage (la prochain version inclura un premier jeu de stratégies).
- DOCKS EPS, pour le budget de puissance, est pour le moment désactivé et a besoin d’une validation poussée.
- CONIC : Générer une éphéméride de positions pour une orbite Keplerienne produite en ICRS planéto-centrique ou dans un autre repère standard (SSB-centrique ou Héliocentrique, ICRS ou Ecliptique vraie).
- DOCKS Intervisibility pourrait être augmenté avec des "modèles d’horizon", donc des élévations minimum qui dépendent de l’azimuth.
- Une modélisation du voume de données à bord sera bienvenue, en combinaison avec des stratégies TT&C (redescente des données, gains d’antenne du satellite et des stations sol)
- ADCS : ceci est une future fonction, critique et complexe, nous y travaillons déjà et pourrions avoir besoin d’aide.
Contributeurs : nous remercions les auteurs des librairies python Numpy, AstroPy, Poliastro, PyQuaternion, Quaternion, Spiceypy, Scipy et AstroQuery, de Celestia, ainsi que les auteurs de VTS et STELA au CNES, de pyKEP à l’ESA et de Spice à NAIF/JPL. Co-auteurs de DOCKS dans CENSUS : Audrey Porquet, Hao-Chih Jim Lin, Thomas Gascard, Nima Traore, Zacharie Barrou-Dumont, Guillaume Thebault, Nicolas Bochard, Florian Jousseaume, Aurore Boineau, Laëtitia Lebec, Claire Castell, Edouard Leicht, Gary Quinsac, Sébastien Durand, Janis Dalbins, Tim Glasius, Grégoire Henry, Thibault Delrieu, Julien Bouet, Harshul Sharma, Rashika Jain, Elias Mazmouz, Feliu Lacreu, Pedro da Fonseca, Thuy Linh La, Tomas Trindade Nunes, Guillaume Bachelier, Boris Segret.
(*) le texte de la licence GPL v2 est incluse avec le code. Les libraries de diverses origines sont également utilisées : Numpy, AstroPy, Poliastro, PyQuaternion, Quaternion, AstroQuery, pyKEP, Scipy and SpiceyPy.
(**) toutes les sorties respectent le format CCSDS utilisé par le logiciel de visualisation VTS, logiciel gratuit du CNES, qui inclut aussi le célèbre moteur graphique 3D CELSTIA.