Articles | Volume 18, issue 20
https://doi.org/10.5194/gmd-18-7529-2025
https://doi.org/10.5194/gmd-18-7529-2025
Development and technical paper
 | 
21 Oct 2025
Development and technical paper |  | 21 Oct 2025

HAPI2LIBIS (v1.0): a new tool for flexible high-resolution radiative transfer computations with libRadtran (version 2.0.5)

Antti Kukkurainen, Antti Mikkonen, Antti Arola, Antti Lipponen, Ville Kolehmainen, and Neus Sabater
Abstract

Atmospheric radiative transfer (RT) models are useful tools to increase our understanding of the physical interactions and processes occurring in the atmosphere and surface. In the category of free and open-source models, the library for radiative transfer (libRadtran) is a widely used and versatile package. However, running high-resolution calculations with libRadtran is often tedious since libRadtran does not include all the required information to run line-by-line executions (i.e., resolving individual spectral lines of gases) in a flexible way under specific atmospheric conditions, meaning that external software is required. This poses a problem for a user since generating necessary files for libRadtran requires familiarity with the topic of molecular spectroscopy in addition to knowing how to use the external software, which may not be tailored for producing libRadtran-compatible files. In this paper, we present HAPI2LIBIS, a compact software tool intended to be used in close connection with libRadtran to enable easy high-resolution calculations. HAPI2LIBIS streamlines the generation of high-resolution molecular absorption data for libRadtran by utilizing the latest version of the High-Resolution Transmission Molecular Absorption (HITRAN) database and the HITRAN Application Programming Interface (HAPI) with user-specified spectral ranges and atmospheric profiles. HAPI2LIBIS also stores computed absorption cross-sections in its dynamically constructed lookup table and includes an option for pressure- and temperature-dependent interpolation in order to accelerate subsequent simulations.

Share
1 Introduction

Atmospheric radiative transfer (RT) models are crucial when investigating the many interactions between electromagnetic radiation and the Earth's atmosphere and surface. RT models are used to simulate the transfer of solar and thermal radiation in the atmosphere and are widely used in Earth observation research. These models are essential for multiple applications, from instrument calibration (Govaerts and Clerici2004) and simulation (Vicent et al.2016) to atmospheric physics studies covering cloud (Alexandrov et al.2012), aerosol (Dubovik and King2000; Hasekamp and Landgraf2005; Randles et al.2013), volcanic ash (Kylling et al.2015; Sellitto et al.2016), and gas and trace gas remote sensing fields (Clough et al.1992; Schwaerzel et al.2020), as well as for the development of algorithms dedicated to the atmospheric correction process of airborne or satellite images (Richter and Schläpfer2013; Ju et al.2012). One field of research where RT models are used extensively is satellite remote sensing. Satellite remote sensing provides valuable information about the Earth's land surface, ocean, vegetation, and atmosphere (Donlon et al.2012). Since RT models are used to model and simulate satellite observations (Tenjo et al.2017; Lajas et al.2008), the significant increase in the spectral resolution of spectrometers in many planned satellite missions, such as the FLuorescence EXplorer (FLEX) (Drusch et al.2017) and the Copernicus Anthropogenic Carbon Dioxide Monitoring (CO2M) (Sierk et al.2021) missions, imposes higher demands on current RT models.

Many RT models have been developed over the last few decades, with gradual increases in their modeling capabilities and their complexity over time. Some of the most well-known models include the MODerate resolution atmospheric TRANsmission (MODTRAN) (Berk et al.2014), the Second Simulation of a Satellite Signal in the Solar Spectrum (6S) (Vermote et al.1997), the Matrix Operator MOdel (MOMO) RT code (Fell and Fischer2001), the Doubling-Adding KNMI (DAK) model (de Haan et al.1987), the SCIATRAN software package (Rozanov et al.2014), the Radiative Transfer for TOVS (RTTOV) model (Saunders et al.2018), the line-by-line radiative transfer model (LBLRTM) (Clough et al.2005), or the more recently developed Eradiate project (https://www.eradiate.eu/site/, last access: 13 October 2025). Among the open-source category of RT models, one widely used and extremely versatile RT model is the uvspec included in the library for radiative transfer (libRadtran) package (Mayer and Kylling2005; Emde et al.2016).

The libRadtran software package consists of a set of programs to carry out RT calculations in the solar and thermal spectral regions. Some of the benefits of libRadtran compared to many other RT codes are that it is free and open-source; it includes polarization, several molecular absorption parameterizations, a collection of RT solvers, and a database of cloud and aerosol models; and it has an extensive and clear documentation (https://www.libradtran.org/doc/libRadtran.pdf, last access: 13 October 2025). While libRadtran offers a comprehensive suite of capabilities for RT simulations, its usability and, therefore, flexibility are more limited when the user wishes to run high-spectral-resolution simulations. By default, libRadtran relies on band parameterizations, mainly the representative wavelengths absorption parameterization (REPTRAN) (Gasteiger et al.2014), when computing molecular absorption by atmospheric gases. The REPTRAN parameterization includes three different bandwidths, which are defined at a coarse-resolution option of 15 cm−1 width, a medium option of 5 cm−1 width, and a fine option of 1 cm−1 width. While REPTRAN satisfies the resolution requirements for many applications, it is not suitable for high-resolution simulations (sub-1 cm−1 spectral resolution) due to the inability to discern subtle absorption line differences. By using a user-defined molecular absorption data file that is computed with a line-by-line model, i.e., highly resolved spectral calculations, and that is compatible with libRadtran, it would be possible to increase the desired spectral resolution of libRadtran RT calculations. Unfortunately, libRadtran does not include a line-by-line model by default. To overcome this limitation, the download section of the libRadtran website offers pre-computed line-by-line absorption data files covering the spectral range from 500 nm to 100 µm for the six standard atmosphere files defined in Anderson et al. (1986). These absorption datasets were computed using the RT code GENLN2 (Edwards1992) with molecular spectroscopic data from the High-Resolution Transmission Molecular Absorption (HITRAN) database (Gordon et al.2022) using data from the older 1996 version (Rothman et al.1998). Thus, the potentially outdated nature of these absorption data files derived from old HITRAN versions and available only for six pre-defined models of the atmosphere limits the potential simulation accuracy to be achieved. Besides the possible accuracy limitation, the generation and use of these auxiliary files can make running high-spectral-resolution simulations with libRadtran an arduous task.

In this context, several programs have been developed to enable high-resolution calculations with libRadtran. For example, the widely used Atmospheric Radiative Transfer Simulator (ARTS) model (Buehler et al.2005; Eriksson et al.2011; Buehler et al.2018), which is a comprehensive tool used for atmospheric radiative transfer applications, can be used to compute molecular absorption files for libRadtran. Another tool available for this purpose is the Python scripts for Computational ATmospheric Spectroscopy (Py4CAtS) (Schreier et al.2019). However, these tools might be cumbersome for new and occasional users due to the extensive options provided by these sophisticated RT codes, the formalism required in input and output files, and the possible requirement for users to download beforehand the spectroscopic data from HITRAN or from other spectroscopic data sources.

To make libRadtran a more versatile program for high-spectral-resolution RT calculations by easing the simulation process, including high-spectral-resolution data, we present HAPI2LIBIS. HAPI2LIBIS is a Python-based software that uses the HITRAN Application Programming Interface (HAPI) (Kochanov et al.2016) as its core to compute molecular absorption files that are compatible with libRadtran. HAPI is a software framework that enables users to access, download, and work with the latest data from the HITRAN database (https://hitran.org/hapi/, last access: 13 October 2025) by providing a standardized and convenient way to extract spectral molecular data, thus increasing the functionality of the HITRAN database. In addition to HITRAN data, HAPI2LIBIS can utilize measured absorption cross-section data files that are included in libRadtran or provided by the user. These files can be used to complement some gas absorption calculations where HITRAN data are unavailable. The main purpose of HAPI2LIBIS is to enable high-resolution RT calculations with libRadtran for users that require a higher spectral resolution than REPTRAN can provide (i.e., finer than 1 cm−1) and for users who want to use the latest HITRAN data for line-by-line computations with different atmospheric gas constituents and profiles. These capabilities are particularly valuable for studies involving detailed molecular spectroscopy, where accurate representation of absorption lines is critical, as well as for high-resolution instrument development or characterization studies. While the HITRAN database contains data on absorption cross-sections, collision-induced absorption, and the water vapor continuum absorption, the current focus of the HAPI2LIBIS is to obtain the line-by-line data from HITRAN and to compute the cross-sections locally.

We have also included in HAPI2LIBIS the possibility of utilizing irregular interpolation methods to provide significant computational speed-ups without sacrificing too much accuracy. This option can be highly valuable, for example, when multiple runs with similar atmospheric conditions must be modeled since previously computed data can be reused so that the introduced interpolation error is minimal compared to the other error sources, such as sensor noise. Therefore HAPI2LIBIS could be used as part of a retrieval algorithm when the forward model requires line-by-line calculations. HAPI2LIBIS could act as a replacement for precomputed spectral absorption tables, such as ABSCO (Payne et al.2020) in the case of the total column of CO2 retrievals, or it could conveniently complement a retrieval algorithm where gas absorption cross-sections are computed as a part of the retrieval algorithm, such as in the CH4 profile retrieval of SWIRLAB (Tukiainen et al.2016). As HAPI2LIBIS is used before an RT model is run, it can be utilized simultaneously with spectral RT optimization methods, such as correlated-k (Kato et al.1999), low-streams interpolation (O'Dell2010), or machine-learning-based approaches (e.g., Su et al.2023; Mauceri et al.2022).

The remaining part of this work is structured as follows: Sect. 2 provides a detailed overview of the HAPI2LIBIS software package and its use together with libRadtran. Section 3 details, with practical examples, how to make use of HAPI2LIBIS and assess its performance against simulations done in libRadtran using REPTRAN. Additionally, Sect. 3 presents an example of the HAPI2LIBIS cross-section interpolation feature that is included to significantly speed up the computations between similar pre-computed atmospheric files. Finally, conclusions are provided in Sect. 4.

2 HAPI2LIBIS: connecting HITRAN, HAPI, and libRadtran

2.1 Installation and usage

The requirements to run HAPI2LIBIS are Python 3 and NumPy (Harris et al.2020), SciPy (Virtanen et al.2020), PyYAML, and NetCDF (Rew and Davis1990; Brown et al.1993) modules. Additionally, an internet connection is required to access the latest HITRAN data. The recommended operating systems to run HAPI2LIBIS are GNU/Linux and macOS systems. Python knowledge is recommended but not required to run HAPI2LIBIS successfully. It is possible to run HAPI2LIBIS without libRadtran installation, but it is not recommended since it would severely limit the functionality of HAPI2LIBIS.

HAPI2LIBIS software can be downloaded from GitHub (https://github.com/amikko/hapi2libis, last access: 13 October 2025) with an MIT license. The software consists of a Python file called hapi2libis.py and a human-readable text setting file written in yaml. HAPI2LIBIS also requires the hapi.py file, which is obtainable from GitHub (https://github.com/hitranonline/hapi, last access: 13 October 2025) and from the HITRAN webpage (https://hitran.org/hapi/, last access: 13 October 2025). The easiest way to install HAPI2LIBIS is to place both of the files, i.e., hapi2libis.py and hapi.py, into the same folder.

HAPI2LIBIS can be operated from the command line with the command python hapi2libis.py config.yaml, where config.yaml contains all the settings required by HAPI2LIBIS. The settings file contains a section for basic options that the user should edit for their local specification and simulation needs. The settings file also contains a section for advanced options, including features for advanced users and for those who might wish to edit the hapi2libis.py script to be more suitable for their specific needs. The basic options are listed in Table 1.

Table 1Description of the basic parameters in the settings file.

Download Print Version | Download XLSX

Before running HAPI2LIBIS for the first time, the user should modify the settings file. The minimum recommended settings that the user should modify to successfully run HAPI2LIBIS is the file path pointing to the libRadtran folder (e.g., libradtranpath: '/home/user/bin/libRadtran-2.0.5'), the desired atmosphere file from the ones provided by libRadtran (Anderson et al.1986), the wavelength range for the computation, and the desired resolution for the output molecular absorption file.

The general workflow of HAPI2LIBIS is presented in Fig. 1. In the initialization phase, the yaml settings file is read following the download of the latest spectroscopy information from the HITRAN database for the required gases in the specified spectral range. Based on the downloaded gases, HAPI2LIBIS will initiate the main computation loop where the absorption coefficients will be computed for every atmospheric layer defined by the model of the atmosphere selected from the libRadtran-included defaults by Anderson et al. (1986) or as defined by the user. Finally, the molecular absorption file (input for libRadtran) is generated.

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f01

Figure 1Flowchart visualizing the general phases of HAPI2LIBIS. The orange-colored shape for the settings file denotes the start of the flowchart, while the green-colored shapes show the regular flow. The blue-colored shapes show the processes that require using the advanced options. The gray shape in the middle shows the location of the option to speed up computations if the irregular interpolation is activated. Finally, the orange shapes at the end of the flowchart (top right) denote the output files of HAPI2LIBIS.

Download

2.2 The main computation sequence

The easiest way to run HAPI2LIBIS is to use one of the six standard atmosphere files that are included in libRadtran. These files consist of rows and columns, with each row corresponding to an atmospheric level, while the columns correspond to different parameters. The parameters are altitude above sea level, pressure, temperature, air concentration, and different gas concentrations. The gases included in these files are ozone (O3), oxygen (O2), water vapor (H2O), carbon dioxide (CO2), and nitrogen dioxide (NO2). Additionally, auxiliary gases from the US standard atmosphere can be used, and their concentration profiles are included in separate files in libRadtran. These are methane (CH4), nitrous oxide (N2O), carbon monoxide (CO), and nitrogen (N2). However, for advanced users, HAPI2LIBIS can also read custom atmosphere files that are constructed similarly to the standard atmosphere files provided that the file contains columns for altitude (km), pressure (hPa), temperature (K), and number concentration of air (cm−3). The additional columns should have the profiles for user-specified gases in the same units as the number concentration of air (cm−3). The column order of the user-specified gases is not fixed, but the gas concentration should be detailed in rows in altitude top-down order, and the units must be the same as in the standard files. For available gases to use in computations, we refer the reader to the HITRAN website (https://hitran.org/lbl/, last access: 13 October 2025).

HAPI2LIBIS will compute absorption cross-sections of each of the gases specified in the settings file using the pressures, temperatures, and gas concentrations defined in the atmosphere file for each of the atmospheric layers. Since the atmosphere file consists of n number of levels, HAPI2LIBIS will compute, by default, the properties of n−1 atmospheric layers, where one atmospheric layer consists of two consecutive rows in the atmosphere file, as per the atmospheric definition formalism in libRadtran. This process is referred to as the main loop (see Fig. 1).

The first step in the main loop is computing the layer altitude and thickness, where the user can choose in the settings file if the atmospheric parameters should be interpolated to the mean altitude of the layer. Without altitude interpolation, HAPI2LIBIS uses the lower altitude row values from the atmosphere file to compute the layer properties. For example, a layer from 0 to 1 km will use the values from the row corresponding to 0 km, while a layer from 1 to 2 km will use the values from the row corresponding to 1 km and so forth for the rest of the layers. With the altitude interpolation option enabled, HAPI2LIBIS assumes that the row values in the atmosphere file correspond to the values at the given altitude. Therefore, to compute the layer properties, HAPI2LIBIS will interpolate the values in the atmosphere file to the layer mean altitude. Compared to the previous example, now, a layer from 0 to 1 km will use the interpolated values corresponding to an altitude of 0.5 km, while a layer from 1 to 2 km will use the interpolated values corresponding to an altitude of 1.5 km and so forth for the rest of the layers. The option to control this is the parameter interpolate_to_layer_midpoint in the settings file, where the value true means that the interpolated values are used.

Once the layer properties for layer l are computed, HAPI2LIBIS will move to the second step in the main loop and compute the mixing ratios for every used gas using the following equation:

(1) ξ gas ( l ) = c gas ( l ) c air ( l ) ,

where ξgas denotes the mixing ratio of a gas in layer l, cgas denotes the concentration of a gas in layer l, and cair denotes the concentration of air in layer l. These mixing ratios are later used to communicate to HAPI the gas mixture composition, which affects the air- and self-broadening parameters during the computation of absorption cross-sections.

In the third step of the main loop, HAPI2LIBIS will compute the absorption cross-sections for every gas used. This step is usually the slowest one, where the majority of the total computation time will be spent. The cross-sections are computed in the wavelength range specified in the settings file's wl_range_nm parameter, with a wavenumber step option nu_resolution. The broadening function HAPI2LIBIS uses can be set in the settings file where the possible functions to use are listed in the HAPI manual (https://hitran.org/static/hapi/hapi_manual.pdf, last access: 13 October 2025). The function choices are Voigt profile (Voigt), Lorentzian profile (Lorentz), speed-dependent Voigt profile (SDVoigt), Doppler profile (Doppler), and Hartmann–Tran profile (HT). The broadening function accounts for air- and self-broadening, where air-broadening refers to the widening of spectral lines caused by collisions between the absorbing gas and surrounding atmosphere, while self-broadening refers to widening due to collisions between molecules of the same gas.

HAPI2LIBIS will utilize HAPI to compute cross-sections for gases downloaded from HITRAN in the initialization phase. The cross-sections are computed one by one, where HAPI's diluent self parameter is set to the mixing ratio of the gas being computed, while the diluent air is set to the difference between unity and the mixing ratio of the gas being computed.

From the computed cross-sections, HAPI2LIBIS will compute the gas mixture's total absorption coefficient and use that to compute the optical depth of the atmospheric layer l. The total absorption coefficient σabs is computed with the following equation:

(2) σ abs ( l ) = gas Q gas ( l ) c gas ( l ) ,

where Qgas is the computed absorption cross-section for a gas. Now, the optical depth of the layer l can be computed with the following equation:

(3) τ ( l ) = σ abs ( l ) z ( l ) ,

where τ denotes the optical depth of the layer, and z denotes the layer thickness. Finally, HAPI2libis will save the computed values in a NetCDF file specified by hapi2libis_mol_tau_file.nc, which libRadtran is able to use with the libRadtran input option mol_tau_file abs hapi2libis_mol_tau_file.nc.

2.3 Storing calculated absorption cross-sections and their irregular grid interpolation

The calculated absorption cross-sections are stored by default in a NetCDF file for a particular gas, wavelength band, and wavenumber resolution. NetCDF is a widely used data format due to its ability to efficiently store large datasets with multi-dimensional arrays. Utilizing NetCDF files allows HAPI2LIBIS to save and retrieve computed absorption cross-sections efficiently, minimizing storage requirements while ensuring data integrity. The file can store the absorption cross-sections for different temperature (T), pressure (p), and gas partial pressure combinations (pg). To further reduce the computational weight of absorption cross-section calculations, HAPI2LIBIS enables interpolation in the (T,p,pg) parameter space. Two irregular interpolation schemes are available: nearest-neighbor and bounding-box interpolation.

Both of these two interpolation methods depend on a concept of a metric (distance function) in the (T,p,pg) space. The metric used in HAPI2LIBIS to compute the distance dw between two points ri=(Ti,pi,pgi) and rj=(Tj,pj,pgj) is

(4) d w ( r i , r j ) = ( r j - r i ) T W ( r j - r i ) ,

where WR3×3, and W=diag(w1,w2,w3). The values w1, w2, and w3 can be different for each gas, wavenumber region, spectral resolution, broadening function, and pressure and temperature used. For a particular dataset consisting of points ri=(Ti,pi,pgi), i=0,1,,n, the weighting matrix W is

(5) W = ( max { T i } - min { T i } ) - 2 0 0 0 ( max { p i } - min { p i } ) - 2 0 0 0 ( max { p g i } - min { p g i } ) - 2 .

To interpolate point r=(T,p,pg), an inverse distance weighting method (Franke1982) is used. The described method is modified by not using all of the points in the dataset but rather using only two: ri and rj. These two points are selected from a subset C={ri|i0,1,,ndw(r,ri)<dc}, where dc threshold value is selected such that |C|=nc, for which nc is chosen arbitrarily beforehand. In other words, these two points are picked from nc closest points to r. The two points must also fulfill the following criteria:

  1. min(Ti,Tj)<T<max(Ti,Tj),

  2. min(pi,pj)<p<max(pi,pj),

  3. min(pgi,pgj)<pg<max(pgi,pgj),

  4. v(ri,rj)<vmax, and

  5. v(ri,rj)<=v(ri,rj)ri,rjC,

where

(6) v = det ( diag ( W [ | T i - T j | , | p i - p j | , | p g i - p g j | ] T ) )

is the volume of the box defined by the points ri and rj in the dw metric. More simply put, the interpolant must be contained in the box defined by ri and rj, the box volume must be less than a predetermined threshold value, and the selected box must be the smallest box in the set C.

With suitable ri and rj, the interpolated absorption cross-section Qgas at the point r is

(7) Q gas ( r ) = Q gas ( r i ) d w ( r , r j ) + Q gas ( r j ) d w ( r , r i ) d w ( r , r j ) + d w ( r , r i ) .

2.4 Extending HITRAN with auxiliary tables from libRadtran

The HITRAN database does not cover all of the wavelengths where significant molecular absorption is encountered in the atmosphere. For example, the Chappuis band of O3, which covers the wavelength range between 400 and 650 nm, cannot be downloaded from the HITRAN database. We note that libRadtran manages this by including several measured absorption cross-section files below 1130 nm for O3 and NO2 and for O2–O2 collision pairs.

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f02

Figure 2Comparison of simulated direct transmission from sun to surface at full (a) and instrument (b) resolution with a HAPI2LIBIS-generated molecular absorption optical depth file against a REPTRAN fine-molecular-absorption parameterization. The instrument response function was a triangular-slit function with a full width at half maximum (FWHM) of 0.3 nm.

Download

To make HAPI2LIBIS comparable to the highest-resolution option of REPTRAN, we have included in HAPI2LIBIS the possibility of using some of the measured absorption cross-section files included in libRadtran (Emde et al.2016). The measured absorption cross-section table values are used as per the instructions in the file. This means that they may lack pressure and temperature effects. The values are interpolated to the requested wavelength range and resolution, meaning that no line-broadening effects are applied. For O3, the available files are molina (Molina and Molina1986), bass_and_paur (Bass and Paur1985), daumount (Daumont et al.1992), and bogumil (Bogumil et al.2003). For NO2, the available files are burrows (Burrows et al.1998) and bogumil (Bogumil et al.2003). For O2–O2, the only available file is greenblatt (Greenblatt et al.1990).

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f03

Figure 3Simulated TOA radiance at full (a) and instrument (b) resolution using REPTRAN, HAPI2LIBIS, and line-by-line molecular absorption data files provided on the libRadtran webpage. The atmospheric simulation includes O2, H2O, and CO2.

Download

3 Model comparison results

3.1 Comparison of libRadtran simulations

For this section's results, the libRadtran simulation specifications are fixed to the following defaults unless otherwise stated. For the measurement geometry, the solar zenith angle and the surface albedo values were set to 35° and 0.3, respectively. The atmosphere chosen was the mid-latitude summer. The atmosphere contains default-type aerosols in accordance with Shettle (1990), corresponding to spring–summer conditions with a visibility of 50 km, and rural-type aerosols in the lower 2 km of the atmosphere and background-type aerosols above 2 km in the atmosphere. These simulation parameters were chosen since they represent typical mid-latitude summer conditions, which are commonly used as a benchmark in atmospheric radiative transfer studies.

The output spectral resolution in libRadtran is usually defined by the chosen extraterrestrial spectrum. We decided to use the full-resolution spectrum according to Kurucz (1992), which can be downloaded from the libRadtran webpage. Concerning HAPI2LIBIS, we used every available isotope for the downloaded HITRAN gases and the default auxiliary tables for O3, NO2, and O2–O2, namely molina, burrows, and greenblatt, respectively. The broadening function was set as Voigt, and the wavenumber resolution was 0.01 cm−1.

Figure 2 shows libRadtran-simulated direct transmission results when using the REPTRAN fine-molecular-absorption parameterization (1 cm−1) and the HAPI2LIBIS molecular absorption file with a full resolution (a) and a simulated instrument resolution (b). The instrument spectra are computed by convolving the full-resolution spectra with a triangular-slit function with a full width at half maximum (FWHM) of 0.3 nm, which represents a typical high-resolution instrument. The trace gases that were included in the simulations were O3, O2, H2O, CO2, NO2, CH4, N2O, CO, N2, and O2–O2. The figure shows the higher resolution of HAPI2LIBIS compared to REPTRAN, which is as expected since REPTRAN is not a line-by-line method and places greater priority on simulation speed over accuracy. The differences in spectral resolution between HAPI2LIBIS and REPTRAN are particularly noticeable in the 2000–2500 nm range, where HAPI2LIBIS shows many of the finer absorption lines that are missing in the REPTRAN data. For easier comparison, Figs. A1 and A2 in Appendix A show difference plots of the results shown in Fig. 2. The libRadtran simulation to generate the spectra shown in Fig. 2 took around 13 min with REPTRAN and around 92 min with HAPI2LIBIS (single thread on Intel® Xeon® Gold 6230 CPU, 2.1 GHz, 64 GB memory).

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f04

Figure 4Simulated TOA radiance at full (a) and instrument (b) resolution using REPTRAN, HAPI2LIBIS, and line-by-line molecular absorption data files as provided on the libRadtran webpage. The distinction compared to the results shown in Fig. 3 is that, now, the atmospheric O3 is included in the simulations.

Download

Figure 3 shows simulated top-of-atmosphere (TOA) radiance results with full (a) and instrument (b) resolution using libRadtran paired with the REPTRAN fine-molecular-absorption parameterization, the HAPI2LIBIS molecular absorption file, and the line-by-line absorption data that can be downloaded from the libRadtran webpage. The observing instrument has nadir view geometry. The trace gases that are present in the libRadtran line-by-line molecular absorption files are O3, O2, H2O, CO2, CH4, N2O, CO, and N2, but for this specific example, the trace gases that were included in the simulation were O2, H2O, and CO2. These gases were selected since they all appear in the HITRAN database for the requested wavelength range, meaning that the results are comparable. The figure shows that all three methods show major absorption lines at the same wavelengths, which is as expected. The figure also shows that REPTRAN has significantly smaller absorption spikes compared to the other two methods due to the coarser spectral resolution, while HAPI2LIBIS and line-by-line files provide similar results. The difference in the height of the spikes between HAPI2LIBIS and line-by-line files can be attributed to the different versions of HITRAN used (2020 and 1996) or to some possible differences in the used line-broadening function. The figure also shows that there is no substantial difference between the convolved lower-resolution spectra despite REPTRAN missing many of the absorption spikes; however, for high-resolution instrument data studies, these differences are significant.

Figure 4 shows the simulated TOA radiance results with full (a) and instrument (b) resolution when we include O3 in the simulations that were presented in Fig. 3. Since the libRadtran line-by-line data files are based only on HITRAN data, which do not include O3 at the chosen wavelengths, we can clearly see the difference in the TOA radiance between REPTRAN and HAPI2LIBIS compared to the libRadtran line-by-line data.

3.2 Comparison of interpolation methods

As a demonstration of the accuracy and speed of the irregular interpolation method, we processed 40 different atmospheric profiles used as priors in the Total Carbon Column Observation Network (TCCON) retrieval (Wunch et al.2011). The prior profiles used are from the Sodankylä TCCON (Kivi et al.2022) conducted from 1 March 2023 to 11 April 2023. Using the provided pressure, temperature profiles, and mixing profiles for CO2, CH4, and H2O, the absorption cross-sections were computed in the 1600–1700 nm wavelength range. In that range, 36 765 discrete wavenumbers were used for calculating Voigt line shapes of 17 210, 12 858, and 3507 absorption lines for CO2, CH4, and H2O, respectively. Each of the used atmospheres had 50 layers from 0 to 70 km and layer thicknesses from 0.42 to 2.38 km. As an example, Fig. 5 shows the optical densities used in this comparison exercise at different altitudes. To demonstrate HAPI2LIBIS capabilities in the thermal-infrared wavelength region, a similar example is presented in Fig. A3.

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f05

Figure 5Examples of the fully computed total spectral optical densities used in interpolation comparison at different altitudes in the atmosphere from the first processed atmosphere (left) and the zoomed-in section to highlight the altitude dependence on the line shape (right). Contributions of CO2, CH4, and H2O are aggregated together as this is the content of the mol_abs file created by HAPI2LIBIS.

Download

In Fig. 6, the interpolation speed-ups with different interpolation schemes are compared to fully computing the cross-sections. The speed-up comparison was done on an Intel® Core i7-8650U CPU. Additionally, in Table 2, the file sizes of the accumulated databases after processing 40 atmospheres are presented.

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f06

Figure 6The runtime for processing the absorption cross-sections for each gas at every layer for a single atmosphere as a function of the amount of previously processed atmospheres. FC stands for full computation, NN stands for nearest neighbor, and BB stands for bounding box. The vmax parameter for NN is 0.01, and for BB it is included in the legend.

Download

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f07

Figure 7The relative error across the spectra for each interpolation method as a function of the number of previously processed atmospheres. The mean relative error is the solid blue line, the 3σ envelope (99.7 % of errors closer than mean when assuming normality) is the dashed red line, and all of the errors are contained within the dotted black line.

Download

Table 2The file sizes of the absorption cross-section databases after processing the 40 atmospheres.

Download Print Version | Download XLSX

The interpolation methods decrease the runtime needed for absorption cross-section computations, as is apparent in Fig. 6, increasingly so when more atmospheres are computed. The bounding-box method enables 2- to 20-times-faster computation of the cross-sections, depending on the parameter. The nearest-neighbor method is also faster than the full computation, but the runtime reduction is hardly as drastic. The speed-up still increases since the runtime curves for interpolators have a downward trend. Since the interpolation methods accumulate the computed cross-sections into the database, it is reasonable that, with fewer interpolable cases, more would need to be computed and stored in the database, which is visible from Table 2. The total stored cross-section sizes ranging from 57.4 to 617.5 Mb for different interpolation methods show that the fastest method also requires the least disk space.

In Fig. 7, the relative error in the resulting transmittance is presented as a function of the atmospheric index for each interpolation method. The transmittance is computed with the following formula:

(8) T ( λ ) = exp - i = 1 50 l i τ i ( λ ) ,

where li is the thickness of the ith layer, and τi(λ) is the optical density at the ith atmospheric layer. In Fig. 7, the tradeoff in terms of accuracy versus computation speed is visible. Albeit requiring the most compute time and disk space, the nearest-neighbor method (a) performs consistently, with the largest outlier errors being 3 % for all 40 of the atmospheres. The bounding-box methods (b–e) can have outlier errors of up to 50 %, but the errors are reduced as more atmospheres are computed. The decrease in vmax from 0.001 to 0.0001 increases the accuracy, but reducing vmax more does not visibly increase accuracy further. The bounding-box method appears to require a burn-in period of about 15 atmospheres before the error distribution becomes somewhat stationary. After the burn-in period, the 3σ envelope ranges from 1 % to 2 %, signifying that almost all spectral points are accurately interpolated.

The requirement for the burn-in period can be explained by examining Eq. (5), which represents the full range of the data within the database. Before the database is adequately populated, the weighting matrix can cause the interpolation not to be strict enough, which results in higher errors. The large outlier errors can be explained by the linear nature of the bounding-box interpolation. Because the Voigt line shapes themselves are not linear with respect to p, T, or pg, the linear interpolation can cause some unphysical peak shifts, which can result in large relative errors in transmittance, especially in the presence of fully saturated absorption lines. This can be a problem in all cases where linear interpolation of absorption cross-sections is done. However, in the use cases where spectral observations of specific instruments are simulated, the instrument line shape function can be broad enough to nullify the errors of these rare outliers.

4 Conclusions

In this paper, we presented HAPI2LIBIS, a Python-based tool designed to integrate HITRAN data with libRadtran by interfacing HAPI with the aim of enabling easy high-resolution radiative transfer calculations with libRadtran. To achieve this goal, HAPI2LIBIS has been made as interoperable with libRadtran as possible. With HAPI2LIBIS, the user is able to compute molecular absorption cross-sections of various gases for different atmospheric conditions from the ultraviolet to the microwave region.

In HAPI2LIBIS, the process of computing absorption cross-sections benefits from the high-precision molecular absorption line data available in the HITRAN database. Unlike some alternative strategies that rely on precomputed tables or band-parameterized models, HAPI2LIBIS calculates absorption cross-sections dynamically based on the gas concentrations in each atmospheric layer, thus improving the accuracy of the simulations.

The use of HAPI2LIBIS can be particularly useful for applications such as high-resolution instrument simulations and studies requiring precise representation of molecular absorption features. The cross-section interpolation database enables rapid processing of a series of atmospheres with only slight errors, as well as the boosting of repeated computational studies by conveniently storing the previously computed cross-sections.

As a final remark, most of the capabilities present in HAPI2LIBIS can be found in other sophisticated models. For example, both LBLRTM and Py4CAtS can compute absorption cross-sections of gases based on HITRAN data. However, the core design principle of HAPI2LIBIS is to add more functionality into libRadtran while being relatively easy to use. In future HAPI2LIBIS versions, planned updates include implementing parallel-computation techniques in the cross-section computation, utilizing more data from HITRAN than only the line-by-line data, and the option to use different line-broadening functions for different altitudes instead of using only one for the whole profile.

Appendix A: Additional figures
https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f08

Figure A1Differences in terms of simulated direct transmissions from sun to surface at full (a) and instrument (b) resolution when utilizing HAPI2LIBIS-generated molecular absorption optical depth files and REPTRAN fine-molecular-absorption parameterization.

Download

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f09

Figure A2Histograms of the differences in terms of simulated direct transmissions from sun to surface at full (a–b) and instrument (c–d) resolution when utilizing HAPI2LIBIS-generated molecular absorption optical depth files and REPTRAN fine-molecular-absorption parameterization. For visual clarity, the vertical axis in panels (a) and (c) is cut.

Download

https://gmd.copernicus.org/articles/18/7529/2025/gmd-18-7529-2025-f10

Figure A3Examples of optical thicknesses computed at different altitudes of the atmosphere by HAPI2LIBIS in the thermal-infrared wavelength region. Similarly to Fig. 5, contributions of CO2 and H2O are aggregated together.

Download

Code and data availability

The current version of HAPI2LIBIS is publicly available on GitHub at https://github.com/amikko/hapi2libis (last access: 13 October 2025) under the MIT license. The exact version of HAPI2LIBIS used to produce the results shown in this paper and the input data and scripts to produce the plots presented in this paper are archived on Zenodo under the following DOI: https://doi.org/10.5281/zenodo.14673990 (Kukkurainen and Mikkonen2025).

Author contributions

AK and AM developed the software, performed the numerical simulations, and wrote the first draft of the paper. AA, AL, VK, and NS collaborated on the design of the software, supervised the work, and contributed to the writing and editing of the paper.

Competing interests

The contact author has declared that none of the authors has any competing interests.

Disclaimer

Publisher’s note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. While Copernicus Publications makes every effort to include appropriate place names, the final responsibility lies with the authors. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.

Financial support

This work was supported by the UEF Doctoral Programme in Science, Technology and Computing (SCITECO, grant no. dnro 203/03.01.02/2020); by the Research Council of Finland under grant no. 356937 (ArcticSIF); by the Research Council of Finland flagship of Atmosphere and Climate Competence Center (grant nos. 357904 and 337552 (ACCC)); by the Research Council of Finland (grant no. 331829) (CitySpot); by the Research Council of Finland Flagship of Advanced Mathematics for Sensing, Imaging and Modeling (grant nos. 358944 and 359196) (FAME); and by the Research Council of Finland Centre of Excellence in Inverse Modelling and Imaging (grant nos. 353084 and 353082).

Review statement

This paper was edited by Cenlin He and reviewed by two anonymous referees.

References

Alexandrov, M. D., Cairns, B., Emde, C., Ackerman, A. S., and van Diedenhoven, B.: Accuracy assessments of cloud droplet size retrievals from polarized reflectance measurements by the research scanning polarimeter, Remote Sensing of Environment, 125, 92–111, 2012. a

Anderson, G., Clough, S., Kneizys, F., Chetwynd, J., and Shettle, E.: AFGL Atmospheric Constituent Profiles (0.120km), AIR FORCE GEOPHYSICS LABORATORY, Hanscom AFB, Massachusetts, USA, p. 46, https://www.researchgate.net/publication/235054307_AFGL_Atmospheric_Constituent_Profiles_0120km (last access: 13 October 2025), 1986. a, b, c

Bass, A. M. and Paur, R. J.: The Ultraviolet Cross-Sections of Ozone: I. The Measurements, in: Atmospheric Ozone, edited by: Zerefos, C. S. and Ghazi, A., Springer Netherlands, Dordrecht, 606–610, ISBN 978-94-009-5313-0, 1985. a

Berk, A., Conforti, P., Kennett, R., Perkins, T., Hawes, F., and Van Den Bosch, J.: MODTRAN® 6: A major upgrade of the MODTRAN® radiative transfer code, in: 2014 6th Workshop on Hyperspectral Image and Signal Processing: Evolution in Remote Sensing (WHISPERS), IEEE, 4 pp., https://doi.org/10.1109/WHISPERS.2014.8077573, 2014. a

Bogumil, K., Orphal, J., Homann, T., Voigt, S., Spietz, P., Fleischmann, O., Vogel, A., Hartmann, M., Kromminga, H., Bovensmann, H., Frerick, J., and Burrows, J.: Measurements of molecular absorption spectra with the SCIAMACHY pre-flight model: instrument characterization and reference data for atmospheric remote-sensing in the 230–2380 nm region, Journal of Photochemistry and Photobiology A: Chemistry, 157, 167–184, https://doi.org/10.1016/S1010-6030(03)00062-5, 2003. a, b

Brown, S. A., Folk, M., Goucher, G., Rew, R., and Dubois, P. F.: Software for Portable Scientific Data Management, Computer in Physics, 7, 304–308, https://doi.org/10.1063/1.4823180, 1993. a

Buehler, S., Eriksson, P., Kuhn, T., von Engeln, A., and Verdes, C.: ARTS, the atmospheric radiative transfer simulator, Journal of Quantitative Spectroscopy and Radiative Transfer, 91, 65–93, https://doi.org/10.1016/j.jqsrt.2004.05.051, 2005. a

Buehler, S. A., Mendrok, J., Eriksson, P., Perrin, A., Larsson, R., and Lemke, O.: ARTS, the Atmospheric Radiative Transfer Simulator – version 2.2, the planetary toolbox edition, Geosci. Model Dev., 11, 1537–1556, https://doi.org/10.5194/gmd-11-1537-2018, 2018. a

Burrows, J., Dehn, A., Deters, B., Himmelmann, S., Richter, A., Voigt, S., and Orphal, J.: Atmospheric remote-sensing reference data from GOME: Part 1. Temperature-dependent absorption cross-sections of NO2 in the 231–794 nm range, Journal of Quantitative Spectroscopy and Radiative Transfer, 60, 1025–1031, https://doi.org/10.1016/S0022-4073(97)00197-0, 1998. a

Clough, S., Shephard, M., Mlawer, E., Delamere, J., Iacono, M., Cady-Pereira, K., Boukabara, S., and Brown, P.: Atmospheric radiative transfer modeling: a summary of the AER codes, Journal of Quantitative Spectroscopy and Radiative Transfer, 91, 233–244, https://doi.org/10.1016/j.jqsrt.2004.05.058, 2005. a

Clough, S. A., Iacono, M. J., and Moncet, J.-L.: Line-by-line calculations of atmospheric fluxes and cooling rates: Application to water vapor, Journal of Geophysical Research: Atmospheres, 97, 15761–15785, https://doi.org/10.1029/92JD01419, 1992. a

Daumont, D., Brion, J., Charbonnier, J., and Malicet, J.: Ozone UV spectroscopy I: Absorption cross-sections at room temperature, Journal of Atmospheric Chemistry, 15, 145–155, https://doi.org/10.1007/BF00053756, 1992. a

de Haan, J. F., Bosma, P., and Hovenier, J.: The adding method for multiple scattering calculations of polarized light, Astronomy and Astrophysics, 183, 371–391, 1987. a

Donlon, C., Berruti, B., Buongiorno, A., Ferreira, M.-H., Féménias, P., Frerick, J., Goryl, P., Klein, U., Laur, H., Mavrocordatos, C., Nieke, J., Rebhan, H., Seitz, B., Stroede, J., and Sciarra, R.: The Global Monitoring for Environment and Security (GMES) Sentinel-3 mission, Remote Sensing of Environment, 120, 37–57, https://doi.org/10.1016/j.rse.2011.07.024, 2012. a

Drusch, M., Moreno, J., Del Bello, U., Franco, R., Goulas, Y., Huth, A., Kraft, S., Middleton, E. M., Miglietta, F., Mohammed, G., Nedbal, L., Rascher, U., Schüttemeyer, D., and Verhoef, W.: The FLuorescence EXplorer Mission Concept – ESA’s Earth Explorer 8, IEEE Transactions on Geoscience and Remote Sensing, 55, 1273–1284, https://doi.org/10.1109/TGRS.2016.2621820, 2017. a

Dubovik, O. and King, M. D.: A flexible inversion algorithm for retrieval of aerosol optical properties from Sun and sky radiance measurements, Journal of Geophysical Research: Atmospheres, 105, 20673–20696, https://doi.org/10.1029/2000JD900282, 2000. a

Edwards, D.: GENLN2: A General Line-by-line Atmospheric Transmittance and Radiance Model, Version 3.0 Description and Users Guide, Tech. rep., https://doi.org/10.5065/D6W37T86, 1992. a

Emde, C., Buras-Schnell, R., Kylling, A., Mayer, B., Gasteiger, J., Hamann, U., Kylling, J., Richter, B., Pause, C., Dowling, T., and Bugliaro, L.: The libRadtran software package for radiative transfer calculations (version 2.0.1), Geosci. Model Dev., 9, 1647–1672, https://doi.org/10.5194/gmd-9-1647-2016, 2016. a, b

Eriksson, P., Buehler, S., Davis, C., Emde, C., and Lemke, O.: ARTS, the atmospheric radiative transfer simulator, version 2, Journal of Quantitative Spectroscopy and Radiative Transfer, 112, 1551–1558, https://doi.org/10.1016/j.jqsrt.2011.03.001, 2011. a

Fell, F. and Fischer, J.: Numerical simulation of the light field in the atmosphere–ocean system using the matrix-operator method, Journal of Quantitative Spectroscopy and Radiative Transfer, 69, 351–388, 2001. a

Franke, R.: Scattered data interpolation: Tests of some methods, Mathematics of Computation, 38, 181–200, 1982. a

Gasteiger, J., Emde, C., Mayer, B., Buras, R., Buehler, S., and Lemke, O.: Representative wavelengths absorption parameterization applied to satellite channels and spectral bands, Journal of Quantitative Spectroscopy and Radiative Transfer, 148, 99–115, https://doi.org/10.1016/j.jqsrt.2014.06.024, 2014. a

Gordon, I., Rothman, L., Hargreaves, R., Hashemi, R., Karlovets, E., Skinner, F., Conway, E., Hill, C., Kochanov, R., Tan, Y., Wcisło, P., Finenko, A., Nelson, K., Bernath, P., Birk, M., Boudon, V., Campargue, A., Chance, K., Coustenis, A., Drouin, B., Flaud, J., Gamache, R., Hodges, J., Jacquemart, D., Mlawer, E., Nikitin, A., Perevalov, V., Rotger, M., Tennyson, J., Toon, G., Tran, H., Tyuterev, V., Adkins, E., Baker, A., Barbe, A., Canè, E., Császár, A., Dudaryonok, A., Egorov, O., Fleisher, A., Fleurbaey, H., Foltynowicz, A., Furtenbacher, T., Harrison, J., Hartmann, J., Horneman, V., Huang, X., Karman, T., Karns, J., Kassi, S., Kleiner, I., Kofman, V., Kwabia–Tchana, F., Lavrentieva, N., Lee, T., Long, D., Lukashevskaya, A., Lyulin, O., Makhnev, V., Matt, W., Massie, S., Melosso, M., Mikhailenko, S., Mondelain, D., Müller, H., Naumenko, O., Perrin, A., Polyansky, O., Raddaoui, E., Raston, P., Reed, Z., Rey, M., Richard, C., Tóbiás, R., Sadiek, I., Schwenke, D., Starikova, E., Sung, K., Tamassia, F., Tashkun, S., Vander Auwera, J., Vasilenko, I., Vigasin, A., Villanueva, G., Vispoel, B., Wagner, G., Yachmenev, A., and Yurchenko, S.: The HITRAN2020 molecular spectroscopic database, Journal of Quantitative Spectroscopy and Radiative Transfer, 277, 107949, https://doi.org/10.1016/j.jqsrt.2021.107949, 2022. a

Govaerts, Y. M. and Clerici, M.: Evaluation of radiative transfer simulations over bright desert calibration sites, IEEE Transactions on Geoscience and Remote Sensing, 42, 176–187, 2004. a

Greenblatt, G. D., Orlando, J. J., Burkholder, J. B., and Ravishankara, A. R.: Absorption measurements of oxygen between 330 and 1140 nm, Journal of Geophysical Research: Atmospheres, 95, 18577–18582, https://doi.org/10.1029/JD095iD11p18577, 1990. a

Harris, C. R., Millman, K. J., van der Walt, S. J., Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., Kern, R., Picus, M., Hoyer, S., van Kerkwijk, M. H., Brett, M., Haldane, A., del Río, J. F., Wiebe, M., Peterson, P., Gérard-Marchant, P., Sheppard, K., Reddy, T., Weckesser, W., Abbasi, H., Gohlke, C., and Oliphant, T. E.: Array programming with NumPy, Nature, 585, 357–362, https://doi.org/10.1038/s41586-020-2649-2, 2020. a

Hasekamp, O. P. and Landgraf, J.: Linearization of vector radiative transfer with respect to aerosol properties and its use in satellite remote sensing, Journal of Geophysical Research: Atmospheres, 110, https://doi.org/10.1029/2004JD005260, 2005. a

Ju, J., Roy, D. P., Vermote, E., Masek, J., and Kovalskyy, V.: Continental-scale validation of MODIS-based and LEDAPS Landsat ETM+ atmospheric correction methods, Remote Sensing of Environment, 122, 175–184, 2012. a

Kato, S., Ackerman, T. P., Mather, J. H., and Clothiaux, E. E.: The k-distribution method and correlated-k approximation for a shortwave radiative transfer model, Journal of Quantitative Spectroscopy and Radiative Transfer, 62, 109–121, 1999. a

Kivi, R., Heikkinen, P., and Kyrö, E.: TCCON data from Sodankylä (FI), Release GGG2020.R0, Caltech Data [data set], https://doi.org/10.14291/tccon.ggg2020.sodankyla01.R0, 2022. a

Kochanov, R., Gordon, I., Rothman, L., Wcisło, P., Hill, C., and Wilzewski, J.: HITRAN Application Programming Interface (HAPI): A comprehensive approach to working with spectroscopic data, Journal of Quantitative Spectroscopy and Radiative Transfer, 177, 15–30, https://doi.org/10.1016/j.jqsrt.2016.03.005, 2016. a

Kukkurainen, A. and Mikkonen, A.: Initial version of HAPI2LIBIS with examples, Zenodo [code], https://doi.org/10.5281/zenodo.14673990, 2025. a

Kurucz, R. L.: Synthetic Infrared Spectra, in: Infrared Solar Physics, edited by: Rabin, D. M. and Jefferies, J. T., Kluwer, Acad., Norwell MA, ISBN 0-7923-2522-2, 1992. a

Kylling, A., Kristiansen, N., Stohl, A., Buras-Schnell, R., Emde, C., and Gasteiger, J.: A model sensitivity study of the impact of clouds on satellite detection and retrieval of volcanic ash, Atmos. Meas. Tech., 8, 1935–1949, https://doi.org/10.5194/amt-8-1935-2015, 2015. a

Lajas, D., Wehr, T., Eisinger, M., and Lefebvre, A.: An overview of the EarthCARE mission and end-to-end simulator, Remote Sensing of Clouds and the Atmosphere XIII, 7107, 52–59, 2008. a

Mauceri, S., O’Dell, C. W., McGarragh, G., and Natraj, V.: Radiative transfer speed-up combining optimal spectral sampling with a machine learning approach, Frontiers in Remote Sensing, 3, 932548, https://doi.org/10.3389/frsen.2022.932548, 2022.  a

Mayer, B. and Kylling, A.: Technical note: The libRadtran software package for radiative transfer calculations – description and examples of use, Atmos. Chem. Phys., 5, 1855–1877, https://doi.org/10.5194/acp-5-1855-2005, 2005. a

Molina, L. T. and Molina, M. J.: Absolute absorption cross sections of ozone in the 185- to 350-nm wavelength range, Journal of Geophysical Research: Atmospheres, 91, 14501–14508, https://doi.org/10.1029/JD091iD13p14501, 1986. a

O'Dell, C. W.: Acceleration of multiple-scattering, hyperspectral radiative transfer calculations via low-streams interpolation, Journal of Geophysical Research: Atmospheres, 115, https://doi.org/10.1029/2009JD012803, 2010. a

Payne, V. H., Drouin, B. J., Oyafuso, F., Kuai, L., Fisher, B. M., Sung, K., Nemchick, D., Crawford, T. J., Smyth, M., Crisp, D., Adkins, E., Hodges, J. T., Long, D. A., Mlawer, E. J., Merrelli, A., Lunny, E., and O’Dell, C. W.: Absorption coefficient (ABSCO) tables for the Orbiting Carbon Observatories: Version 5.1, Journal of Quantitative Spectroscopy and Radiative Transfer, 255, 107217, https://doi.org/10.1016/j.jqsrt.2020.107217, 2020. a

Randles, C. A., Kinne, S., Myhre, G., Schulz, M., Stier, P., Fischer, J., Doppler, L., Highwood, E., Ryder, C., Harris, B., Huttunen, J., Ma, Y., Pinker, R. T., Mayer, B., Neubauer, D., Hitzenberger, R., Oreopoulos, L., Lee, D., Pitari, G., Di Genova, G., Quaas, J., Rose, F. G., Kato, S., Rumbold, S. T., Vardavas, I., Hatzianastassiou, N., Matsoukas, C., Yu, H., Zhang, F., Zhang, H., and Lu, P.: Intercomparison of shortwave radiative transfer schemes in global aerosol modeling: results from the AeroCom Radiative Transfer Experiment, Atmos. Chem. Phys., 13, 2347–2379, https://doi.org/10.5194/acp-13-2347-2013, 2013. a

Rew, R. and Davis, G.: NetCDF: An interface for scientific data access, IEEE Computer Graphics and Applications, 10, 76–82, https://doi.org/10.1109/38.56302, 1990. a

Richter, R. and Schläpfer, D.: Atmospheric/topographic correction for satellite imagery (ATCOR-2/3 User Guide, Version 8.3. 1, February 2014), ReSe Applications Schläpfer, Langeggweg, 3, https://www.rese-apps.com/pdf/atcor3_manual.pdf (last access: 13 October 2025), 2013. a

Rothman, L., Rinsland, C., Goldman, A., Massie, S., Edwards, D., Flaud, J.-M., Perrin, A., Camy-Peyret, C., Dana, V., Mandin, J.-Y., Schroeder, J., McCann, A., Gamache, R., Wattson, R., Yoshino, K., Chance, K., Jucks, K., Brown, L., Nemtchinov, V., and Varanasi, P.: The HITRAN molecular spectroscopic database and HAWKS (HITRAN atmospheric workstation): 1996 edition, Journal of Quantitative Spectroscopy and Radiative Transfer, 60, 665–710, https://doi.org/10.1016/S0022-4073(98)00078-8, 1998. a

Rozanov, V., Rozanov, A., Kokhanovsky, A. A., and Burrows, J.: Radiative transfer through terrestrial atmosphere and ocean: Software package SCIATRAN, Journal of Quantitative Spectroscopy and Radiative Transfer, 133, 13–71, 2014. a

Saunders, R., Hocking, J., Turner, E., Rayer, P., Rundle, D., Brunel, P., Vidot, J., Roquet, P., Matricardi, M., Geer, A., Bormann, N., and Lupu, C.: An update on the RTTOV fast radiative transfer model (currently at version 12), Geosci. Model Dev., 11, 2717–2737, https://doi.org/10.5194/gmd-11-2717-2018, 2018. a

Schreier, F., Gimeno García, S., Hochstaffl, P., and Städt, S.: Py4CAtS – PYthon for Computational ATmospheric Spectroscopy, Atmosphere, 10, https://doi.org/10.3390/atmos10050262, 2019. a

Schwaerzel, M., Emde, C., Brunner, D., Morales, R., Wagner, T., Berne, A., Buchmann, B., and Kuhlmann, G.: Three-dimensional radiative transfer effects on airborne and ground-based trace gas remote sensing, Atmos. Meas. Tech., 13, 4277–4293, https://doi.org/10.5194/amt-13-4277-2020, 2020. a

Sellitto, P., di Sarra, A., Corradini, S., Boichu, M., Herbin, H., Dubuisson, P., Sèze, G., Meloni, D., Monteleone, F., Merucci, L., Rusalem, J., Salerno, G., Briole, P., and Legras, B.: Synergistic use of Lagrangian dispersion and radiative transfer modelling with satellite and surface remote sensing measurements for the investigation of volcanic plumes: the Mount Etna eruption of 25–27 October 2013, Atmos. Chem. Phys., 16, 6841–6861, https://doi.org/10.5194/acp-16-6841-2016, 2016. a

Shettle, E. P.: Models of aerosols, clouds, and precipitation for atmospheric propagation studies, in: AGARD Conf. Proce., https://www.researchgate.net/publication/234312286_Models_of_aerosols_clouds_and_precipitation_for_atmospheric_propagation_studies (last access: 13 October 2025), 1990. a

Sierk, B., Fernandez, V., Bézy, J.-L., Meijer, Y., Durand, Y., Courrèges-Lacoste, G. B., Pachot, C., Löscher, A., Nett, H., Minoglou, K., Boucher, L., Windpassinger, R., Pasquet, A., Serre, D., and te Hennepe, F.: The Copernicus CO2M mission for monitoring anthropogenic carbon dioxide emissions from space, in: International Conference on Space Optics – ICSO 2020, SPIE, vol. 11852, 1563–1580, https://doi.org/10.1117/12.2599613, 2021. a

Su, M., Liu, C., Di, D., Le, T., Sun, Y., Li, J., Lu, F., Zhang, P., and Sohn, B.-J.: A multi-domain compression radiative transfer model for the Fengyun-4 Geosynchronous Interferometric Infrared Sounder (GIIRS), Advances in Atmospheric Sciences, 40, 1844–1858, 2023. a

Tenjo, C., Rivera-Caicedo, J. P., Sabater, N., Servera, J. V., Alonso, L., Verrelst, J., and Moreno, J.: Design of a generic 3-D scene generator for passive optical missions and its implementation for the ESA’s FLEX/Sentinel-3 tandem mission, IEEE Transactions on Geoscience and Remote Sensing, 56, 1290–1307, 2017. a

Tukiainen, S., Railo, J., Laine, M., Hakkarainen, J., Kivi, R., Heikkinen, P., Chen, H., and Tamminen, J.: Retrieval of atmospheric CH4 profiles from Fourier transform infrared data using dimension reduction and MCMC, Journal of Geophysical Research: Atmospheres, 121, 10312–10327, https://doi.org/10.1002/2015JD024657, 2016. a

Vermote, E., Tanre, D., Deuze, J., Herman, M., and Morcette, J.-J.: Second Simulation of the Satellite Signal in the Solar Spectrum, 6S: an overview, IEEE Transactions on Geoscience and Remote Sensing, 35, 675–686, https://doi.org/10.1109/36.581987, 1997. a

Vicent, J., Sabater, N., Tenjo, C., Acarreta, J. R., Manzano, M., Rivera, J. P., Jurado, P., Franco, R., Alonso, L., Verrelst, J., and Moreno, J.: FLEX End-to-End Mission Performance Simulator, IEEE Transactions on Geoscience and Remote Sensing, 54, 4215–4223, https://doi.org/10.1109/TGRS.2016.2538300, 2016. a

Virtanen, P., Gommers, R., Oliphant, T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, P., Weckesser, W., Bright, J., van der Walt, S. J., Brett, M., Wilson, J., Millman, K. J., Mayorov, N., Nelson, A. R. J., Jones, E., Kern, R., Larson, E., Carey, C. J., Polat, İ., Feng, Y., Moore, E. W., VanderPlas, J., Laxalde, D., Perktold, J., Cimrman, R., Henriksen, I., Quintero, E. A., Harris, C. R., Archibald, A. M., Ribeiro, A. H., Pedregosa, F., van Mulbregt, P., and SciPy 1.0 Contributors: SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python, Nature Methods, 17, 261–272, https://doi.org/10.1038/s41592-019-0686-2, 2020. a

Wunch, D., Toon, G. C., Blavier, J.-F. L., Washenfelder, R. A., Notholt, J., Connor, B. J., Griffith, D. W., Sherlock, V., and Wennberg, P. O.: The total carbon column observing network, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences, 369, 2087–2112, 2011. a

Download
Short summary
HAPI2LIBIS is a new software tool that enhances the capabilities of the radiative transfer model libRadtran. It simplifies high-wavelength-resolution simulations by using up-to-date molecular data from the HITRAN (High-Resolution Transmission Molecular Absorption) database and streamlining computations. This tool helps researchers analyze how gases interact with radiation in the Earth's atmosphere and at the surface, improving atmospheric studies and satellite observations and making detailed modeling more accurate and accessible.
Share