tardis.plasma.properties.partition_function module

class tardis.plasma.properties.partition_function.LevelBoltzmannFactorDiluteLTE(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes
general_level_boltzmann_factorPandas DataFrame, dtype float

Level population proportionality values. Indexed by atomic number, ion number, level number. Columns corresponding to zones. Dilute radiation field means non-metastable level values are multiplied by an additional factor W. Does not consider NLTE.

calculate(levels, g, excitation_energy, beta_rad, w, metastability)[source]
latex_formula = ('Wg_{i,j,k}e^{\\dfrac{-\\epsilon_{i,j,k}}{k_{\\textrm{B}}T_{\\textrm{rad}}}}',)
latex_name = ('bf_{i,j,k}',)
outputs = ('general_level_boltzmann_factor',)
class tardis.plasma.properties.partition_function.LevelBoltzmannFactorLTE(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes
general_level_boltzmann_factorPandas DataFrame, dtype float

Level population proportionality values. Evaluated at the radiation temperature. Indexed by atomic number, ion number, level number. Columns corresponding to zones. Does not consider NLTE.

static calculate(excitation_energy, g, beta_rad, levels)[source]
latex_formula = ('g_{i,j,k}e^{\\dfrac{-\\epsilon_{i,j,k}}{k_{\\textrm{B}}T_{\\textrm{rad}}}}',)
latex_name = ('bf_{i,j,k}',)
outputs = ('general_level_boltzmann_factor',)
class tardis.plasma.properties.partition_function.LevelBoltzmannFactorNLTE(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes
level_boltzmann_factorPandas DataFrame, dtype float

Returns general_level_boltzmann_factor but updated for those species treated in NLTE.

Selects appropriate ‘calculate’ function based on NLTE config options selected.

calculate()[source]
static from_config(nlte_conf)[source]
outputs = ('level_boltzmann_factor',)
class tardis.plasma.properties.partition_function.LevelBoltzmannFactorNoNLTE(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes
level_boltzmann_factorPandas DataFrame, dtype float

Returns general_level_boltzmann_factor as this property is included if NLTE is not used.

static calculate(general_level_boltzmann_factor)[source]
outputs = ('level_boltzmann_factor',)
class tardis.plasma.properties.partition_function.PartitionFunction(plasma_parent)[source]

Bases: ProcessingPlasmaProperty

Attributes
partition_functionPandas DataFrame, dtype float

Indexed by atomic number, ion number. Columns are zones.

calculate(level_boltzmann_factor)[source]
latex_formula = ('\\sum_{k}bf_{i,j,k}',)
latex_name = ('Z_{i,j}',)
outputs = ('partition_function',)
class tardis.plasma.properties.partition_function.ThermalLTEPartitionFunction(plasma_parent)[source]

Bases: PartitionFunction

Attributes
thermal_lte_partition_functionPandas DataFrame, dtype float

Indexed by atomic number, ion number. Columns are zones.

calculate(thermal_lte_level_boltzmann_factor)[source]
latex_name = ('Z_{i,j}(T_\\mathrm{e}',)
outputs = ('thermal_lte_partition_function',)
class tardis.plasma.properties.partition_function.ThermalLevelBoltzmannFactorLTE(plasma_parent)[source]

Bases: LevelBoltzmannFactorLTE

Attributes
thermal_lte_level_boltzmann_factorPandas DataFrame, dtype float

Level population proportionality values for LTE. Evaluated at the temperature of the electron gas (thermal). Indexed by atomic number, ion number, level number. Columns corresponding to zones.

static calculate(excitation_energy, g, beta_electron, levels)[source]
latex_formula = ('g_{i,j,k}e^{\\dfrac{-\\epsilon_{i,j,k}}{k_{\\textrm{B}}T_{\\textrm{electron}}}}',)
latex_name = ('bf_{i,j,k}^{\\textrm{LTE}}(T_e)',)
outputs = ('thermal_lte_level_boltzmann_factor',)