ExoSim 2 is the next generation of the Exoplanet Observation Simulator (ExoSim) tailored for spectro-photometric observations of transiting exoplanets from space, ground, and sub-orbital platforms. This software is a complete rewrite implemented in Python 3, embracing object-oriented design principles, which allow users to replace each component with their functions when required. ExoSim 2 is publicly available on GitHub, serving as a valuable resource for the scientific community. ExoSim 2 employs a modular architecture using Task classes, encapsulating simulation algorithms and functions. This flexible design facilitates the extensibility and adaptability of ExoSim 2 to diverse instrument configurations to address the evolving needs of the scientific community. Data management within ExoSim 2 is handled by the Signal class, which represents a structured data cube incorporating time, space, and spectral dimensions. The code execution in ExoSim 2 follows a three-step workflow: the creation of focal planes, the production of Sub-Exposure blocks, and the generation of non-destructive reads (NDRs). Each step can be executed independently, optimizing time and computational resources. ExoSim 2 has been extensively validated against other tools like ArielRad and has demonstrated consistency in estimating photon conversion efficiency, saturation time, and signal generation. The simulator has also been validated independently for instantaneous read-out and jitter simulation, and for astronomical signal representation. In conclusion, ExoSim 2 offers a robust and flexible tool for exoplanet observation simulation, capable of adapting to diverse instrument configurations and evolving scientific needs. Its design principles and validation results underscore its potential as a valuable resource in the field of exoplanet research.
Read full abstract