Hello Nitesh,
Your issue comes from your Fortran file.
In your modified runoff_scs_nf subroutine, you use the work array T7 with a cumulative effect. It is not calculated from scratch everytime this subroutine is called.
The problem is that the work array T7 is used, and filled in particular when friction velocity (US) is asked in the keyword VARIABLES FOR GRAPHIC PRINTOUTS: so this array contains something different from what you expect with the cumulative effect:
IF(RAINDEF.EQ.4) THEN
CALL OV('X=X+Y ', X=T7%R, Y=T11%R, DIM1=NPOIN)
ELSE
CALL OV('X=X+C ', X=T7%R, C=RFM, DIM1=NPOIN)
ENDIF
This Fortran file should be modified if you want to be more generic.
Anyway, for your specific use, I can suggest you a temporary fix, if you do not use Thompson boundary conditions (that is your case): you can replace T7 by T22 (see e.g. enclosed file).
I think it should better work.
Hope this helps,
Chi-Tuan