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:
The LTE emissivity equation is:
Temperatures¶
Temperatures: Please provide temperatures in unit K.
|
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