astronomix._physics_modules._cosmic_rays.cr_injection

astronomix._physics_modules._cosmic_rays.cr_injection#

Module Contents#

Functions#

inject_crs_at_strongest_shock

Cosmic ray injection at shock fronts. Currently only at the strongest shock in the domain.

API#

astronomix._physics_modules._cosmic_rays.cr_injection.inject_crs_at_strongest_shock(primitive_state: astronomix.option_classes.simulation_config.STATE_TYPE, gamma: Union[float, jaxtyping.Float[jaxtyping.Array]], helper_data: astronomix.data_classes.simulation_helper_data.HelperData, cosmic_ray_params: astronomix._physics_modules._cosmic_rays.cosmic_ray_options.CosmicRayParams, config: astronomix.option_classes.simulation_config.SimulationConfig, registered_variables: astronomix.variable_registry.registered_variables.RegisteredVariables, dt: Union[float, jaxtyping.Float[jaxtyping.Array]]) astronomix.option_classes.simulation_config.STATE_TYPE[source]#

Cosmic ray injection at shock fronts. Currently only at the strongest shock in the domain.

The implementation generally follows

Pfrommer, Christoph, et al. “Simulating cosmic ray physics on a moving mesh.” Monthly Notices of the Royal Astronomical Society 465.4 (2017): 4500-4529. https://arxiv.org/abs/1604.07399

and

Dubois, Yohan, et al. “Shock-accelerated cosmic rays and streaming instability in the adaptive mesh refinement code Ramses.” Astronomy & Astrophysics 631 (2019): A121. https://arxiv.org/abs/1907.04300

Args:

primitive_state: The primitive state array. gamma: The adiabatic index. helper_data: The helper data. cosmic_ray_params: The cosmic ray parameters. config: The simulation configuration. registered_variables: The registered variables. dt: The time step.

Returns:

The primitive state array with injected cosmic rays.