Prototyping with DOCKS

DOCKS is an aggregator of computational modules, 100% free and validated, to support the design of space mission profiles for nanosatellites. DOCKS is convenient in many contexts, including interplanetary cruise or proximity operations at a complex celestial body (a double asteroid for instance).

06/2021 Release: DOCKS modules will be sequentially released. The latest version (v6.1) of the DOCKS Propagator is available now**. Dowload from here.

The new versions of the modules EPS (v6.0.1) and Intervisibility (v2.0) are also online. Subscribe to the newsletter via the page footer to stay informed on new DOCKS releases.

Remote Service: A remote service for DOCKS is operational now. No hassle of downloading or installation, just drop your configuration files right away and get the outputs in no time. Read more about it here.

The features of DOCKS are summarized below. The installation procedure is provided in the README of respective modules to target Linux Ubuntu and MS-Windows platforms. The installation can also be done on a virtual machine (for instance a VirtualBox virtual machine in an MS-Windows, Linux or Mac computer). The user support is set up at this address: (at) DOCKS is developed in Python and should be compatible with all operating systems. However, it is only tested with Linux and Windows OS. Moreover, DOCKS will be issued to the open-source community under GPL. Libraries from various origins are included (*): Numpy, AstroPy, Poliastro, PyQuaternion, Quaternion, AstroQuery, pyKEP, Scipy and SpiceyPy.

DOCKS main features:

  • mission profile generation to be displayed in VTS, the free "Visualization Tool for Space data" by CNES (French space agency) that also includes the famous CELESTIA free 3D engine
  • launch of specialized modules (integrated or stand-alone) and production of corresponding VTS scenario
  • all outputs are produced in CCSDS compliant format
  • remote service is available for incompatible OS

Modules currently in DOCKS that will be issued sequentially:

  • Deep Space Propagator: Generate a trajectory ephemeris in ICRS or True Ecliptic frame propagated from a set of initial conditions using RK4 method (constant time intervals) or by RKF45 method (intervals adapted to the curvatures of the trajectory). Include perturbations due to point masses, non-spherical bodies, solar radiation pressure and/or continuous thrust. The module also accepts (**) your own Complex Gravitational Models (CGM), e.g. to produce trajectories in the vicinity of non-spherical asteroids.
  • CONIC: Generate an ephemeris of positions for a Keplerian orbit produced in plano-centric ICRS or another known frame (SSB-centric or Heliocentric, ICRS or true Ecliptic).
  • Intervisibility: Generate an ephemeris on intervisibility with a terrestrial target (elevation on the horizon, eclipses) and propagation attenuation (excluding antenna and atmosphere gains).
  • Electric Power System: Generate an onboard power ephemeris for a mission scenario with models of batteries, solar panels and system consumption.
  • Datalink: Generate an ephemeris of on-board data volume based on primitive modelling with Intervisibilities and mode strategy of the mission.
  • Quaternions: Generate an ephemeris of single quaternions for inertial pointing, uniform rotation or ground station tracking.
  • ADCS: Convert an ephemeris of quaternions in a reference by a fixed rotation into a new reference, e.g. the field of view of an instrument. Coupling with continuous propulsion and based on standard control laws. Generate slew rates.

You can already take part in the development of DOCKS by testing and sending us your opinions: bug, suggestion, benchmark & tests. For experts, the code is open and you can offer us improvements.

(*) Contributors: we would like to thank the authors of the Numpy, AstroPy, Poliastro, PyQuaternion, Quaternion, Spiceypy, Scipy, AstroQuery python libraries, of Celestia, the authors of VTS and STELA at CNES, of pyKEP at ESA and in the partner laboratories, and NAIF for spice kernels. The direct contributors to DOCKS and its deep space Propagator are as follows to this day: Audrey Porquet, Hao-Chih Jim Lin, Thomas Gascard, Nima Traore, Zacharie Barrou-Dumont, Guillaume Thebault, Nicolas Bochard, Edouard Leicht, Florian Jousseaume, Gary Quinsac, Laëtitia Lebec, Claire Castell, Janis Dalbins, Thibault Delrieu, Sébastien Durand, development managed by Rashika Jain and Boris Segret.

(**) Progress of the deep space propagator: still partial validation. In some non-Keplerian (N-body) cases, unexplained drifts are observed over the medium term (several months). Warning: the use of CGM cannot be fully validated as it depends on the author of the CGM. The possible non-inertial frames are limited, SSB ICRS is preferred. A simplified model for solar radiation pressure is included. Finally, continuous thrust is included but not validated in complex scenarios.

TestPOD 3U

A TestPOD makes it possible to test a CubeSat under vibration and shock in order to qualify it for launch. Using a TestPOD it can be made sure that the CubeSat meets the dimensional constraints of the standard deployer. In addition the TestPOD is used for SimEnOm tank thermal tests.

Our TestPOD 3U is suitable for the qualification of 1U, 2U and 3U CubeSats. It was designed and offered by our partner NCKU in Taiwan. One original feature is that it has a Quasi-Dynamic internal Rail System (QDRS) that compensates for play of some deployers (Nanoracks). With a custom-made interface plate it can be attached to the vibrating table of the Integration and Testing Platform (ITP) at the Saint-Quentin-en-Yvelines Observatory. Other interface plates may be made if necessary. A test campaign at the ITP in March 2017 allowed to characterize in detail its vibrational behaviour.

We also used the TestPOD for vacuum testing and thermal cycling of the flight model of the PICSAT nanosat, supported by ESEP and due for launch in December 2017. For this purpose a new interface board dedicated to the LESIA SimEnom tank was made, the TestPOD was cleaned, opened up, and any grease was removed. The tests were done continuously for six days in August 2017. PICSAT passed the test in good health and the TestPOD was very appreciated!

The TestPOD is now operational for CubeSats both for ITP vibration testing and for thermal vacuum testing at the SimEnOm tank.


PROMESS is both a pedagogical an engineering environment. The acronym in French translates as "Mission Profils and Education in Space Science". In its educational setup, PROMESS was delivered to the UFE at the start of the 2016 academic year. Since 2017 it has also been used for CENSUS concurrent engineering campaigns.

In the engineering configuration, a project team is typically invited for a five-day campaign, alternating plenary Concurrent Engineering sessions with modeling sessions (Model-Based System Engineering, MBSE). The goal is typically to explore the Trade Space of the mission concept in the aim of increasing its "Concept Maturity Level" (CML).

The PROMESS room during the BIRDY-1 campaign in 2017 (g.à dr.: N.Bochard M1 student, G.Quinsac PSL PhD student, B.Segret PROMESS tutor, M.Agnan project lead)

Supported by the CENSUS team, the project manager schedules the sessions according to the priorities and the maturity of the project. A team is built for the campaign, possibly with experts in space engineering. The science case and the mission profile are examined through the use of sizing models, available or developed and fine tuned between sessions. The software suite DOCKS is intensively used to interface all the models, including those made by participants with their own tools, and make them displayed by VTS, the CNES free software. Models are shared and organised in a Cloud within the team.

The sessions cover all the key components of a space mission project: manifest, science case, high-level specifications, concepts of observations and operations, subsystem build-up, system budgets, risk analysis. The process is inspired by the "SPIRAL model" made popular by ESA’s CDF as a guideline.

Back to top