tardis.transport.montecarlo.montecarlo_main_loop module¶
- tardis.transport.montecarlo.montecarlo_main_loop.montecarlo_main_loop(packet_collection: PacketCollection, geometry_state_numba: NumbaRadial1DGeometry, time_explosion: float, opacity_state_numba: OpacityStateNumba, montecarlo_configuration: MonteCarloConfiguration, estimators: RadiationFieldMCEstimators, spectrum_frequency_grid: ndarray, rpacket_trackers: List, number_of_vpackets: int, show_progress_bars: bool)[source]¶
 Main loop of the Monte Carlo radiative transfer routine.
This function generates the packet objects from the packet collection and propagates them through the ejecta, performing interactions and collecting statistics for the radiative transfer simulation.
- Parameters:
 - packet_collectionPacketCollection
 Collection containing initial packet properties (positions, directions, frequencies, energies, and seeds)
- geometry_stateNumbaRadial1DGeometry
 Numba-compiled simulation geometry containing shell boundaries and velocity information
- time_explosionfloat
 Time since explosion in seconds, used for relativistic calculations
- opacity_stateOpacityStateNumba
 Numba-compiled opacity state containing line opacities, continuum opacities, and atomic data required for interactions
- montecarlo_configurationMonteCarloConfiguration
 Configuration object containing Monte Carlo simulation parameters and flags for various physics modules
- estimatorsRadfieldMCEstimators
 Estimator object for collecting radiation field statistics during packet propagation
- spectrum_frequency_gridnumpy.ndarray
 Frequency grid array for virtual packet spectrum calculation
- rpacket_trackersnumba.typed.List
 List of packet trackers for detailed packet interaction logging
- number_of_vpacketsint
 Number of virtual packets to spawn per real packet interaction
- show_progress_barsbool
 Flag to enable/disable progress bar updates during simulation
- Returns:
 - tuple
 A tuple containing: - v_packets_energy_hist : numpy.ndarray
Energy histogram of virtual packets binned by frequency
- last_interaction_trackerLastInteractionTracker
 Object tracking the last interaction properties for each packet
- vpacket_trackerVPacketCollection
 Consolidated virtual packet collection containing all virtual packet information from the simulation