Stick spectra

LTE/Non-LTE: Choose LTE or Non-LTE.
If you choose LTE, please ignore # Calculate non-LTE # section.
If you choose Non-LTE, more details can be found from Non-LTE.

Absorption/Emission: Choose Absorption or Emission.

WnWlUnit: Choose to provide the range of wavenumber wn in unit of cm-1 (cm⁻¹), or wavelength in unit of um (μm) or nm.

Range: Give two values as the minimum and maximum of the wavenumber range in unit of cm⁻¹ or wavelength range in unit of μm or nm. Please use the same unit as WnWlUnit. Don’t use , or ; between these two numbers, just leave blank here.

Note

WnWlUnit controls the calculation range, saved file name, and the first column in the saved .stick file.
If WnWlUnit is wn cm-1, the first column is wavenumber in cm⁻¹.
If WnWlUnit is wl nm or wl um, the first column is wavelength in that unit.
PlotStickSpectraWnWl only controls the x-axis used for plotting and does not change the saved .stick file.

The LTE intensity equation is:

\[ I(f \gets i) = \frac{g'{A}_{fi}}{8 \pi c \tilde{v}^2_{fi}} \frac{e^{-c_2 \tilde{E}'' / T} (1 - e^{-c_2 \tilde{v}_{fi} / T })}{Q(T)}. \]

The LTE emissivity equation is:

\[ \varepsilon (i \gets f) = \frac{g'{A}_{fi}hc}{4 \pi}\frac{e^{-c_2 \tilde{E}'/T}}{Q(T)}. \]

Temperatures

Temperatures: Please provide temperatures in unit K.

Temperatures

T = ?

296

296 K

300,1000,3000,8000

300 K, 1000 K, 3000 K, 8000 K

1000:5000:1000

1000 K, 2000 K, 3000 K, 4000 K, 5000 K

300, 3000

1000: 3000: 500

[300,3000]

[300, 3000]

Filters

UncFilter(Y/N), Threshold(Y/N), and QNsFilter(Y/N) are filters, please see Filters.

For ExoMol, ExoMolHR, and ExoAtom input, QN labels and formats used by QNsFilter(Y/N) are derived from the metadata by default. The QNslabel and QNsformat rows in examples are optional overrides for custom or legacy files.

Plot stick spectra

PlotStickSpectra(Y/N): If you need plot a figure of stick spectra (intensity or emisivity), please write Y after PlotStickSpectra(Y/N), otherwise, write N.

PlotStickSpectraMethod: Choose to plot y-axis in linear lin or logarithm log.

PlotStickSpectraWnWl: Choose to plot x-axis with wavenumber wn in unit of cm-1 (cm⁻¹), or wavelength wl in unit of um (μm) or nm.

Y-axisLimitStickSpectra: If you need set the lower limit of y-axis for plotting, please write after Y-axisLimitStickSpectra, otherwise, the default lower limit y-axis is 1e-30 (\(=10^{-30}\)) in unit of cm/molecule.

Example

Save wavenumber in unit of cm⁻¹ in the file and plot logarithm stick spectra in unit of cm/molecule and wavenumber in unit of cm⁻¹.

# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            300,3000                  # Temperatures in unit of K
WnWlUnit                                wn         cm-1           # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   0          30000          # Same unit as WnWlUnit
Absorption/Emission                     Absorption                # 'Absorption' or 'Emission'
UncFilter(Y/N)                          Y          0.01           # If Y, default value 0.01 cm-1
Threshold(Y/N)                          Y          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          N          +/-[]   e/f[]  ElecState[]  v[1,1;1,0;2,;,0]  


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   Y          
PlotStickSpectraMethod                  log                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wn         cm-1           # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule

Save wavenumber in unit of cm⁻¹ in the file and plot logarithm stick spectra in unit of cm/molecule and wavelength in unit of nm.

# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            1000:4000:1000            # Temperatures in unit of K
WnWlUnit                                wn         cm-1           # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   0          30000          # Same unit as WnWlUnit
Absorption/Emission                     Absorption                # 'Absorption' or 'Emission'
UncFilter(Y/N)                          Y          0.01           # If Y, default value 0.01 cm-1
Threshold(Y/N)                          Y          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          Y          +/-[]   e/f[]  ElecState[]  v[]  


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   Y          
PlotStickSpectraMethod                  log                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wl         nm             # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule

Save wavelength in unit of μm in the file and plot linear stick spectra in unit of cm/molecule and wavelength in unit of nm.

# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            300                       # Temperatures in unit of K
WnWlUnit                                wl         um             # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   0.3        10             # Same unit as WnWlUnit
Absorption/Emission                     Absorption                # 'Absorption' or 'Emission'
UncFilter(Y/N)                          Y          0.01           # If Y, default value 0.01 cm-1
Threshold(Y/N)                          Y          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          Y          +/-[]   e/f[]  ElecState[]  v[]  


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   Y          
PlotStickSpectraMethod                  lin                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wl         nm             # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule

Example

# Data source #
Database                                ExoMol
Molecule                                MgH
Isotopologue                            24Mg-1H
Dataset                                 XAB
SpeciesID                               666


# File path #
ReadPath                                /mnt/data/exomol/exomol3_data/
SavePath                                /home/jingxin/data/pyexocross/
LogFilePath                             /home/jingxin/data/pyexocross/log/MgH_ExoMol_stick_Ab.log


# Functions #
Conversion                              0
PartitionFunctions                      0
SpecificHeats                           0
CoolingFunctions                        0
Lifetimes                               0
OscillatorStrengths                     0
StickSpectra                            1
CrossSections                           0


# Cores and chunks #
NCPUtrans                               4
NCPUfiles                               1
ChunkSize                               1000000
Device                                  CPU                       # CPU(default) or GPU
GPUBackend                              AUTO                      # AUTO(default), CUDA, PyTorch-CUDA, CuPy-CUDA, or MPS (used only when Device=GPU)
GPUBatchLines                           8192                      # GPU line-batch size (only used when Device=GPU)
GPUBatchGrid                            256                       # GPU grid-batch size (only used when Device=GPU)


# Quantum numbers for conversion, stick spectra and cross sections #
QNslabel                                +/-  e/f   ElecState    v     Lambda   Sigma    Omega
QNsformat                               %1s  %1s   %12s         %3d   %3d      %5.1f    %5.1f


# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            300,3000                  # Temperatures in unit of K
WnWlUnit                                wn         cm-1           # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   0          30000          # Same unit as WnWlUnit
Absorption/Emission                     Absorption                # 'Absorption' or 'Emission'
UncFilter(Y/N)                          Y          0.01           # If Y, default value 0.01 cm-1
Threshold(Y/N)                          Y          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          N          +/-[]   e/f[]  ElecState[]  v[1,1;1,0;2,;,0]  


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   Y          
PlotStickSpectraMethod                  log                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wn         cm-1           # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule
# Data source #
Database                                ExoMol
Molecule                                NO
Isotopologue                            14N-16O
Dataset                                 XABC
SpeciesID                               81


# File path #
ReadPath                                /mnt/data/exomol/exomol3_data/
SavePath                                /home/jingxin/data/pyexocross/
LogFilePath                             /home/jingxin/data/pyexocross/log/NO_HITRAN_stick_Em_T2000_wl150-1000.log


# Functions #
Conversion                              0
PartitionFunctions                      0
SpecificHeats                           0
CoolingFunctions                        0
Lifetimes                               0
OscillatorStrengths                     0
StickSpectra                            1
CrossSections                           0


# Cores and chunks #
NCPUtrans                               8
NCPUfiles                               1
ChunkSize                               1000000
Device                                  CPU                       # CPU(default) or GPU
GPUBackend                              AUTO                      # AUTO(default), CUDA, PyTorch-CUDA, CuPy-CUDA, or MPS (used only when Device=GPU)
GPUBatchLines                           8192                      # GPU line-batch size (only used when Device=GPU)
GPUBatchGrid                            256                       # GPU grid-batch size (only used when Device=GPU)


# Quantum numbers for conversion, stick spectra and cross sections #
QNslabel                                J       X     Omega   v1      Sym    F
QNsformat                               %5.1f   %2s   %3s     %2d     %1s    %5s


# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            2000:4000:500             # Temperatures in unit of K
WnWlUnit                                wl         nm             # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   150        1000           # Same unit as WnWlUnit
Absorption/Emission                     Emission                  # 'Absorption' or 'Emission'
UncFilter(Y/N)                          Y          0.01           # If Y, default value 0.01 cm-1
Threshold(Y/N)                          Y          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          Y          X[]       Omega[]       v1[1,0;2,]


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   Y          
PlotStickSpectraMethod                  log                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wn         cm-1           # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule
# Data source #
Database                                HITRAN
Molecule                                NO
Isotopologue                            14N-16O
Dataset                                 NO-HITRAN
SpeciesID                               81


# File path #
ReadPath                                /home/jingxin/data/HITRAN/
SavePath                                /home/jingxin/data/pyexocross/
LogFilePath                             /home/jingxin/data/pyexocross/log/NO_HITRAN_stick_Em_T1000_wn1000-5000.log


# Functions #
Conversion                              0
PartitionFunctions                      0
SpecificHeats                           0
CoolingFunctions                        0
Lifetimes                               0
OscillatorStrengths                     0
StickSpectra                            1
CrossSections                           0


# Cores and chunks #
NCPUtrans                               32
NCPUfiles                               1
ChunkSize                               1000000
Device                                  CPU                       # CPU(default) or GPU
GPUBackend                              AUTO                      # AUTO(default), CUDA, PyTorch-CUDA, CuPy-CUDA, or MPS (used only when Device=GPU)
GPUBatchLines                           8192                      # GPU line-batch size (only used when Device=GPU)
GPUBatchGrid                            256                       # GPU grid-batch size (only used when Device=GPU)


# Quantum numbers for conversion, stick spectra and cross sections #
QNslabel                                J       X     Omega   v1      Sym    F
QNsformat                               %5.1f   %2s   %3s     %2d     %1s    %5s


# Calculate stick spectra or cross sections #
LTE/Non-LTE                             LTE                       # 'LTE' or 'Non-LTE'
Temperatures                            1000                      # Temperatures in unit of K
WnWlUnit                                wn         cm-1           # Wavenumber (wn in unit of cm-1) or wavelength (wl in unit of um or nm)
Range                                   1000       5000           # Same unit as WnWlUnit
Absorption/Emission                     Emission                  # 'Absorption' or 'Emission'
UncFilter(Y/N)                          N          0.005          # If Y, default value 0.01 cm-1
Threshold(Y/N)                          N          1e-30          # If Y, default value 1e-30 cm/molecule
QNsFilter(Y/N)                          N          X[]       Omega[]       v1[1,0;2,]


# Calculate stick spectra #
PlotStickSpectra(Y/N)                   N          
PlotStickSpectraMethod                  log                       # Plot in linear (lin) or logarithm (log)
PlotStickSpectraWnWl                    wn         cm-1           # Wavenumber (wn in unit cm-1) or wavelength (wl in unit[nm or um])
Y-axisLimitStickSpectra                 1e-30                     # Default value is 1e-30 cm/molecule