correct bug in overflow + zps

Context

Simple stupid bug in the may introduced by myself in usrdef_zgr.F90 when optimizing zps.

  • Branches impacted: main
  • Reference test case ~OVERFLOW engines involved USR
  • compiled in debug mode

Analysis

In "summer body" pe3t defintion

-         ik = k_bot(ji,jj) 
-         pdepw(ji,jj,ik+1) = MIN( zht(ji,jj) , pdepw_1d(ik+1) )
-         pe3t (ji,jj,ik  ) = pdepw(ji,jj,ik+1) - pdepw(ji,jj,ik)
-         pe3t (ji,jj,ik+1) = pe3t (ji,jj,ik  )

has been replaced by

+           ik = k_bot(ji,jj)
+           zdepw(ji,jj,ik+1) = MIN( zht(ji,jj) , pdepw_1d(ik+1) )
+           pe3t (ji,jj,ik  ) = zdepw(ji,jj,ik+1) - zdepw(ji,jj,ik)
+           pe3t (ji,jj,ik+1) = pe3t (ji,jj,ik  )

zdepw is not initialised except in ji,jj,ik+1 so zdepw(ji,jj,ik) is NaN...

As a result OVERFLOW test case with zps option does not run in DEBUG mode.

Fix

           ik = k_bot(ji,jj)
           pe3t (ji,jj,ik  ) = MIN( zht(ji,jj) , pdepw_1d(ik+1) ) - pdepw_1d(ik)
           pe3t (ji,jj,ik+1) = pe3t (ji,jj,ik  )