Skip to content

RT GEAR thermochemistry first attempt

Mladen Ivkovic requested to merge rt-gear-thermochemistry-first-attempt into master

This MR introduces the first working version for GEAR-RT including thermochemistry. This includes:

  • doing cooling, heating, and ionizing with grackle during the thermochemistry tasks, and modifying the radiation fields appropriately
  • added option to choose stellar spectra, which are used to estimate average interaction cross sections over a photon frequency interval. Currently have constant and blackbody spectrum ready.
  • added flux exchange of ionizing species during hydro
  • added call to rt_kick_extra, where extra RT related operations during a kick are performed, analoguely to hydro_kick_extra
  • added option to set upper threshold for star time steps

ToDo before WIP is removed:

  • wait for !1460 (merged) to be merged and rebase
  • clean up and format code (@everybody else, pls don't look at the current state, it's embarrassing)
  • check whether documentation is up to date
  • add new function prototypes to all other schemes
  • check that you don't break anything else
  • discuss addition of rt_additions.h
  • update all param files of all examples to include new compulsory parameters so that things at least don't crash at startup

Future ToDos: (not part of this MR)

  • update examples (in particular Strömgren Spheres)
  • add example to test heating/ionization of gas and energy conservation in a case without radiation sources
  • add futher Iliev+09 tests
  • add option for user to provide cross sections in parameter file, and script/program to compute them outside swift
  • cleaner, leaner way of dealing with ionizing species
  • move from explicit cgs in thermochemistry to internal units, test for
  • enforce 10% rule recursively during thermochemistry (currently no such rule)
  • add theory
  • take care of particle drifts
Edited by Mladen Ivkovic

Merge request reports