star-line

Structure for accelerating line importance sampling
git clone git://git.meso-star.fr/star-line.git
Log | Files | Refs | README | LICENSE

sln-build.1 (6146B)


      1 .\" Copyright (C) 2022, 2026 |Méso|Star> (contact@meso-star.com)
      2 .\" Copyright (C) 2026 Université de Lorraine
      3 .\" Copyright (C) 2022 Centre National de la Recherche Scientifique
      4 .\" Copyright (C) 2022 Université Paul Sabatier
      5 .\"
      6 .\" This program is free software: you can redistribute it and/or modify
      7 .\" it under the terms of the GNU General Public License as published by
      8 .\" the Free Software Foundation, either version 3 of the License, or
      9 .\" (at your option) any later version.
     10 .\"
     11 .\" This program is distributed in the hope that it will be useful,
     12 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
     14 .\" GNU General Public License for more details.
     15 .\"
     16 .\" You should have received a copy of the GNU General Public License
     17 .\" along with this program. If not, see <http://www.gnu.org/licenses/>.
     18 .Dd April 8, 2026
     19 .Dt SLN-BUILD 1
     20 .Os
     21 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
     22 .Sh NAME
     23 .Nm sln-build
     24 .Nd build an acceleration structure for line importance sampling
     25 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
     26 .Sh SYNOPSIS
     27 .Nm
     28 .Op Fl hsv
     29 .Op Fl a Ar arity
     30 .Op Fl e Ar polyline_opt Ns Op : Ns Ar polyline_opt No ...
     31 .Op Fl l Ar line_profile
     32 .Op Fl o Ar accel_struct
     33 .Fl P Ar pressure
     34 .Fl T Ar temperature
     35 .Fl m Ar molparams
     36 .Fl x Ar mixture
     37 .Op Ar lines
     38 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
     39 .Sh DESCRIPTION
     40 .Nm
     41 constructs a data structure designed to accelerate the sampling by
     42 importance of the spectral lines defined for a gas mixture under given
     43 thermodynamic conditions, from a spectroscopic parameters database.
     44 The generated structure is a binary tree that stores a polyline of
     45 spectral data at each node that it encompasses.
     46 .Pp
     47 The input spectroscopic data, i.e., the line list and isotopological
     48 metadata, are formatted in HITRAN file formats.
     49 If not provided, the list of lines is read from standard input.
     50 .Pp
     51 The options are as follows:
     52 .Bl -tag -width Ds
     53 .\""""""""""""""""""""""""""""""""""
     54 .It Fl a Ar arity
     55 Maximum number of children of an internal node in the constructed tree
     56 that partitions the input lines.
     57 It cannot be less than 2, which is its default value.
     58 .\""""""""""""""""""""""""""""""""""
     59 .It Fl e Ar polyline_opt Ns Op : Ns Ar polyline_opt No ...
     60 Configure the polylines, i.e., the data used to encode the shape of the
     61 spectrum in the acceleration structure.
     62 .Pp
     63 The polyline options are as follows:
     64 .Bl -tag -width Ds
     65 .It Cm err= Ns Ar decimation_error
     66 Relative error used to simplifly polylines.
     67 The larger it is, the coarser the polylines obtained, and therefore the
     68 less memory it uses.
     69 The default value is 0.01.
     70 .It Cm mesh= Ns Ar mesh_type
     71 Define how the polylines are meshed.
     72 .Pp
     73 The supported
     74 .Ar mesh_type
     75 values are as follows:
     76 .Bl -tag -width Ds
     77 .It Cm fit
     78 The polylines fit the spectrum data.
     79 .It Cm upper
     80 The polylines define an upper limit for the spectrum they encode.
     81 This is the default behavior.
     82 .El
     83 .It Cm vcount= Ns Ar vertex_count_hint
     84 Recommendation for the number of vertices around the center of the line.
     85 The fewer vertices there are, the coarser the polyline of a line and the
     86 smaller the memory usage.
     87 The default value is 16.
     88 .El
     89 .\""""""""""""""""""""""""""""""""""
     90 .It Fl h
     91 Display short help and exit.
     92 .\""""""""""""""""""""""""""""""""""
     93 .It Fl l Ar line_profile
     94 Defines the line profile.
     95 Currently,
     96 .Cm voigt
     97 is the only supported profile and therefore the default value.
     98 .\""""""""""""""""""""""""""""""""""
     99 .It Fl o Ar accel_struct
    100 Output file.
    101 If not defined, the acceleration structure is written to standard output.
    102 .\""""""""""""""""""""""""""""""""""
    103 .It Fl P Ar pressure
    104 Pressure of the gaz mixture, in atmospheres
    105 .Pq 1 atm = 1.01315 bar .
    106 .\""""""""""""""""""""""""""""""""""
    107 .It Fl s
    108 Specifies that input lines are formatted according to the binary format
    109 as written by the
    110 .Xr shtr 1
    111 utility, and not according to the HITRAN format.
    112 This format is more compact, allowing for faster loading of line data.
    113 .\""""""""""""""""""""""""""""""""""
    114 .It Fl T Ar temperature
    115 Temperature of the gaz mixture, in Kelvin.
    116 .\""""""""""""""""""""""""""""""""""
    117 .It Fl m Ar molparams
    118 Isotopologue metadata in HITRAN format.
    119 .\""""""""""""""""""""""""""""""""""
    120 .It Fl v
    121 Make
    122 .Nm
    123 verbose.
    124 Multiple
    125 .Fl v
    126 options increase the verbosity.
    127 The maximum is 3.
    128 .\""""""""""""""""""""""""""""""""""
    129 .It Fl x Ar mixture
    130 Composition of the gaz mixture in
    131 .Xr sln-mixture 5
    132 format.
    133 If a molecule is absent from this file, its concentration in the mixture
    134 is assumed to be zero.
    135 .El
    136 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    137 .Sh EXIT STATUS
    138 .Ex -std
    139 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    140 .Sh EXAMPLES
    141 Build a structure that accelerates importance sampling of the lines in
    142 the H2O spectrum, between 0 and 50 cm^-1, at a pressure of 1 atm and a
    143 temperature of 292 K.
    144 Use the default options to mesh the spectrum, so that the resulting
    145 structure represents an upper bound on the spectral data:
    146 .Bd -literal -offset Ds
    147 sln-build -P 1 -T 292 -o H2O_0-50_HITEMP2010_tree.bin \e
    148   -m /path/to/hitran/molparams.txt -x mixture.txt \e
    149   /path/to/hitran//H2O/01_0-50_HITEMP2010.par
    150 .Ed
    151 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    152 .Sh SEE ALSO
    153 .Xr shtr 1 ,
    154 .Xr sln-mixture 5
    155 .Rs
    156 .%A Yaniss Nyffenegger-Péré et al.
    157 .%T Spectrally refined unbiased monte carlo estimate of the earth's \
    158 global radiative cooling
    159 .%J Proceedings of the National Academy of Sciences
    160 .%P e2315492121
    161 .%V 121
    162 .%N 5
    163 .%D 2024
    164 .Re
    165 .Rs
    166 .%T The HITRAN Database
    167 .%U https://hitran.org/
    168 .Re
    169 .\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    170 .Sh STANDARDS
    171 .Rs
    172 .%A L.S. Rothman et al.
    173 .%T The HITRAN2012 molecular spectroscopic database
    174 .%J Journal of Quantitative Spectroscopy & Radiative Transfer
    175 .%V 130
    176 .%P pp. 4\(en50
    177 .%D 2013
    178 .Re
    179 .Pp
    180 .Rs
    181 .%A L.S. Rothman et al.
    182 .%T HITEMP, the high-temperature molecular spectroscopic database
    183 .%J Journal of Quantitative Spectroscopu & Radiative Transfer
    184 .%V 111
    185 .%P pp. 2139\(en2150
    186 .%D 2010
    187 .Re