tardis.opacities.macro_atom.macroatom_line_transitions module¶
- tardis.opacities.macro_atom.macroatom_line_transitions.line_transition_emission_down(line_f_uls: ndarray, line_nus: ndarray, energies_upper: ndarray, energies_lower: ndarray, beta_sobolevs: DataFrame, transition_a_i_l_u_array: ndarray, line_ids: ndarray) tuple[DataFrame, DataFrame][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_ulsnp.ndarray
Oscillator strengths for the line transitions.
- line_nusnp.ndarray
Frequencies of the line transitions in Hz.
- energies_uppernp.ndarray
Energy values of the upper levels in the transitions.
- energies_lowernp.ndarray
Energy values of the lower levels in the transitions.
- beta_sobolevspd.DataFrame
Sobolev escape probabilities for the transitions.
- transition_a_i_l_u_arraynp.ndarray
Array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).
- line_idsnp.ndarray
Unique identifiers for each line transition.
- Returns:
- p_emission_downpd.DataFrame
DataFrame containing the calculated emission down probabilities with source information. Contains columns for the probability values and ‘source’ tuples.
- emission_down_metadatapd.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 MacroAtomTransitionType to mark the transition type.
- tardis.opacities.macro_atom.macroatom_line_transitions.line_transition_internal_down(line_f_uls: ndarray, line_nus: ndarray, energies_lower: ndarray, beta_sobolevs: DataFrame, transition_a_i_l_u_array: ndarray, line_ids: ndarray) tuple[DataFrame, DataFrame][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_ulsnp.ndarray
Oscillator strengths for line transitions.
- line_nusnp.ndarray
Frequencies of line transitions.
- energies_lowernp.ndarray
Energies of the lower levels involved in transitions.
- beta_sobolevspd.DataFrame
Sobolev beta factors for the transitions.
- transition_a_i_l_u_arraynp.ndarray
Array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).
- line_idsnp.ndarray
Identifiers for each line transition.
- Returns:
- p_internal_downpd.DataFrame
DataFrame containing the calculated internal downward transition probabilities with source information.
- internal_down_metadatapd.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 MacroAtomTransitionType to mark the transition type.
- tardis.opacities.macro_atom.macroatom_line_transitions.line_transition_internal_up(line_f_lus: ndarray, line_nus: ndarray, energies_lower: ndarray, mean_intensities_blue_wing: DataFrame, beta_sobolevs: DataFrame, stimulated_emission_factors: ndarray, transition_a_i_l_u_array: ndarray, line_ids: ndarray) tuple[DataFrame, DataFrame][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_lusnp.ndarray
Oscillator strengths for line transitions from lower to upper levels.
- line_nusnp.ndarray
Frequencies of the line transitions in Hz.
- energies_lowernp.ndarray
Energy values of the lower levels in the transitions.
- mean_intensities_blue_wingpd.DataFrame
Mean radiation field intensities at the blue wing of the lines.
- beta_sobolevspd.DataFrame
Sobolev escape probabilities for the line transitions.
- stimulated_emission_factorspd.DataFrame
Factors accounting for stimulated emission in the transitions.
- transition_a_i_l_u_arraynp.ndarray
2D array containing atomic number, ion number, lower level, and upper level indices for each transition. Shape should be (n_transitions, 4).
- line_idsnp.ndarray
Unique identifiers for each line transition.
- Returns:
- p_internal_uppd.DataFrame
DataFrame containing the calculated internal upward transition probabilities with source information, indexed by transition.
- internal_up_metadatapd.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 MacroAtomTransitionType to mark the transition type.
- tardis.opacities.macro_atom.macroatom_line_transitions.probability_emission_down(beta_sobolevs: DataFrame, line_nus: ndarray, line_f_uls: ndarray, energies_upper: ndarray, energies_lower: ndarray) DataFrame[source]¶
Calculate emission down transition probabilities.
This function computes the probability of emission down transitions for atomic line transitions. The calculation considers oscillator strengths, line frequencies, and the energy difference between upper and lower levels.
- Parameters:
- beta_sobolevspd.DataFrame
Sobolev escape probabilities for the line transitions.
- line_nusnp.ndarray
Frequencies of the line transitions in Hz.
- line_f_ulsnp.ndarray
Oscillator strengths for line transitions from upper to lower levels.
- energies_uppernp.ndarray
Energy values of the upper levels in the transitions.
- energies_lowernp.ndarray
Energy values of the lower levels in the transitions.
- Returns:
- pd.DataFrame
DataFrame containing the calculated emission down transition probabilities.
- tardis.opacities.macro_atom.macroatom_line_transitions.probability_internal_down(beta_sobolevs: DataFrame, line_nus: ndarray, line_f_uls: ndarray, energies_lower: ndarray) DataFrame[source]¶
Calculate internal downward transition probabilities.
This function computes the probability of internal downward transitions between energy levels in macro atoms. The calculation is based on oscillator strengths, line frequencies, and lower level energies.
- Parameters:
- beta_sobolevspd.DataFrame
Sobolev escape probabilities for the line transitions.
- line_nusnp.ndarray
Frequencies of the line transitions in Hz.
- line_f_ulsnp.ndarray
Oscillator strengths for line transitions from upper to lower levels.
- energies_lowernp.ndarray
Energy values of the lower levels in the transitions.
- Returns:
- pd.DataFrame
DataFrame containing the calculated internal downward transition probabilities.
- tardis.opacities.macro_atom.macroatom_line_transitions.probability_internal_up(beta_sobolevs: DataFrame, line_nus: ndarray, line_f_lus: ndarray, stimulated_emission_factors: ndarray, mean_intensities_blue_wing: DataFrame, energies_lower: ndarray) DataFrame[source]¶
Calculate internal upward transition probabilities.
This function computes the probability of internal upward transitions between energy levels in macro atoms. The calculation involves oscillator strengths, stimulated emission factors, mean radiation field intensities, and energy values.
- Parameters:
- beta_sobolevspd.DataFrame
Sobolev escape probabilities for the line transitions.
- line_nusnp.ndarray
Frequencies of the line transitions in Hz.
- line_f_lusnp.ndarray
Oscillator strengths for line transitions from lower to upper levels.
- stimulated_emission_factorsnp.ndarray
Factors accounting for stimulated emission in the transitions.
- mean_intensities_blue_wingpd.DataFrame
Mean radiation field intensities at the blue wing of the lines.
- energies_lowernp.ndarray
Energy values of the lower levels in the transitions.
- Returns:
- pd.DataFrame
DataFrame containing the calculated internal upward transition probabilities.