tardis.opacities.macro_atom.macroatom_transitions module

tardis.opacities.macro_atom.macroatom_transitions.line_transition_emission_down(line_f_uls, line_nus, energies_upper, energies_lower, beta_sobolevs, transition_a_i_l_u_array, line_ids)[source]

Calculate emission down transition probabilities for line transitions.

This function computes the probability of emission down transitions for atomic line transitions using oscillator strengths, frequencies, energy differences, and Sobolev optical depths.

Parameters:
line_f_ulsarray_like

Oscillator strengths for the line transitions.

line_nusarray_like

Frequencies of the line transitions in Hz.

energies_upperarray_like

Energy values of the upper levels in the transitions.

energies_lowerarray_like

Energy values of the lower levels in the transitions.

beta_sobolevsarray_like

Sobolev escape probabilities for the transitions.

transition_a_i_l_u_arrayarray_like

Array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).

line_idsarray_like

Unique identifiers for each line transition.

Returns:
p_emission_downpandas.DataFrame

DataFrame containing the calculated emission down probabilities with source information. Contains columns for the probability values and ‘source’ tuples.

emission_down_metadatapandas.DataFrame

DataFrame containing metadata for the transitions including transition line IDs, source and destination level information, transition type, and transition line indices.

Notes

The emission down probability is calculated using the formula: P = 2 * nu^2 * f_ul / c^2 * beta * (E_upper - E_lower)

The function uses the constant P_EMISSION_DOWN to mark the transition type.

tardis.opacities.macro_atom.macroatom_transitions.line_transition_internal_down(line_f_uls, line_nus, energies_lower, beta_sobolevs, transition_a_i_l_u_array, line_ids)[source]

Calculate internal downward transition probabilities for line transitions.

This function computes the probability of internal downward transitions in macro atoms for line transitions, based on oscillator strengths, frequencies, and other atomic parameters.

Parameters:
line_f_ulsarray_like

Oscillator strengths for line transitions.

line_nusarray_like

Frequencies of line transitions.

energies_lowerarray_like

Energies of the lower levels involved in transitions.

beta_sobolevsarray_like

Sobolev beta factors for the transitions.

transition_a_i_l_u_arrayarray_like

Array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).

line_idsarray_like

Identifiers for each line transition.

Returns:
p_internal_downpandas.DataFrame

DataFrame containing the calculated internal downward transition probabilities with source information.

internal_down_metadatapandas.DataFrame

DataFrame containing metadata for the transitions including transition line IDs, source and destination level information, transition type, and transition line indices.

Notes

The internal downward transition probability is calculated using the formula: p = 2 * nu^2 * f_ul / c^2 * beta * E_lower

The function uses the constant P_INTERNAL_DOWN to mark the transition type.

tardis.opacities.macro_atom.macroatom_transitions.line_transition_internal_up(line_f_lus, line_nus, energies_lower, mean_intensities_blue_wing, beta_sobolevs, stimulated_emission_factors, transition_a_i_l_u_array, line_ids)[source]

Calculate internal upward transition probabilities for line transitions in macro atoms.

This function computes the probability of internal upward transitions between energy levels in macro atoms due to line transitions. It calculates the transition probabilities and creates metadata for tracking the transitions.

Parameters:
line_f_lusarray_like

Oscillator strengths for line transitions from lower to upper levels.

line_nusarray_like

Frequencies of the line transitions in Hz.

energies_lowerarray_like

Energy values of the lower levels in the transitions.

mean_intensities_blue_wingarray_like

Mean radiation field intensities at the blue wing of the lines.

beta_sobolevsarray_like

Sobolev escape probabilities for the line transitions.

stimulated_emission_factorsarray_like

Factors accounting for stimulated emission in the transitions.

transition_a_i_l_u_arrayarray_like

2D array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).

line_idsarray_like

Unique identifiers for each line transition.

Returns:
p_internal_uppandas.DataFrame

DataFrame containing the calculated internal upward transition probabilities with source information, indexed by transition.

internal_up_metadatapandas.DataFrame

DataFrame containing metadata for the transitions including transition line IDs, source and destination level information, transition type, and line indices.

Notes

The transition probability is calculated using the formula: P = (f_lu / (h * nu)) * stimulated_emission_factor * mean_intensity * beta * E_lower

The function uses the constant P_INTERNAL_UP to mark the transition type.