Time step in RUN_MFIX

In subroutine RUN_MFIX, why “DO WHILE (TIME + 0.1*DT < TSTOP)” ? Why 0.1?

Since time is discretized, we will not hit TSTOP exactly. The comparison TIME + 0.1*DT < TSTOP allows us to overshoot the stop time, but not by more than 90% of a time step … if we are within 10% of a time step to TSTOP then we are “close enough” and terminate.

The choice of 10% is somewhat arbitrary, but if you look through the MFiX code you will see that this idiom is repeated in many places.