@jeff.dietiker - The user is on the Windows platform and is getting a floating-point exception. Due to limitations of the available compiler/debugger tools available on that platform, users do not get a good stack trace when this happens. (I am working on finding a solution to this).
Running this job on Linux, I see that it’s a garden-variety zero-division error, perhaps the most common type of bug we see here on the MFiX forum:
Program terminated with signal SIGFPE, Arithmetic exception.
#0 0x00007ffa78295892 in usr_rates_des (np=1, pm=1, ijk=154, des_rates=...)
at cao-co2-dem-2d_2022-04-12T222013.031912/usr_rates_des.f:111
111 A_C=(Wads_CO2/W0_co2) * (M_CaO/M_CO2)
@wangi - you need to guard these divisions. Change
IF(X_g(IJK,CO2) > c_Limiter) then
A_C=(Wads_CO2/W0_co2) * (M_CaO/M_CO2)
ENDIF
to something like:
IF(X_g(IJK,CO2) > c_Limiter) then
if (W0_co2 .ne. 0 .and. M_CO2 .ne. 0) then
A_C=(Wads_CO2/W0_co2) * (M_CaO/M_CO2)
else
write (*,*) "W0_cO2=", W0_cO2,"M_CO2=", M_CO2
endif
end
When in doubt, print it out …
– Charles