Hi Ciara,
thanks for using KROME.
The problem is related to the user_tff variable that is probably not correctly passed in C.
We did it originally to speed up the code (the free-fall time can be computed once at the beginning of every time-step in the test main code).
I wrote a different version of the compressional heating routine that computes the free-fall time inside KROME.
It is slightly slower but should be a viable workaround to your problem.
Let me know if it works.
cheers,
-tg
Just replace the original function with this:
function heat_compress(n, Tgas)
use krome_user_commons
use krome_commons
use krome_constants
use krome_subs
use krome_getphys
real*8::heat_compress,n(:), dd, Tgas, tff, m(nspec)
dd = sum(n(1:nmols)) !total number density
m = get_mass()
rho = sum(n(1:nmols) *m(1:nmols))
tff = sqrt(3*pi / 32. / gravity / rho)
!COMPRESSIONAL HEATING
heat_compress = dd * boltzmann_erg * Tgas / tff !erg/s/cm3
end function heat_compress