Overview of CelestLab
CelestLab is a library of space mechanics functions written in Scilab language. This library has been developed and maintained by CNES-DCT/SB/MS (Centre National d’Etudes Spatiales) for mission analysis purposes.
The library is used by CNES for trajectory analysis and orbit design for various types of space missions. CelestLab contains several modules that allow engineers to perform tasks such as: orbit propagation, attitude computation, elementary manoeuvre computation, change of reference frame, change of coordinates …
CelestLab has been validated against CNES flight dynamics reference software. Every function is described in its own help page with selected examples.
The functions are arranged into several categories:
Depending on the way CelestLab has been installed, the data may be accessible (as local variables) or not.
- If CelestLab has been installed using ATOMS, the data are not directly accessible in the working environnement. The user must explicitly call the function CL_init for the variables to exist as local variables. This is in particular necessary before executing the examples (given in the functions help pages) that explicitely refer to CelestLab predefined data.
- If CelestLab has been installed "manually", and has been loaded by executing the loader script (exec('CelestLabRoot\loader.sce'), for example in the scilab.ini file), the data are immediately accessible as local variables in the working environment.
The value of CelestLab predefined data may be changed if needed. To do so, it is only needed to change the value of the corresponding local variable.
For example: %CL_mu = 398600.e3 (without any "global" declaration) will change the default value of the gravitational constant in all subsequent calls to CelestLab functions.
Note that the CelestLab demo tool calls CL_init before executing the scripts, therefore giving back all CelestLab predefined data their initial values.