Inversion codes for the Radiative Transfer equation
At the Institut für Sonnenpysik we have a strong tradition in the development and maintenance of inversion codes for the radiative transfer equation that are widely used to analyse spectropolarimetric data (i.e. Stokes vector) in order to infer the physical properties of the solar atmosphere (temperature, magnetic field, plasma velocity, etc). We are currently maintaining the VFISV inversion code as well as actively developing the FIRTEZ-DZ inversion code.
Very Fast Inversion for the Stokes Vector (VFISV)
This inversion code was originally developed between 2004-2010 in order to analyse data from the Helioseismic and Magnetic Imager (HMI) instrument on-board the Solar Dynamics observatory (SDO). HMI is a Michelson-type instrument with Lyot elements to perform the wavelength tunning. Up to date, VFISV has successfully produced almost 1.5 million maps of the magnetic field vector on the solar surface using HMI data with a cadence of a map every 12 minutes. At a later stage, the code was adapted to analyse data from spectrograph-type (i.e. spectropolarimeters) instruments as well as for Fabry-Perot-type instruments. The code is also being employed for quick-look analysis of GRIS data at KIS Science Data Centre.
VFISV focuses on speed and therefore it is a Milne-Eddington (M-E) inversion code. M-E codes retrieve the average kinetic and magnetic properties of the solar atmosphere over the region in which the analysed spectral lines are formed. More information about VFISV can be found here. The code is currenly being maintained by Dr. J. M. Borrero. This inversion code is free and open-software licensed under the GPL2 licence. There are currently two different versions available, one for Fabry-Perot instruments and another for spectrograph instruments. Both can be downloaded, along with an user-manual, from:
The distributed VFISV includes also data samples and configuration files of several well-known instruments such as Hinode/SP, GRIS/GREGOR and CRISP/SST so the user can test the inversions on them.
Note: If you use VFISV in your work/research, we kindly ask that you cite the original paper: Borrero et al. (2011), Sol.Phys, 273, 267
Forward and Inverse solver for the Radiative Transfer in geometrical height "Z".
The FIRTEZ-DZ inversion code is capable of retrieving, not the average kinematic and magnetic properties like M-E inversion codes do, but rather the full vertical stratification of these physical properties. FIRTEZ-DZ is the only inversion code capable of achieving this in the geometrical scale z instead of the optical depth scale. This is done by combining the radiative transfer equation for polarized light with the magnetohydrostatic momentum equation in ideal magnetohydrodynamics (MHD). The code is under heavily development and currently maintained by Dr. Adur Pastor Yabar and Dr. J. M. Borrero. Original funding for its development was provided by the DFG.
FIRTEZ-DZ is publicly available as free and open software under the GPL2 licence. It can be downloaded/cloned here:
- Inversion code source: gitlab.leibniz-kis.de/borrero/firtez-dz-mhs
- Manual: gitlab.leibniz-kis.de/borrero/firtez-dz-mhs/-/blob/master/manual_new/manual.pdf
Note: The MHS module is now fully implemented inside of FIRTEZ.
If you use FIRTEZ-DZ in your work/research, we kindly ask that you cite the original paper: Pastor Yabar et al. (2019), A&A, 629, 24. If you use the MHS module as well, please cite Borrero et al. (2021), A&A, 674, 190.
Stokes NLTE Analytically Powered Inversion (SNAPI) code.
SNAPI is developed by Dr. Ivan Milic (originally MPS, now KIS) and Dr. Michiel van Noort (MPS), as a code for synthesis and inversion of NLTE spectral lines. The code was born out of a new idea for the calculation of the response functions for NLTE lines, that relies on the explicit inclusion of the Lambda operator in the spatial coupling between different atmospheric points. This way, response functions can be calculated almost as quickly as in LTE. The code is written in C++ and suitable for massively-parallel calculations. It has been used for the analysis of various spectral lines so far but mostly Sodium I D lines and Mg I b2 spectral lines, as well as various NLTE lines.
The code is publicly available at: https://github.com/ivanzmilic/snapi
The calculation of response functions is described in Milic I., van Noort M. (2017), A&A, 601, 100, and the inversion code itself in Milic, I., van Noort M., (2018), A&A, 617, 11