tardis.plasma.equilibrium.rate_matrix module¶
- class tardis.plasma.equilibrium.rate_matrix.IonRateMatrix(radiative_ionization_rate_solver, collisional_ionization_rate_solver)[source]¶
Bases:
object
Constructs the ionization rate matrix from radiative and collisional ionization rate solvers.
- Parameters:
- radiative_ionization_rate_solverAnalyticPhotoionizationRateSolver | EstimatedPhotoionizationRateSolver
Solver for radiative ionization and recombination rates.
- collisional_ionization_rate_solverCollisionalIonizationRateSolver
Solver for collisional ionization and recombination rates.
- solve(radiation_field, thermal_electron_energy_distribution, lte_level_population, level_population, lte_ion_population, ion_population, partition_function, boltzmann_factor, charge_conservation=False)[source]¶
Compute the ionization rate matrix.
- Parameters:
- radiation_fieldRadiationField
A radiation field that can compute its mean intensity.
- thermal_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.
- charge_conservationbool, optional
Whether to include a charge conservation row in the rate matrix.
- Returns:
- pd.DataFrame
A DataFrame of rate matrices indexed by atomic number and ion number, with each column being a cell. Each entry is a numpy array.
- class tardis.plasma.equilibrium.rate_matrix.RateMatrix(rate_solvers: list, levels: DataFrame)[source]¶
Bases:
object
Constructs the rate matrix from an arbitrary number of rate solvers.
- Parameters:
- rate_solverslist
List of rate solver objects.
- levelspd.DataFrame
DataFrame of energy levels.
- solve(radiation_field, thermal_electron_energy_distribution)[source]¶
Construct the compiled rate matrix dataframe.
- Parameters:
- radiation_fieldRadiationField
Radiation field containing radiative temperature.
- thermal_electron_energy_distributionThermalElectronEnergyDistribution
Distribution of electrons in the plasma, containing electron energies, temperatures and number densities.
- Returns:
- pd.DataFrame
A DataFrame of rate matrices indexed by atomic number and ion number, with each column being a cell.