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 9943 for NEMO/trunk/src/ICE/icectl.F90 – NEMO

Ignore:
Timestamp:
2018-07-13T16:15:22+02:00 (6 years ago)
Author:
clem
Message:

add a proper correction for negative values occuring after Ultimate-Macho advection scheme. This correction conserves mass, heat etc. 3 diagnostics have also been added in the outputs to make sure that the negative values are indeed small and unimportant in view of the advantages in using Ultimate-Macho

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/ICE/icectl.F90

    r9935 r9943  
    148148            IF ( ABS( zs   ) > zs_sill )   WRITE(numout,*) 'violation saline [psu*Mt/day] (',cd_routine,') = ',zs 
    149149            IF ( ABS( zt   ) > zt_sill )   WRITE(numout,*) 'violation enthalpy [GW]       (',cd_routine,') = ',zt 
    150             IF ( ABS(zvtrp ) > zv_sill .AND. cd_routine == 'icedyn_adv' ) THEN 
    151                                            WRITE(numout,*) 'violation vtrp [Mt/day]       (',cd_routine,') = ',zvtrp 
    152                                            WRITE(numout,*) 'violation etrp [GW]           (',cd_routine,') = ',zetrp 
    153             ENDIF 
    154150            IF ( zvmin < -epsi10 )         WRITE(numout,*) 'violation v_i<0  [m]          (',cd_routine,') = ',zvmin 
    155151            IF ( zamax > MAX(rn_amax_n,rn_amax_s)+epsi10 .AND. cd_routine /= 'icedyn_adv' .AND. cd_routine /= 'icedyn_rdgrft' )  & 
    156152               &                           WRITE(numout,*) 'violation a_i>amax            (',cd_routine,') = ',zamax 
    157153            IF ( zamin < -epsi10 )         WRITE(numout,*) 'violation a_i<0               (',cd_routine,') = ',zamin 
     154!clem: the following check fails when using UM3-5 advection scheme (see comments in icedyn_adv.F90) 
     155!            IF ( ABS(zvtrp ) > zv_sill .AND. cd_routine == 'icedyn_adv' ) THEN 
     156!                                           WRITE(numout,*) 'violation vtrp [Mt/day]       (',cd_routine,') = ',zvtrp 
     157!                                           WRITE(numout,*) 'violation etrp [GW]           (',cd_routine,') = ',zetrp 
     158!            ENDIF 
    158159         ENDIF 
    159160         ! 
Note: See TracChangeset for help on using the changeset viewer.