tardis.plasma.equilibrium.ion_populations module¶
- class tardis.plasma.equilibrium.ion_populations.IonPopulationSolver(rate_matrix_solver, max_solver_iterations=100)[source]¶
Bases:
object
Solve the normalized ion population values from the rate matrices.
- Parameters:
- rate_matrix_solverIonRateMatrix
- solve(radiation_field, thermal_electron_energy_distribution, elemental_number_density, lte_level_population, estimated_level_population, lte_ion_population, estimated_ion_population, partition_function, boltzmann_factor, charge_conservation=False, tolerance=1e-14)[source]¶
Solves the normalized ion population values from the rate matrices.
- Parameters:
- radiation_fieldRadiationField
A radiation field that can compute its mean intensity.
- thermal_electron_energy_distributionThermalElectronEnergyDistribution
Electron properties.
- elemental_number_densitypd.DataFrame
Elemental number density. Index is atomic number, columns are cells.
- lte_level_populationpd.DataFrame
LTE level number density. Columns are cells.
- estimated_level_populationpd.DataFrame
Estimated level number density. Columns are cells.
- lte_ion_populationpd.DataFrame
LTE ion number density. Columns are cells.
- estimated_ion_populationpd.DataFrame
Estimated ion number density. Columns are cells.
- charge_conservationbool, optional
Whether to include a charge conservation row in the rate matrix.
- tolerancefloat, optional
Tolerance for convergence of the ion population solver.
- Returns:
- pd.DataFrame
Normalized ion population values indexed by atomic number, ion number and ion number. Columns are cells.
- pd.DataFrame
Normalized electron fraction values. Columns are cells.