Configuration Files
SynIM uses YAML files to define the parameters of Adaptive Optics (AO) systems. This standardizes the workflow and ensures seamless integration with the SPECULA framework.
Naming Conventions
The primary method SynIM uses to recognize various system components (such as wavefront sensors, deformable mirrors, optical sources, and the pupil) is based on the section name (the main key) within the YAML file.
To ensure components are correctly identified and loaded, section names must follow these rules, where x represents a progressive number from 1 to N:
Shack-Hartmann Sensors (WFS): Must be named
sh(if there is only one sensor) orshx(e.g.,sh1,sh2, or specifying the guide star likesh_lgs1,sh_ngs1,sh_ref1).Deformable Mirrors (DM): Must be named
dm(if single) ordmx(e.g.,dm1,dm2).Optical Sources: Define the projection geometry (fundamental for tomographic matrices). They must be named
sourcexor specify the type (e.g.,source_lgs1,source_ngs1,source_ref1,source_opt1).Pupil Mask: Parameters for the pupil mask must be placed in a section named
pupilstoporpupil_stop(general parameters like pixel sampling go in themainsection instead).
Legacy PASSATA Support (.pro files)
Older workflows based on PASSATA used IDL-style configuration files (.pro). To maximize performance and keep the codebase clean and simple, SynIM no longer performs native runtime parsing of .pro files.
However, full backward compatibility is maintained via a standalone offline conversion tool provided with the SynIM package.
Converting .pro to .yaml
You can convert your legacy parameter files using the convert_pro_file.py file.
python tools/convert_pro_file.py params_mcao.pro
This will generate a cleanly formatted params_mcao.yaml file in the same directory.