Inversion Codes

During the second week of the school we will present three different spectral line inversion codes that allow users to tackle different kinds of observations. Here, you will find pointers to the source codes and instructions to download them and install them prior to the school.

Please make an attempt to download the source code for these three spectral line inversion packages, and install them prior to the school. This will save precious lecture time, which will be put to better use by teaching you how to run spectral line inversions, rather than walking you through the compilation/installation section of each manual!

That said, there will be some time set aside during the first week of the school to iron out code compilation issues.


The Stokes Inversion based on Response functions (Ruiz Cobo & Del Toro Iniesta, 1992, ApJ, 398, 375) is a general-purpose spectral line inversion code that works in the Local Thermodynamical Equilibrium (LTE) regime, which dictates that the populations of the energy levels of the atoms depend only on local values of temperature and density. The polarization in spectral lines is induced by the Zeeman effect. SIR is able to infer the height stratification of the thermodynamical and magnetic properties of the solar atmosphere, and admits one or two atmospheric components. The code is publicly available on GitHub and can be downloaded from here. The SIR distribution comes with an IDL library to read, write and visualize SIR-formatted input and output. A recently developed Python version is available in the second link below.


The Stockholm Inversion Code (de la Cruz Rodríguez et al., 2016, ApJ, 830L, 30) is a non-LTE spectral line inversion package based on Han Uitenbroek's RH radiative transfer code. The forward modeling solves the non-LTE radiative transfer equation using the Multi-level Accelerated Lambda (MALI) formalism of Rybicky & Hummer and takes into account the polarization induced via the Zeeman effect only. You can reference this manuscript when you use this code. The installation instructions and source code are available through the following links:


HAnle and ZEeman Light (Asensio Ramos et al., 2008, ApJ, 683, 542) is a computer program for the synthesis and inversion of Stokes profiles caused by the joint action of atomic level polarization and the Hanle and Zeeman effects in some spectral lines of diagnostic interest, such as those of the He I 1083.0 nm and 587.6 nm (or D3) multiplets. It is based on the quantum theory of spectral line polarization, which takes into account in a rigorous way all the relevant physical mechanisms and ingredients (optical pumping, atomic level polarization, level crossings and repulsions, Zeeman, Paschen-Back and Hanle effects). The influence of radiative transfer on the emergent spectral line radiation is taken into account through a suitable slab model. For the purpose of this school, participants will use version 2.0 of the HAZEL code. The code is available to download here and detailed documentation can be found here.


Although not required for the school, we have made the RH forward radiative transfer code available for you to download and play with here.