tardis.plasma.equilibrium.rates.photoionization_rates module
- class tardis.plasma.equilibrium.rates.photoionization_rates.AnalyticPhotoionizationRateSolver(photoionization_cross_sections)[source]
Bases:
objectSolve analytic photoionization and spontaneous recombination rates.
- solve(radiation_field: DilutePlanckianRadiationField | PlanckianRadiationField, electron_energy_distribution: ThermalElectronEnergyDistribution, lte_level_population: DataFrame, level_population: DataFrame, lte_ion_population: DataFrame, ion_population: DataFrame, partition_function: DataFrame, level_boltzmann_factor: DataFrame, level_to_continuum_saha_factor: DataFrame | None = None) tuple[DataFrame, DataFrame][source]
Solve analytic photoionization and recombination rates.
This case is used when the radiation field is not estimated.
- Parameters:
- radiation_fieldRadiationField
A radiation field that can compute its mean intensity.
- electron_energy_distributionThermalElectronEnergyDistribution
Electron properties.
- lte_level_populationpd.DataFrame
LTE level number density. Columns are cells.
- level_populationpd.DataFrame
Estimated level number density. Columns are cells.
- lte_ion_populationpd.DataFrame
LTE ion number density. Columns are cells.
- ion_populationpd.DataFrame
Estimated ion number density. Columns are cells.
- level_to_continuum_saha_factorpd.DataFrame, optional
Density-independent Lucy level-to-continuum Saha factor.
- Returns:
- pd.DataFrame
Photoionization rate. Columns are cells.
- pd.DataFrame
Spontaneous recombination rate. Columns are cells.
- class tardis.plasma.equilibrium.rates.photoionization_rates.EstimatedPhotoionizationRateSolver(photoionization_cross_sections, level2continuum_edge_idx, estimators_continuum=None, time_simulation=None, volume=None)[source]
Bases:
objectSolve fixed-estimator photoionization and recombination rates.
- solve(electron_energy_distribution: ThermalElectronEnergyDistribution, level_population: DataFrame, ion_population: DataFrame, level_to_continuum_saha_factor: DataFrame) tuple[DataFrame, DataFrame][source]
Solve rates using fixed Monte Carlo estimators.
The estimator supplies the photoionization and stimulated- recombination factors. The returned rates are the coefficients used by the ionization rate matrix, following Lucy (2003), Eqs. 44–45.
- Parameters:
- electron_energy_distributionThermalElectronEnergyDistribution
Electron properties.
- level_populationpd.DataFrame
Estimated bound-level number densities. Columns are cells.
- ion_populationpd.DataFrame
Estimated ion number densities. Columns are cells.
- level_to_continuum_saha_factorpd.DataFrame
Density-independent Lucy level-to-continuum Saha factors.
- Returns:
- tuple[pd.DataFrame, pd.DataFrame]
Photoionization and recombination rates used by the ionization rate matrix.