New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 15231 – NEMO

Changeset 15231


Ignore:
Timestamp:
2021-09-08T09:58:57+02:00 (3 years ago)
Author:
clem
Message:

4.0-HEAD: small bug fixes following tickets #2644 #2679 #2688

Location:
NEMO/releases/r4.0/r4.0-HEAD/src/OCE
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/releases/r4.0/r4.0-HEAD/src/OCE/DIA/diahth.F90

    r12276 r15231  
    365365      ! 
    366366      ilevel(:,:) = 1 
    367       DO jk = 2, jpkm1 
     367      DO jk = 1, jpkm1 
    368368         DO jj = 1, jpj 
    369369            DO ji = 1, jpi 
    370                IF( ( gdept_n(ji,jj,jk) < pdep ) .AND. ( tmask(ji,jj,jk) == 1 ) ) THEN 
    371                    ilevel(ji,jj) = jk 
    372                    zthick(ji,jj) = zthick(ji,jj) + e3t_n(ji,jj,jk) 
    373                    phtc  (ji,jj) = phtc  (ji,jj) + e3t_n(ji,jj,jk) * ptn(ji,jj,jk) 
     370               IF( ( gdepw_n(ji,jj,jk+1) < pdep ) .AND. ( tmask(ji,jj,jk) == 1 ) ) THEN 
     371                  ilevel(ji,jj) = jk+1 
     372                  zthick(ji,jj) = zthick(ji,jj) + e3t_n(ji,jj,jk) 
     373                  phtc  (ji,jj) = phtc  (ji,jj) + e3t_n(ji,jj,jk) * ptn(ji,jj,jk) 
    374374               ENDIF 
    375375            ENDDO 
     
    380380         DO ji = 1, jpi 
    381381            ik = ilevel(ji,jj) 
    382             zthick(ji,jj) = pdep - zthick(ji,jj)   !   remaining thickness to reach depht pdep 
    383             phtc(ji,jj)   = phtc(ji,jj) + ptn(ji,jj,ik+1) * MIN( e3t_n(ji,jj,ik+1), zthick(ji,jj) ) & 
    384                                                           * tmask(ji,jj,ik+1) 
     382            IF( tmask(ji,jj,ik) == 1 ) THEN 
     383               zthick(ji,jj) = MIN ( gdepw_n(ji,jj,ik+1), pdep ) - zthick(ji,jj)   ! remaining thickness to reach dephw pdep 
     384               phtc(ji,jj)   = phtc(ji,jj) + ptn(ji,jj,ik) * zthick(ji,jj) 
     385            ENDIF 
    385386         END DO 
    386387      ENDDO 
  • NEMO/releases/r4.0/r4.0-HEAD/src/OCE/FLO/flodom.F90

    r11818 r15231  
    366366      REAL(wp) ::   zabt, zbct, zcdt, zdat, zabpt, zbcpt, zcdpt, zdapt 
    367367      !!--------------------------------------------------------------------- 
    368       !! Statement function 
    369       REAL(wp) ::   fsline 
    370       REAL(wp) ::   psax, psay, psbx, psby, psx, psy 
    371       fsline( psax, psay, psbx, psby, psx, psy ) = psy  * ( psbx - psax )   & 
    372          &                                       - psx  * ( psby - psay )   & 
    373          &                                       + psax *   psby - psay * psbx 
    374       !!--------------------------------------------------------------------- 
    375368       
    376369      ! 4 semi plane defined by the 4 points and including the T point 
     
    407400   END SUBROUTINE flo_findmesh 
    408401 
     402   FUNCTION fsline( psax, psay, psbx, psby, psx, psy ) 
     403      !! --------------------------------------------------------------------- 
     404      !!                 ***  Function fsline  *** 
     405      !!           
     406      !! ** Purpose : 
     407      !! ** Method  :  
     408      !!---------------------------------------------------------------------- 
     409      REAL(wp) ::   fsline 
     410      REAL(wp), INTENT(in) ::   psax, psay, psbx, psby, psx, psy 
     411      !!--------------------------------------------------------------------- 
     412      fsline = psy  * ( psbx - psax )   & 
     413         &   - psx  * ( psby - psay )   & 
     414         &   + psax *   psby - psay * psbx 
     415      ! 
     416   END FUNCTION fsline 
    409417 
    410418   FUNCTION flo_dstnce( pla1, phi1, pla2, phi2 ) 
  • NEMO/releases/r4.0/r4.0-HEAD/src/OCE/SBC/sbcisf.F90

    r12294 r15231  
    354354            DO jj = 1, jpj 
    355355                ik = 2 
    356 !!gm potential bug: use gdepw_0 not _n 
    357                 DO WHILE ( ik <= mbkt(ji,jj) .AND. gdepw_n(ji,jj,ik) < rzisf_tbl(ji,jj) ) ;  ik = ik + 1 ;  END DO 
     356                DO WHILE ( ik <= mbkt(ji,jj) .AND. gdepw_0(ji,jj,ik) < rzisf_tbl(ji,jj) ) ;  ik = ik + 1 ;  END DO 
    358357                misfkt(ji,jj) = ik-1 
    359358            END DO 
Note: See TracChangeset for help on using the changeset viewer.