Closed trquinn closed 3 years ago
I'm not sure the above explanation is correct: the code is being called if massHot > 0.0 but uHot == 0.0. We will run into problems if ExternalHeating is nonpositive in this case. @brooksalyson I may need a test case.
Commit 8a99e98178816ea3899d2ff0e1a6de60937c4f3b fixes the problem. It seems that uHotDot = 0 is OK. However there are particles with tiny (1e-5 fractional) mass in the hot phase. Not sure how this happens, but seems to be harmless.
Pull request #92 introduced a problem in restart from outputs. In this case cpHotInit() is not set, but there is no recent feedback, ExternalHeating can be nonpositive and the assert around Sph.cpp line 926 will fail.