tardis.plasma.properties.continuum_processes.rates module¶
- class tardis.plasma.properties.continuum_processes.rates.AdiabaticCoolingRate(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
- Attributes:
- cool_rate_adiabaticpandas.DataFrame, dtype float
The adiabatic cooling rate of the electron gas.
- latex_name = ('C_{\\textrm{adiabatic}}',)¶
- outputs = ('cool_rate_adiabatic',)¶
- transition_probabilities_outputs = ('cool_rate_adiabatic',)¶
- class tardis.plasma.properties.continuum_processes.rates.BfHeatingRateCoeffEstimator[source]¶
Bases:
Input
- Attributes:
- bf_heating_coeff_estimatorpandas.DataFrame, dtype float
Unnormalized MC estimator for the rate coefficient for bound-free heating.
- latex_name = ('h_\\textrm{bf}_\\textrm{estim}',)¶
- outputs = ('bf_heating_coeff_estimator',)¶
- class tardis.plasma.properties.continuum_processes.rates.CollDeexcRateCoeff(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- coll_deexc_coeffpandas.DataFrame, dtype float
Rate coefficient for collisional deexcitation.
- latex_name = ('c_{ul}',)¶
- outputs = ('coll_deexc_coeff',)¶
- class tardis.plasma.properties.continuum_processes.rates.CollExcRateCoeff(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- coll_exc_coeffpandas.DataFrame, dtype float
Rate coefficient for collisional excitation.
- latex_name = ('c_{lu}',)¶
- outputs = ('coll_exc_coeff',)¶
- class tardis.plasma.properties.continuum_processes.rates.CollIonRateCoeffSeaton(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
Notes
The rate coefficient for collisional ionization in the Seaton approximation is calculated according to Eq. 9.60 in [1].
References
[1]Hubeny, I. and Mihalas, D., “Theory of Stellar Atmospheres”. 2014.
- Attributes:
- coll_ion_coeffpandas.DataFrame, dtype float
The rate coefficient for collisional ionization in the Seaton approximation. Multiply with the electron density and the level number density to obtain the total rate.
- latex_name = ('c_{\\textrm{i,}\\kappa}',)¶
- outputs = ('coll_ion_coeff',)¶
- class tardis.plasma.properties.continuum_processes.rates.CollRecombRateCoeff(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
Notes
The collisional recombination rate coefficient is calculated from the collisional ionization rate coefficient based on the requirement of detailed balance.
- 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.
- latex_name = ('c_{\\kappa\\textrm{i,}}',)¶
- outputs = ('coll_recomb_coeff',)¶
- class tardis.plasma.properties.continuum_processes.rates.CorrPhotoIonRateCoeff(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- gamma_corrpandas.DataFrame, dtype float
The rate coefficient for radiative ionization corrected for stimulated recombination.
- latex_name = ('\\gamma_\\mathrm{corr}',)¶
- outputs = ('gamma_corr',)¶
- class tardis.plasma.properties.continuum_processes.rates.FreeBoundCoolingRate(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
- Attributes:
- cool_rate_fb_totalpandas.DataFrame, dtype float
The total free-bound cooling rate of the electron gas.
- cool_rate_fbpandas.DataFrame, dtype float
The individual free-bound cooling rates of the electron gas.
- p_fb_deactivation: pandas.DataFrame, dtype float
Probabilities of free-bound cooling in a specific continuum (identified by its continuum_idx).
- latex_name = ('C^{\\textrm{fb, tot}}', 'C^{\\textrm{fb}}')¶
- outputs = ('cool_rate_fb_tot', 'cool_rate_fb', 'p_fb_deactivation')¶
- transition_probabilities_outputs = ('cool_rate_fb_tot',)¶
- class tardis.plasma.properties.continuum_processes.rates.FreeBoundEmissionCDF(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- fb_emission_cdfpandas.DataFrame, dtype float
The cumulative distribution function (CDF) for the frequencies of energy packets emitted in free-bound transitions. The tabulated CDF is used to sample packet frequencies in the Monte Carlo simulation. We use the same CDF for free-bound emission from k- and i-packets (in contrast to ARTIS).
- calculate(photo_ion_cross_sections, t_electrons, photo_ion_block_references, photo_ion_index, nu_i, boltzmann_factor_photo_ion)[source]¶
- latex_name = ('P(\\nu_{bf, emission}) \\leq \\nu)',)¶
- outputs = ('fb_emission_cdf',)¶
- class tardis.plasma.properties.continuum_processes.rates.FreeFreeCoolingRate(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
Notes
This implementation uses a free-free Gaunt factor of one for all species and ionization stages, which is an approximation.
- Attributes:
- cool_rate_ffpandas.DataFrame, dtype float
The free-free cooling rate of the electron gas.
- ff_cooling_factorpandas.Series, dtype float
Pre-factor needed in the calculation of the free-free cooling rate and the free-free opacity.
- latex_name = ('C^{\\textrm{ff}}',)¶
- outputs = ('cool_rate_ff', 'ff_cooling_factor')¶
- transition_probabilities_outputs = ('cool_rate_ff',)¶
- class tardis.plasma.properties.continuum_processes.rates.LevelNumberDensityLTE(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- lte_level_number_densitypandas.DataFrame, dtype float
- latex_name = ('n_{\\textrm{i}}^*',)¶
- outputs = ('lte_level_number_density',)¶
- class tardis.plasma.properties.continuum_processes.rates.PhotoIonBoltzmannFactor(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- boltzmann_factor_photo_ionpandas.DataFrame, dtype float
- outputs = ('boltzmann_factor_photo_ion',)¶
- class tardis.plasma.properties.continuum_processes.rates.RawCollisionTransProbs(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
,IndexSetterMixin
- Attributes:
- p_collpandas.DataFrame, dtype float
The unnormalized transition probabilities for collisional excitation.
- calculate(coll_exc_coeff, coll_deexc_coeff, yg_idx, electron_densities, delta_E_yg, atomic_data, level_number_density)[source]¶
- latex_name = ('p^{\\textrm{coll}}',)¶
- outputs = ('p_coll',)¶
- transition_probabilities_outputs = ('p_coll',)¶
- class tardis.plasma.properties.continuum_processes.rates.RawPhotoIonTransProbs(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
,IndexSetterMixin
- Attributes:
- p_photo_ionpandas.DataFrame, dtype float
The unnormalized transition probabilities for radiative ionization.
- latex_name = ('p^{\\textrm{photo_ion}}',)¶
- outputs = ('p_photo_ion',)¶
- transition_probabilities_outputs = ('p_photo_ion',)¶
- class tardis.plasma.properties.continuum_processes.rates.RawRecombTransProbs(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
,IndexSetterMixin
- Attributes:
- p_recombpandas.DataFrame, dtype float
The unnormalized transition probabilities for spontaneous recombination.
- latex_name = ('p^{\\textrm{recomb}}',)¶
- outputs = ('p_recomb',)¶
- transition_probabilities_outputs = ('p_recomb',)¶
- class tardis.plasma.properties.continuum_processes.rates.RawTwoPhotonTransProbs(plasma_parent)[source]¶
Bases:
TransitionProbabilitiesProperty
,IndexSetterMixin
- Attributes:
- p_two_photonpandas.DataFrame, dtype float
The unnormalized transition probabilities for two photon decay.
- outputs = ('p_two_photon',)¶
- transition_probabilities_outputs = ('p_two_photon',)¶
- class tardis.plasma.properties.continuum_processes.rates.SpontRecombCoolingRateCoeff(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- c_fb_sppandas.DataFrame, dtype float
The rate coefficient for cooling by spontaneous recombination.
- calculate(photo_ion_cross_sections, t_electrons, photo_ion_block_references, photo_ion_index, phi_ik, nu_i, boltzmann_factor_photo_ion)[source]¶
- latex_name = ('c^{\\textrm{sp}}_{\\textrm{fb}}',)¶
- outputs = ('c_fb_sp',)¶
- class tardis.plasma.properties.continuum_processes.rates.StimRecombCoolingRateCoeffEstimator[source]¶
Bases:
Input
- Attributes:
- stim_recomb_cooling_coeff_estimatorpandas.DataFrame, dtype float
Unnormalized MC estimator for the stimulated recombination cooling rate coefficient.
- outputs = ('stim_recomb_cooling_coeff_estimator',)¶
- class tardis.plasma.properties.continuum_processes.rates.TwoPhotonEmissionCDF(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- two_photon_emission_cdfpandas.DataFrame, dtype float
The cumulative distribution function (CDF) for the frequencies of energy packets emitted in two photon transitions. The tabulated CDF is used to sample packet frequencies in the Monte Carlo simulation.
- static calculate_j_nu(y, alpha, beta, gamma)[source]¶
Calculate two photon emissivity.
This function calculates the two photon emissivity in the frequency scale based on Eq. 2 and Eq. 3 in Nussbaumer & Schmutz (1984). The emissivity is not normalized since it is only used to calculate relative emission probabilities.
- Parameters:
- ynumpy.ndarray, dtype float
Emission frequency divided by that of the normal line transition corresponding to the two photon decay.
- alphafloat
Fit coefficient.
- betafloat
Fit coefficient.
- gammafloat
Fit coefficient.
- Returns:
- numpy.ndarray, dtype float
Unnormalized two photon emissivity in the frequency scale.
- outputs = ('two_photon_emission_cdf',)¶
- class tardis.plasma.properties.continuum_processes.rates.TwoPhotonFrequencySampler(plasma_parent)[source]¶
Bases:
ProcessingPlasmaProperty
- Attributes:
- nu_two_photon_samplerfloat
Frequency of the two-photon emission process
- outputs = ('nu_two_photon_sampler',)¶