tardis.iip_plasma.properties.continuum module

class tardis.iip_plasma.properties.continuum.BfHeatingRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
gammaPandas DataFrame, dtype float

The rate coefficient for bound-free heating.

calculate(bf_heating_estimator, photo_ion_index_sorted)[source]
calculate_from_radiation_field_model(photo_ion_cross_sections, w, t_rad)[source]
latex_formula = ('',)
latex_name = ('\\h_{\\textrm{bf}}}',)
outputs = ('bf_heating_coeff',)
class tardis.iip_plasma.properties.continuum.BfHeatingRateCoeffEstim(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
gammaPandas DataFrame, dtype float

The rate coefficient for bound-free heating.

calculate(bf_heating_estimator, photo_ion_index_sorted)[source]
latex_formula = ('',)
latex_name = ('\\h_{\\textrm{bf}}}',)
outputs = ('bf_heating_coeff_estim',)
class tardis.iip_plasma.properties.continuum.CollDeexcRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(lte_level_boltzmann_factor_Te, coll_exc_coeff)[source]
outputs = ('coll_deexc_coeff',)
class tardis.iip_plasma.properties.continuum.CollExcCooling(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(coll_exc_coeff, coll_deexc_coeff, level_number_density, electron_densities, nu_lines_coll)[source]
outputs = ('coll_exc_cooling', 'coll_deexc_heating')
class tardis.iip_plasma.properties.continuum.CollExcRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(lines, excitation_energy, t_electrons, yg, yg_allowed_index, yg_forbidden_index)[source]
static exp1_times_exp(x)[source]

Product of the Exponential integral E1 and an exponential. This function calculates the product of the Exponential integral E1 and an exponential in a way that also works for large values.

Parameters:
xarray_like

Input values.

Returns:
array_like

Output array.

latex_formula = ('',)
latex_name = ('\\c_{\\kappa\\textrm{i,}}', '\\nu_\\textrm{lines}_coll')
outputs = ('coll_exc_coeff', 'nu_lines_coll')
class tardis.iip_plasma.properties.continuum.CollIonRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
coll_ion_coeffPandas DataFrame, dtype float

The rate coefficient for collisional ionization. Multiply with the electron density and the level number density to obtain the total rate.

calculate(photo_ion_cross_sections, t_electrons)[source]

Calculates the rate coefficient for ionization by thermal electrons using the Seaton approximation (Equation 5-79 of Mihalas 1978).

Returns:
recomb_coeff: pd.DataFrame

The rate coefficient for collisional ionization.

latex_formula = ('',)
latex_name = ('\\c_{\\textrm{i,}\\kappa}',)
outputs = ('coll_ion_coeff',)
class tardis.iip_plasma.properties.continuum.CollRecombRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
coll_recomb_coeffPandas DataFrame, dtype float

The rate coefficient for collisional recombination. Multiply with the electron density squared and the ion number density to obtain the total rate.

calculate(phi_lucy, coll_ion_coeff)[source]
latex_formula = ('',)
latex_name = ('\\c_{\\kappa\\textrm{i,}}',)
outputs = ('coll_recomb_coeff',)
class tardis.iip_plasma.properties.continuum.Logger(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(ion_number_density, level_number_density, t_electrons, b, gamma)[source]
latex_formula = ('',)
latex_name = ('',)
outputs = ('logging',)
class tardis.iip_plasma.properties.continuum.PhotoIonRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
gammaPandas DataFrame, dtype float

The rate coefficient for radiative ionization.

calculate(photo_ion_estimator, photo_ion_index_sorted, previous_t_electrons, photo_ion_cross_sections, previous_b)[source]
calculate_from_radiation_field_model(photo_ion_cross_sections, w, t_rad)[source]
latex_formula = ('',)
latex_name = ('\\gamma', '', '')
outputs = ('gamma', 'gamma_Ly_estim', 'gamma_Ly_analytic', 'gamma_Ly_analytic_evolution', 'gamma_Ly_estim_evolution')
class tardis.iip_plasma.properties.continuum.SpontRecombRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
alpha_spPandas DataFrame, dtype float

The rate coefficient for spontaneous recombination.

calculate(photo_ion_cross_sections, t_electrons, phi_lucy)[source]
latex_formula = ('',)
latex_name = ('\\alpha^{\\textrm{sp}}',)
outputs = ('alpha_sp',)
class tardis.iip_plasma.properties.continuum.StimRecombCoolingRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
gammaPandas DataFrame, dtype float

The rate coefficient for stimulated recombination cooling.

calculate(stim_recomb_cooling_estimator, photo_ion_index_sorted)[source]
latex_formula = ('',)
latex_name = ('\\alpha^{\\textrm{stim, E}}}',)
outputs = ('stim_recomb_cooling_coeff',)
class tardis.iip_plasma.properties.continuum.StimRecombRateCoeff(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes:
gammaPandas DataFrame, dtype float

The rate coefficient for radiative ionization.

calculate(stim_recomb_estimator, photo_ion_index_sorted, phi_lucy)[source]
calculate_from_radiation_field_model(photo_ion_cross_sections, w, t_rad, stim_recomb_estimator, t_electrons, phi_lucy)[source]
latex_formula = ('',)
latex_name = ('\\alpha^{\\textrm{stim}}',)
outputs = ('alpha_stim',)
class tardis.iip_plasma.properties.continuum.ThermalBalanceTest(plasma_parent, T_min=2500, T_max=100000.0)[source]

Bases: ProcessingPlasmaProperty

calculate(photo_ion_cross_sections, t_rad, t_electrons, previous_t_electrons, excitation_energy, g, levels, ionization_data, ff_heating_estimator, bf_heating_coeff, stim_recomb_cooling_coeff, coll_deexc_heating_estimator, ion_number_density, level_number_density, electron_densities, lines, w, time_explosion, previous_b, coll_exc_cooling, coll_deexc_heating)[source]
calculate_from_radiation_field_model(photo_ion_cross_sections, w, t_rad)[source]
heating_function(t_electron, ff_heating_estimator, bf_heating_coeff, stim_recomb_cooling_coeff, coll_deexc_heating_estimator, electron_densities, ion_number_density, level_number_density, excitation_energy, g, levels, ionization_data, photo_ion_cross_sections, lines, shell, t_rad, w, time_explosion, b, previous_t_electrons, coll_exc_cooling, coll_deexc_heating, mode='detailed')[source]
latex_formula = ('',)
latex_name = ('',)
outputs = ('fractional_heating', 'sp_fb_cooling_rates')
class tardis.iip_plasma.properties.continuum.Yg(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(Yg_interp, Yg_index, t_electrons)[source]
latex_name = ('Y/g',)
outputs = ('yg',)
class tardis.iip_plasma.properties.continuum.YgInterpolator(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

calculate(yg_data, T_Yg, lines_multi_index)[source]
latex_name = ('Yg_interp',)
outputs = ('Yg_interp', 'yg_allowed_index', 'yg_forbidden_index')