tardis.transport.montecarlo.numba_interface module

class tardis.transport.montecarlo.numba_interface.LineInteractionType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: IntEnum

DOWNBRANCH = 1
MACROATOM = 2
SCATTER = 0
class tardis.transport.montecarlo.numba_interface.OpacityState(*args, **kwargs)[source]

Bases: OpacityState

Plasma for the Numba code

Parameters:
electron_densitynumpy.ndarray
t_electronsnumpy.ndarray
line_list_nunumpy.ndarray
tau_sobolevnumpy.ndarray
transition_probabilitiesnumpy.ndarray
line2macro_level_uppernumpy.ndarray
macro_block_referencesnumpy.ndarray
transition_typenumpy.ndarray
destination_level_idnumpy.ndarray
transition_line_idnumpy.ndarray
bf_threshold_list_nunumpy.ndarray
class_type = jitclass.OpacityState#7fedd7dffaa0<electron_density:array(float64, 1d, A),t_electrons:array(float64, 1d, A),line_list_nu:array(float64, 1d, A),tau_sobolev:array(float64, 2d, A),transition_probabilities:array(float64, 2d, A),line2macro_level_upper:array(int64, 1d, A),macro_block_references:array(int64, 1d, A),transition_type:array(int64, 1d, A),destination_level_id:array(int64, 1d, A),transition_line_id:array(int64, 1d, A),bf_threshold_list_nu:array(float64, 1d, A),p_fb_deactivation:array(float64, 2d, A),photo_ion_nu_threshold_mins:array(float64, 1d, A),photo_ion_nu_threshold_maxs:array(float64, 1d, A),photo_ion_block_references:array(int64, 1d, A),chi_bf:array(float64, 2d, A),x_sect:array(float64, 1d, A),phot_nus:array(float64, 1d, A),ff_opacity_factor:array(float64, 1d, A),emissivities:array(float64, 2d, A),photo_ion_activation_idx:array(int64, 1d, A),k_packet_idx:int64>
tardis.transport.montecarlo.numba_interface.opacity_state_initialize(plasma, line_interaction_type, disable_line_scattering)[source]

Initialize the OpacityState object and copy over the data over from TARDIS Plasma

Parameters:
plasmatardis.plasma.BasePlasma
line_interaction_typeenum