RT: star controlled injection and minor updates
This merge request introduces star controlled injection for radiative transfer. Star controlled injection here means that active star particles push the radiation onto neighbouring gas particles, and not the opposite case that was implemented until this point.
The star controlled injection is set as the default one. The hydro controlled injection can be enabled with a configuration flag: --enable-rt-hydro-controlled-injection
. This defines a macro RT_HYDRO_CONTROLLED_INJECTION
. To reduce countless #ifdef
checks in the code, I encapsulated the checks in 2 places: the file src/rt_active.h
and in the rt_properties
struct, where it's stored as an integer that is checked on during the rest of the code.
Other changes is this MR:
- error out in main.c when running with particle splitting. This is a problem for later. Although I have added function prototypes.
- moved RT debugging routines to their own file.
- additional tests for the RT debug scheme
- dumping/reading rt_properties for restarts - now we can restart with RT
- moved resetting of RT data to during respective ghost tasks instead of drifts