tardis.montecarlo.montecarlo_numba.interaction module¶
- tardis.montecarlo.montecarlo_numba.interaction.line_emission(r_packet, emission_line_id, time_explosion, numba_plasma)[source]¶
Sets the frequency of the RPacket properly given the emission channel
- Parameters
- r_packettardis.montecarlo.montecarlo_numba.r_packet.RPacket
- emission_line_idint
- time_explosionfloat
- numba_plasmatardis.montecarlo.montecarlo_numba.numba_interface.NumbaPlasma
- tardis.montecarlo.montecarlo_numba.interaction.line_scatter(r_packet, time_explosion, line_interaction_type, numba_plasma)[source]¶
Line scatter function that handles the scattering itself, including new angle drawn, and calculating nu out using macro atom
- Parameters
- r_packettardis.montecarlo.montecarlo_numba.r_packet.RPacket
- time_explosionfloat
- line_interaction_typeenum
- numba_plasmatardis.montecarlo.montecarlo_numba.numba_interface.NumbaPlasma
- tardis.montecarlo.montecarlo_numba.interaction.thomson_scatter(r_packet, time_explosion)[source]¶
Thomson scattering — no longer line scattering
get the doppler factor at that position with the old angle
convert the current energy and nu into the comoving frame with the old mu
Scatter and draw new mu - update mu
Transform the comoving energy and nu back using the new mu
- Parameters
- r_packettardis.montecarlo.montecarlo_numba.r_packet.RPacket
- time_explosionfloat
time since explosion in seconds