tardis.plasma.equilibrium.rates.photoionization_strengths module¶
- class tardis.plasma.equilibrium.rates.photoionization_strengths.AnalyticCorrectedPhotoionizationCoeffSolver(photoionization_cross_sections)[source]¶
Bases:
SpontaneousRecombinationCoeffSolver
- calculate_corrected_photoionization_rate_coeff(mean_intensity_photoionization_df, photoionization_boltzmann_factor, lte_level_population, level_population, lte_ion_population, ion_population)[source]¶
Calculate the stimulated emission corrected photoionization rate coefficient.
- Parameters:
- mean_intensity_photoionization_dfpd.DataFrame
A DataFrame of the mean intensity of the radiation field at each frequency
- Returns:
- pd.DataFrame
The calculated photoionization rate coefficient.
Notes
Equation 18 in Lucy 2003.
- calculate_mean_intensity_photoionization_df(radiation_field)[source]¶
Calculates the mean intensity of the radiation field at each photoionization frequency.
- Parameters:
- radiation_fieldRadiationField
The radiation field.
- Returns:
- pd.DataFrame
DataFrame of mean intensities indexed by photoionization levels and columns of cells.
- solve(dilute_blackbody_radiationfield_state, electron_temperature, lte_level_population, level_population, lte_ion_population, ion_population)[source]¶
Prepares the ionization and recombination coefficients by grouping them for ion numbers.
- Parameters:
- dilute_blackbody_radiationfield_stateDiluteBlackBodyRadiationFieldState
The dilute black body radiation field state.
- electron_temperatureu.Quantity
Electron temperature in each shell.
- Returns:
- photoionization_rate_coeff
Photoionization rate coefficient grouped by atomic number and ion number.
- recombination_rate_coeff
Radiative recombination rate coefficient grouped by atomic number and ion number.
- class tardis.plasma.equilibrium.rates.photoionization_strengths.AnalyticPhotoionizationCoeffSolver(photoionization_cross_sections)[source]¶
Bases:
SpontaneousRecombinationCoeffSolver
- calculate_mean_intensity_photoionization_df(dilute_blackbody_radiationfield_state)[source]¶
Calculates the mean intensity of the radiation field at each photoionization frequency.
- Parameters:
- dilute_blackbody_radiationfield_stateDilutePlanckianRadiationField
The radiation field.
- Returns:
- pd.DataFrame
DataFrame of mean intensities indexed by photoionization levels and columns of cells.
- calculate_photoionization_rate_coeff(mean_intensity_photoionization_df)[source]¶
Calculate the photoionization rate coefficient.
- Parameters:
- dilute_blackbody_radiationfield_stateDiluteBlackBodyRadiationFieldState
A dilute black body radiation field state.
- Returns:
- pd.DataFrame
The calculated photoionization rate coefficient.
Notes
Equation 16 in Lucy 2003.
- calculate_stimulated_recombination_rate_coeff(mean_intensity_photoionization_df, photoionization_boltzmann_factor)[source]¶
Calculate the photoionization rate coefficient.
- Parameters:
- mean_intensity_photoionization_dfpd.DataFrame
Mean intensity at each photoionization frequency.
- photoionization_boltzmann_factornp.ndarray
Boltzmann factor for each photoionization frequency.
- Returns:
- pd.DataFrame
The stimulated recombination rate coefficient.
Notes
Equation 15 in Lucy 2003.
- solve(dilute_blackbody_radiationfield_state, electron_temperature)[source]¶
Prepares the ionization and recombination coefficients by grouping them for ion numbers.
- Parameters:
- dilute_blackbody_radiationfield_stateDiluteBlackBodyRadiationFieldState
The dilute black body radiation field state.
- electron_temperatureu.Quantity
Electron temperature in each shell.
- Returns:
- photoionization_rate_coeff
Photoionization rate coefficient grouped by atomic number and ion number.
- recombination_rate_coeff
Radiative recombination rate coefficient grouped by atomic number and ion number.
- class tardis.plasma.equilibrium.rates.photoionization_strengths.EstimatedPhotoionizationCoeffSolver(level2continuum_edge_idx)[source]¶
Bases:
object
- solve(radfield_mc_estimators, time_simulation, volume)[source]¶
Solve for the continuum properties.
- Parameters:
- radfield_mc_estimatorsRadiationFieldMCEstimators
The Monte Carlo estimators for the radiation field.
- time_simulationfloat
The simulation time.
- volumefloat
The volume of the cells.
- Returns:
- ContinuumProperties
The calculated continuum properties.
Notes
Lucy 2003 Eq 44, 45.
- class tardis.plasma.equilibrium.rates.photoionization_strengths.SpontaneousRecombinationCoeffSolver(photoionization_cross_sections)[source]¶
Bases:
object
- calculate_photoionization_boltzmann_factor(electron_temperature)[source]¶
Calculate the Boltzmann factor at each photoionization frequency
- Parameters:
- electron_temperatureQuantity
Electron temperature in each shell.
- Returns:
- numpy.ndarray
The Boltzmann factor per shell per photoionization frequency.
- property common_prefactor¶
Used to multiply with both spontaneous recombination and photoionization coefficients. Lucy 2003 Eq 13, 15, 16.
- Returns:
- pd.DataFrame
A dataframe of the prefactor.
- solve(electron_temperature)[source]¶
Calculate the spontaneous recombination rate coefficient.
- Parameters:
- electron_temperatureu.Quantity
Electron temperature in each cell.
- Returns:
- pd.DataFrame
The calculated spontaneous recombination rate coefficient.
Notes
Equation 13 in Lucy 2003, missing the factor from Eq 14.