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 3792 – NEMO

Changeset 3792


Ignore:
Timestamp:
2013-02-10T20:06:22+01:00 (11 years ago)
Author:
gm
Message:

dev_MERGE_2012: #960 : correct bug in trdmld & trdmld_trc (time step control) + KPP/TRC compatibility (zdfkpp.F90)

Location:
branches/2012/dev_MERGE_2012/NEMOGCM/NEMO
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/TRD/trdmld.F90

    r3680 r3792  
    760760      ! ------------------------------------------------- 
    761761 
    762       IF( ( lk_trdmld ) .AND. ( MOD( nitend, nn_trd ) /= 0 ) ) THEN 
     762      IF( ( lk_trdmld ) .AND. ( MOD( nitend-nit000+1, nn_trd ) /= 0 ) ) THEN 
    763763         WRITE(numout,cform_err) 
    764764         WRITE(numout,*) '                Your nitend parameter, nitend = ', nitend 
  • branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90

    r3764 r3792  
    423423               zthermal = rn_alpha / ( rcp * zrhos + epsln ) 
    424424               zhalin   = rn_beta * tsn(ji,jj,1,jp_sal) * rcs 
     425               zbeta    = rn_beta 
    425426            ENDIF 
    426427            ! Radiative surface buoyancy force 
     
    428429            ! Non radiative surface buoyancy force 
    429430            zBo   (ji,jj) = grav * zthermal * qns(ji,jj) -  grav * zhalin * ( emp(ji,jj)-rnf(ji,jj) )  & 
    430                &                                         -  grav * rbeta * rcs * sfx(ji,jj) 
     431               &                                         -  grav * zbeta * rcs * sfx(ji,jj) 
    431432            ! Surface Temperature flux for non-local term 
    432433            wt0(ji,jj) = - ( qsr(ji,jj) + qns(ji,jj) )* r1_rau0_rcp * tmask(ji,jj,1) 
     
    13061307      ! 
    13071308      INTEGER  ::   ji, jj, jk, jn      ! Dummy loop indices 
     1309      CHARACTER (len=35) :: charout 
    13081310      REAL(wp) ::   ztra, zflx 
    13091311      REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   ztrtrd 
     
    13351337            END DO 
    13361338         END DO 
    1337          ! save the non-local tracer flux trends for diagnostic 
    1338          IF( l_trdtrc )  ztrtrd(:,:,:)  = tra(:,:,:,jn) - ztrtrd(:,:,:) 
    1339          CALL trd_tra( kt, 'TRC', jn, jptra_trd_zdf, ztrtrd(:,:,:,jn) ) 
     1339         ! 
     1340         IF( l_trdtrc ) THEN         ! save the non-local tracer flux trends for diagnostic 
     1341            ztrtrd(:,:,:) = tra(:,:,:,jn) - ztrtrd(:,:,:) 
     1342            CALL trd_tra( kt, 'TRC', jn, jptra_trd_zdf, ztrtrd(:,:,:) ) 
     1343         ENDIF 
    13401344         ! 
    13411345      END DO 
     
    13431347      IF( ln_ctl )   THEN 
    13441348         WRITE(charout, FMT="(' kpp')")  ;  CALL prt_ctl_trc_info(charout) 
    1345          CALL prt_ctl_trc( tab4d=tra, mask=tmask, clinfo=clname, clinfo2='trd' ) 
     1349         CALL prt_ctl_trc( tab4d=tra, mask=tmask, clinfo=ctrcnm, clinfo2='trd' ) 
    13461350      ENDIF 
    13471351      ! 
  • branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/TOP_SRC/TRP/trdmld_trc.F90

    r3680 r3792  
    1717   !!---------------------------------------------------------------------- 
    1818   USE trc               ! tracer definitions (trn, trb, tra, etc.) 
     19   USE trc_oce, ONLY :   nn_dttrc  ! frequency of step on passive tracers 
    1920   USE dom_oce           ! domain definition 
    20    USE zdfmxl  , ONLY : nmln !: number of level in the mixed layer 
    21    USE zdf_oce , ONLY : avt  !: vert. diffusivity coef. at w-point for temp   
     21   USE zdfmxl  , ONLY : nmln ! number of level in the mixed layer 
     22   USE zdf_oce , ONLY : avt  ! vert. diffusivity coef. at w-point for temp   
    2223# if defined key_zdfddm    
    23    USE zdfddm  , ONLY : avs  !: salinity vertical diffusivity coeff. at w-point 
     24   USE zdfddm  , ONLY : avs  ! salinity vertical diffusivity coeff. at w-point 
    2425# endif 
    2526   USE trcnam_trp        ! passive tracers transport namelist variables 
     
    11731174      ! ------------------------------------------------- 
    11741175 
    1175       IF( ( lk_trdmld_trc ) .AND. ( MOD( nitend, nn_trd_trc ) /= 0 ) ) THEN 
     1176      IF( ( lk_trdmld_trc ) .AND. ( MOD( nitend-nittrc000+1, nn_trd_trc ) /= 0 ) ) THEN 
    11761177         WRITE(numout,cform_err) 
    11771178         WRITE(numout,*) '                Your nitend parameter, nitend = ', nitend 
Note: See TracChangeset for help on using the changeset viewer.