#546

Here a brief guide. If you have further questions, let me know.

In cooling.c, function DoCooling calls CoolingRateFromU, which returns the
cooling rate given a specific thermal energy, density and an electron number density.

In CoolingRateFromU (line 449, cooling.c), a conversion from specific thermal energy
to temperature is called, and then the function CoolingRate, which takes log(temperature), gas density and electron number densitiy as an input (line 508 in cooling.c).

If you want to change the cooling function, you want to replace this CoolingRate
function call with a call to your own cooling rate.

Note that this is called for every cell separately.

If, for some reason, you want to get an array of densities, temperatues and electron number densities (and other possible properties), you need to trace back the cooling call to the functions cooling_only (cooling.c, line 803) and cooling_and_starformation (sfr_eEOS.c) and gather your data there, where you have the respective loop over all active gas cells. However, my impression is that you don’t need to do this in your case.