MolecularHydrogen¶
- class msaexp.utils.MolecularHydrogen(**kwargs)[source]¶
Bases:
objectTools for working with molecular hydrogen lines using the helpful relations from Aditya Togi and J. D. T. Smith 2016 ApJ, 830, 18
Optically thin flux:
\[F_j = h \nu A N_{j+2} \Omega / 4\pi\]Line flux F as a function of temperature, T (excitation diagram):
\[ \begin{align}\begin{aligned}N_{j+2} = \frac{g_{j+2}}{Z(T)} e^{-E_\mathrm{upper} / kT}\\Z(T) = \sum g_j e^{-E_j / kT}\\F_j \propto \frac{N_{j+2} A}{\lambda}\end{aligned}\end{align} \]Line data from the Gemini compilation at https://www.gemini.edu/observing/resources/near-ir-resources/spectroscopy/important-h2-lines
Attributes Summary
Length of data table
precompute \(h \cdot \nu \cdot A\) (erg / second)
Index of the reference transition (usually "1-0 S(1)") in the data table
Transition frequency
Methods Summary
Nj([T])Compute number density: \(N_j = \frac{g_j}{Z(T)}~e^{-E_j / kT}\)
ZT([T])Compute \(Z(T) = \sum g_j e^{-E_j / kT}\)
h2_mass([line_flux, transition, z])Still figuring out unit conversions....
Initialize
fluxtableline_flux([T])Line flux \(F_j = h \nu A N_{j+2} \Omega / 4\pi\)
line_names([prefix])LaTeX line names
Read the data table and set the units on some columns
spec_model(spec[, z, update_flux, ...])Make an MSAEXP model
temperature_powerlaw([n, Tl, Tu, nsteps])Generate a powerlaw temperature distribution \(dN = T^{-n} dT\)
Reformat into a
LineListobjectupdate_flux_table([T, min_line_fraction, ...])Get a list of lines and ratios
Attributes Documentation
- N¶
Length of data table
- h_nu_A¶
precompute \(h \cdot \nu \cdot A\) (erg / second)
- ix¶
Index of the reference transition (usually “1-0 S(1)”) in the data table
- nu¶
Transition frequency
- reference = ('1-0', 'S(1)')¶
- separate_ZT = False¶
Methods Documentation
- h2_mass(line_flux=<Quantity 1.e-20 erg / (s cm2)>, transition=('1-0', 'S(1)'), z=1.01, **kwargs)[source]¶
Still figuring out unit conversions….
- spec_model(spec, z=0.0, update_flux=True, wave_range=None, fnu=True, single=True, **kwargs)[source]¶
Make an MSAEXP model