SatAndLight  2.2.2-hubble Simulation toolkit for space telescopes
SatAndLight

The SatAndLight package was developed to simulate astrophysical observations in space. Various out-of-the-box command-line programs can be used to generate observation sequences. These programs are highly tunable and user-friendly. For more details, see the program documentation.

For specific studies, SatAndLight offers a set of C++ classes to describe scientific instruments embarked in a satellite. Single elements are simulated separately: the satellite, the telescope elements (optics, geometry, camera...), sources of photons, etc... They are represented as C++ classes with associated methods. Taking advantage of the C++ class inheritance, these elements can be combined altogether to simulate an end-to-end observation sequence of astrophysical objects. A SatAndLight observation sequence can be saved on disk and be replayed as an input for analysis: see snl-sequence.cc.

# User programs

SatAndLight comes with a collection of user programs using SatAndLight libraries:

In addition, user programs are available to help with the parameterization of your simulation:

export SNL_SRCDIR=${HOME}/src export SNL_INSTALLDIR=${HOME}/opt/SatAndLight
mkdir -p ${SNL_SRCDIR}${SNL_INSTALLDIR}

 cd ${SNL_SRCDIR} wget https://gitlab.in2p3.fr/SVOM/SatAndLight/-/archive/[X.Y.Z-relname]/SatAndLight-[X.Y.Z-relname].tar.gz tar -xzf SatAndLight-[X.Y.Z-relname].tar.gz where [X.Y.Z-relname] is the SatAndLight version of your choice. Alternatively, you can get a development copy of the SatAnLight software suite using git and select a release tag:  cd${SNL_SRCDIR}
git clone https://gitlab.in2p3.fr/SVOM/SatAndLight.git
cd SatAndLight/
git checkout [X.Y.Z-relname]

# Build SatAndLight

The SatAndlight package relies on several external packages which you must install on your machine:

• ROOT libraries are used for plotting and data management. ROOT (version 6) must be installed including cfitsio-devel and fftw-devel libraries. The ROOT environment must be sourced with ${ROOTSYS}/bin/thisroot.sh. • CMake is used to build SatAndLight. • Doxygen is used to build the SatAndLight documentation. This package is optional. In this section we give step-by-step instructions to build SatAndLight for UNIX (bash/sh) systems. # go to the source directory cd${SNL_SRCDIR}/SatAndLight/

# create the build directory
mkdir ./build/; cd ./build/

# configure SatAndLight
cmake -DCMAKE_INSTALL_PREFIX=${SNL_INSTALLDIR}${SNL_SRCDIR}/SatAndLight

# compile SatAndLight
make

# install SatAndLight
make install


An environment script has been generated. It must be sourced before using SatAndLight:

source ${SNL_INSTALLDIR}/etc/satandlight.env.sh  You can test that SatAndLight is correctly installed by typing: snl-sequence version  If you have the Doxygen software installed in your machine, you can access SatAndLight documentation with a web browser at file://${SNL_INSTALLDIR}/share/doc/SatAndLight/html/index.html.

# Develop a project on top of SatAndLight libraries

SatAndLight offers a set of C++ classes to describe scientific instruments embarked in a satellite. The corresponding libraries can be used to develop user programs or projects:

• C++ classes: documentation for SatAndLight C++ classes.
• Definitions & Conventions: SatAndLight comes with a set of definitions and conventions which must be considered when developing a user project.
• TBC: documentation to integrate your project with CMake.

## Related pages

See all documentation pages in the Related Pages

# Authors

Florent Robinet - Laboratoire de Physique des 2 Infinis Irène Joliot-Curie (IJCLab) Orsay, France - contact

Contributors

• Shaymaa Hussein (IJCLab)