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

Changeset 14824


Ignore:
Timestamp:
2021-05-10T15:59:00+02:00 (3 years ago)
Author:
smueller
Message:

Removal of optional debug output (ticket #2353)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14122_HPC-08_Mueller_OSMOSIS_streamlining/src/OCE/ZDF/zdfosm.F90

    r14822 r14824  
    218218   REAL(wp) ::   rn_difconv            = 1.0_wp     ! Diffusivity when unstable below BL  (m2/s) 
    219219   ! 
    220 #ifdef key_osm_debug 
    221    INTEGER :: nn_idb = 297, nn_jdb = 193, nn_kdb = 35, nn_narea_db = 109 
    222    INTEGER :: iloc_db, jloc_db 
    223 #endif 
    224    ! 
    225220   ! OSMOSIS mixed layer eddy parametrization constants 
    226221   INTEGER  ::   nn_osm_mle          ! = 0/1 flag for horizontal average on avt 
     
    437432      zdiff_mle(:,:) = 0.0_wp 
    438433      ! 
    439 #ifdef key_osm_debug 
    440       IF(mi0(nn_idb)==mi1(nn_idb) .AND. mj0(nn_jdb)==mj1(nn_jdb) .AND. & 
    441          & mi0(nn_idb) > 1 .AND. mi0(nn_idb) < jpi .AND. mj0(nn_jdb) > 1 .AND. mj0(nn_jdb) < jpj) THEN 
    442          nn_narea_db = narea 
    443          iloc_db=mi0(nn_idb); jloc_db=mj0(nn_jdb) 
    444          WRITE(narea+100,*) 
    445          WRITE(narea+100,'(a,i7)')'timestep=',kt 
    446          WRITE(narea+100,'(3(a,i7))')'narea=',narea,' nn_idb',nn_idb,' nn_jdb=',nn_jdb 
    447          WRITE(narea+100,'(4(a,i7))')'iloc_db=',iloc_db,' jloc_db',jloc_db,' jpi=',jpi,' jpj=',jpj  
    448          ji=iloc_db; jj=jloc_db 
    449          WRITE(narea+100,'(a,i7,5(a,g10.2))')'mbkt=',mbkt(ji,jj),' ht_n',ht(ji,jj),& 
    450             &' hu_n-',hu(ji-1,jj,Kmm),' hu_n+',hu(ji,jj,Kmm), ' hv_n-',hv(ji,jj-1,Kmm),' hv_n+',hv(ji,jj,Kmm) 
    451          WRITE(narea+100,*) 
    452          FLUSH(narea+100) 
    453       ELSE 
    454          nn_narea_db = -1000 
    455       END IF 
    456 #endif 
    457       ! 
    458434      ! hbl = MAX(hbl,epsln) 
    459435      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     
    493469         scos_wind(ji,jj) = -1.0_wp * suw0(ji,jj) / ( sustar(ji,jj) * sustar(ji,jj) ) 
    494470         ssin_wind(ji,jj) = -1.0_wp * zvw0        / ( sustar(ji,jj) * sustar(ji,jj) ) 
    495 #ifdef key_osm_debug 
    496          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    497             zthermal = rab_n(ji,jj,1,jp_tem) 
    498             zbeta    = rab_n(ji,jj,1,jp_sal) 
    499             zradav   = zrad0(ji,jj) * ( zz0 * ( 1.0_wp - EXP( -hbl(ji,jj)/rn_si0 ) ) * rn_si0 +   & 
    500                &                        zz1 * ( 1.0_wp - EXP( -hbl(ji,jj)/rn_si1 ) ) * rn_si1 ) / hbl(ji,jj) 
    501             WRITE(narea+100,'(4(3(a,g11.3),/), 2(a,g11.3),/)') & 
    502                & 'after calculating fluxes:  hbl=', hbl(ji,jj),' zthermal=',zthermal, ' zbeta=', zbeta,& 
    503                & ' zrad0=', zrad0(ji,jj),' zradh=', zradh(ji,jj), ' zradav=', zradav,                  & 
    504                & ' swth0=', swth0(ji,jj), '  swthav=', swthav(ji,jj), ' sws0=', sws0(ji,jj),           & 
    505                & ' swb0=', swb0(ji,jj), ' zwb0tot=', zwb0tot(ji,jj), ' zwb0tot_in hbl=', zwb0tot(ji,jj) + grav * zthermal * zradh(ji,jj),& 
    506                & ' swbav=', swbav(ji,jj) 
    507             FLUSH(narea+100) 
    508          END IF 
    509 #endif 
    510471      END_2D 
    511472      ! Calculate Stokes drift in direction of wind (sustke) and Stokes penetration depth (dstokes) 
     
    545506         END_2D 
    546507      END SELECT 
    547 #ifdef key_osm_debug 
    548       IF(narea==nn_narea_db)THEN 
    549          WRITE(narea+100,'(2(a,g11.3))') & 
    550             & 'Before reduction:  sustke=', sustke(iloc_db,jloc_db),' dstokes =',dstokes(iloc_db,jloc_db) 
    551          FLUSH(narea+100) 
    552       END IF 
    553 #endif 
    554508      ! 
    555509      IF (ln_zdfosm_ice_shelter) THEN 
     
    631585            shol(ji,jj)   = -1.0_wp * hbl(ji,jj) * 2.0_wp * swbav(ji,jj) / ( svstr(ji,jj)**3  + epsln ) 
    632586         ENDIF 
    633 #ifdef key_osm_debug 
    634          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    635             WRITE(narea+100,'(2(a,g11.3),/,3(a,g11.3),/,3(a,g11.3),/)') & 
    636                & 'After reduction: sustke=', sustke(ji,jj), ' dstokes=', dstokes(ji,jj), & 
    637                & ' zustar =', sustar(ji,jj), ' swstrl=', swstrl(ji,jj), ' swstrc=', swstrc(ji,jj),& 
    638                & ' shol=', shol(ji,jj), ' sla=', sla(ji,jj), ' svstr=', svstr(ji,jj) 
    639             FLUSH(narea+100) 
    640          END IF 
    641 #endif 
    642587      END_2D 
    643588      ! 
     
    667612         zdh(ji,jj) = zhbl(ji,jj) - zhml(ji,jj) 
    668613      END_2D 
    669 #ifdef key_osm_debug 
    670       IF(narea==nn_narea_db) THEN 
    671          ji=iloc_db; jj=jloc_db 
    672          WRITE(narea+100,'(2(a,g11.3),/,3(a,g11.3),/,2(a,i7),/)') & 
    673             & 'Before updating hbl: hbl=', hbl(ji,jj), ' dh=', dh(ji,jj), & 
    674             &' zhbl =',zhbl(ji,jj) , ' zhml=', zhml(ji,jj), ' zdh=', zdh(ji,jj),& 
    675             &' imld=', nmld(ji,jj), ' ibld=', nbld(ji,jj) 
    676          WRITE(narea+100,'(a,g11.3,a,2g11.3)') 'Physics: ssh ',ssh(ji,jj,Kmm),' T S surface=',ts(ji,jj,1,jp_tem,Kmm),ts(ji,jj,1,jp_sal,Kmm) 
    677          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    678          WRITE(narea+100,'(a,*(g11.3))') ' T[imld-1..ibld+2] =', ( ts(ji,jj,jk,jp_tem,Kmm), jk=jl,jm ) 
    679          WRITE(narea+100,'(a,*(g11.3))') ' S[imld-1..ibld+2] =', ( ts(ji,jj,jk,jp_sal,Kmm), jk=jl,jm ) 
    680          WRITE(narea+100,'(a,*(g11.3))') ' U+[imld-1..ibld+2] =', ( uu(ji,jj,jk,Kmm), jk=jl,jm ) 
    681          WRITE(narea+100,'(a,*(g11.3))') ' U-[imld-1..ibld+2] =', ( uu(ji-1,jj,jk,Kmm), jk=jl,jm ) 
    682          WRITE(narea+100,'(a,*(g11.3))') ' V+[imld-1..ibld+2] =', ( vv(ji,jj,jk,Kmm), jk=jl,jm ) 
    683          WRITE(narea+100,'(a,*(g11.3))') ' V-[imld-1..ibld+2] =', ( vv(ji,jj-1,jk,Kmm), jk=jl,jm ) 
    684          WRITE(narea+100,'(a,*(g11.3))') ' W[imld-1..ibld+2] =', ( ww(ji,jj-1,jk), jk=jl,jm ) 
    685          WRITE(narea+100,*) 
    686          FLUSH(narea+100) 
    687       END IF 
    688 #endif 
    689614      ! 
    690615      ! Averages over well-mixed and boundary layer, note BL averages use jp_ext=2 everywhere 
     
    697622         &                           av_b_ml, av_u_ml, av_v_ml, jp_ext, av_dt_ml,   & 
    698623         &                           av_ds_ml, av_db_ml, av_du_ml, av_dv_ml ) 
    699 #ifdef key_osm_debug 
    700       IF(narea==nn_narea_db) THEN 
    701          ji=iloc_db; jj=jloc_db 
    702          WRITE(narea+100,'(4(3(a,g11.3),/), 2(4(a,g11.3),/))') & 
    703             & 'After averaging, with old hbl (& jp_ext==2), hml: zt_bl=', av_t_bl(ji,jj),& 
    704             & ' zs_bl=', av_s_bl(ji,jj),  ' zb_bl=', av_b_bl(ji,jj),& 
    705             & 'zdt_bl=', av_dt_bl(ji,jj), ' zds_bl=', av_ds_bl(ji,jj),  ' zdb_bl=', av_db_bl(ji,jj),& 
    706             & 'zt_ml=', av_t_ml(ji,jj), ' zs_ml=', av_s_ml(ji,jj),  ' zb_ml=', av_b_ml(ji,jj),& 
    707             & 'zdt_ml=', av_dt_ml(ji,jj), ' zds_ml=', av_ds_ml(ji,jj),  ' zdb_ml=', av_db_ml(ji,jj),& 
    708             & 'zu_bl =', av_u_bl(ji,jj) , ' zv_bl=', av_v_bl(ji,jj), ' zdu_bl=', av_du_bl(ji,jj), ' zdv_bl=', av_dv_bl(ji,jj),& 
    709             & 'zu_ml =', av_u_ml(ji,jj) , ' zv_ml=', av_v_ml(ji,jj), ' zdu_ml=', av_du_ml(ji,jj), ' zdv_ml=', av_dv_ml(ji,jj) 
    710          FLUSH(narea+100) 
    711       END IF 
    712 #endif 
    713624      ! Velocity components in frame aligned with surface stress 
    714625      CALL zdf_osm_velocity_rotation( av_u_ml, av_v_ml  ) 
     
    716627      CALL zdf_osm_velocity_rotation( av_u_bl, av_v_bl  ) 
    717628      CALL zdf_osm_velocity_rotation( av_du_bl, av_dv_bl ) 
    718 #ifdef key_osm_debug 
    719       IF(narea==nn_narea_db) THEN 
    720          ji=iloc_db; jj=jloc_db 
    721          WRITE(narea+100,'(a,/, 2(4(a,g11.3),/))') & 
    722             & 'After rotation, with old hbl (& jp_ext==2), hml:', & 
    723             & 'zu_bl =', av_u_bl(ji,jj) , ' zv_bl=', av_v_bl(ji,jj), ' zdu_bl=', av_du_bl(ji,jj), ' zdv_bl=', av_dv_bl(ji,jj),& 
    724             & 'zu_ml =', av_u_ml(ji,jj) , ' zv_ml=', av_v_ml(ji,jj), ' zdu_ml=', av_du_ml(ji,jj), ' zdv_ml=', av_dv_ml(ji,jj) 
    725          FLUSH(narea+100) 
    726       END IF 
    727 #endif 
    728629      ! 
    729630      ! Determine the state of the OSBL, stable/unstable, shear/no shear 
     
    731632         &                     zhml, zdh ) 
    732633      ! 
    733 #ifdef key_osm_debug 
    734       IF(narea==nn_narea_db) THEN 
    735          ji=iloc_db; jj=jloc_db 
    736          WRITE(narea+100,'(2(a,l7),a, i7,/,3(a,g11.3),/)') & 
    737             & 'After zdf_osm_osbl_state: lconv=', l_conv(ji,jj), ' lshear=', l_shear(ji,jj),  ' j_ddh=', n_ddh(ji,jj),& 
    738             & 'zwb_ent=', zwb_ent(ji,jj), ' zwb_min=', zwb_min(ji,jj),  ' zshear=', zshear(ji,jj) 
    739          FLUSH(narea+100) 
    740       END IF 
    741 #endif 
    742634      IF ( ln_osm_mle ) THEN 
    743635         ! Fox-Kemper Scheme 
     
    752644            zhmle(ji,jj) = gdepw(ji,jj,mld_prof(ji,jj),Kmm) 
    753645         END_2D 
    754 #ifdef key_osm_debug 
    755          IF(narea==nn_narea_db) THEN 
    756             ji=iloc_db; jj=jloc_db 
    757             WRITE(narea+100,'(2(a,g11.3), a, i7,/,(3(a,g11.3),/),2(a,g11.3),/)') & 
    758                & 'Before updating hmle: hmle =',hmle(ji,jj) , ' zhmle=', zhmle(ji,jj), ' mld_prof=', mld_prof(ji,jj), & 
    759                & 'averaging over hmle: zt_mle=', av_t_mle(ji,jj), ' zs_mle=', av_s_mle(ji,jj),  ' zb_mle=', av_b_mle(ji,jj),& 
    760                & 'zu_mle =', av_u_mle(ji,jj), ' zv_mle=', av_v_mle(ji,jj) 
    761             FLUSH(narea+100) 
    762          END IF 
    763 #endif 
    764646         ! 
    765647         ! Calculate fairly-well-mixed depth zmld & its index mld_prof + lateral zmld-averaged gradients 
     
    772654         CALL zdf_osm_mle_parameters( Kmm, mld_prof, zmld, zhmle, zvel_mle,   & 
    773655            &                         zdiff_mle, zdbds_mle, zhbl, zwb0tot ) 
    774 #ifdef key_osm_debug 
    775          IF(narea==nn_narea_db) THEN 
    776             ji=iloc_db; jj=jloc_db 
    777             WRITE(narea+100,'(a,g11.3,a,i7,/, 2(4(a,g11.3),/),2(a,g11.3),/,2(3(a,g11.3),/),a,i7,2(a,g11.3),/,3(a,g11.3),/,/)') & 
    778                & 'Before updating hmle: zmld =',zmld(ji,jj),' mld_prof=', mld_prof(ji,jj), & 
    779                & 'zdtdx+=', zdtdx(ji,jj),' zdtdx-=', zdtdx(ji-1,jj),' zdsdx+=', zdsdx(ji,jj),' zdsdx-=',zdsdx(ji-1,jj), & 
    780                & 'zdtdy+=', zdtdy(ji,jj),' zdtdy-=', zdtdy(ji,jj-1),' zdsdy+=', zdsdy(ji,jj),' zdsdy-=',zdsdy(ji,jj-1), & 
    781                & 'dbdx_mle+=', dbdx_mle(ji,jj),' dbdx_mle-=', dbdx_mle(ji-1,jj),& 
    782                & 'dbdy_mle+=', dbdy_mle(ji,jj),' dbdy_mle-=',dbdy_mle(ji,jj-1),' zdbds_mle=',zdbds_mle(ji,jj), & 
    783                & 'After updating hmle: mld_prof=', mld_prof(ji,jj),' hmle=', hmle(ji,jj), ' zhmle=', zhmle(ji,jj),& 
    784                & 'zvel_mle =', zvel_mle(ji,jj), ' zdiff_mle=', zdiff_mle(ji,jj), ' zwb_fk=', zwb_fk(ji,jj) 
    785             FLUSH(narea+100) 
    786          END IF 
    787 #endif 
    788656      ELSE    ! ln_osm_mle 
    789657         ! FK not selected, Boundary Layer only. 
     
    815683      !         ENDIF 
    816684      !      END_2D 
    817 #ifdef key_osm_debug 
    818       IF(narea==nn_narea_db) THEN 
    819          ji=iloc_db; jj=jloc_db 
    820          WRITE(narea+100,'(4(a,l7),a,i7,/, 3(a,g11.3),/)') & 
    821             & 'BL logical descriptors: lconv =',l_conv(ji,jj),' lpyc=', l_pyc(ji,jj),' lflux=', l_flux(ji,jj),' lmle=', l_mle(ji,jj),& 
    822             & ' jp_ext=', jp_ext(ji,jj), & 
    823             & 'sub-BL strat: zdtdz_bl_ext=', zdtdz_bl_ext(ji,jj),' zdsdz_bl_ext=', zdsdz_bl_ext(ji,jj),' zdbdz_bl_ext=', zdbdz_bl_ext(ji,jj) 
    824          FLUSH(narea+100) 
    825       END IF 
    826 #endif 
    827685      ! 
    828686      ! Recalculate bl averages using jp_ext & ml averages .... note no rotation of u & v here.. 
     
    835693         &                           av_b_ml, av_u_ml, av_v_ml, jp_ext, av_dt_ml,   & 
    836694         &                           av_ds_ml, av_db_ml, av_du_ml, av_dv_ml )   ! ag 19/03 
    837 #ifdef key_osm_debug 
    838       IF(narea==nn_narea_db) THEN 
    839          ji=iloc_db; jj=jloc_db 
    840          WRITE(narea+100,'(4(3(a,g11.3),/), 2(4(a,g11.3),/))') & 
    841             & 'After averaging, with old hbl (&correct jp_ext), hml: zt_bl=', av_t_bl(ji,jj),& 
    842             & ' zs_bl=', av_s_bl(ji,jj),  ' zb_bl=', av_b_bl(ji,jj),& 
    843             & 'zdt_bl=', av_dt_bl(ji,jj), ' zds_bl=', av_ds_bl(ji,jj),  ' zdb_bl=', av_db_bl(ji,jj),& 
    844             & 'zt_ml=', av_t_ml(ji,jj), ' zs_ml=', av_s_ml(ji,jj),  ' zb_ml=', av_b_ml(ji,jj),& 
    845             & 'zdt_ml=', av_dt_ml(ji,jj), ' zds_ml=', av_ds_ml(ji,jj),  ' zdb_ml=', av_db_ml(ji,jj),& 
    846             & 'zu_bl =', av_u_bl(ji,jj) , ' zv_bl=', av_v_bl(ji,jj), ' zdu_bl=', av_du_bl(ji,jj), ' zdv_bl=', av_dv_bl(ji,jj),& 
    847             & 'zu_ml =', av_u_ml(ji,jj) , ' zv_ml=', av_v_ml(ji,jj), ' zdu_ml=', av_du_ml(ji,jj), ' zdv_ml=', av_dv_ml(ji,jj) 
    848          FLUSH(narea+100) 
    849       END IF 
    850 #endif 
    851695      ! 
    852696      ! Rate of change of hbl 
     
    865709            END IF 
    866710         END IF 
    867 #ifdef key_osm_debug 
    868          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    869             WRITE(narea+100,'(2(a,g11.3),/,2(a,g11.3)),2(a,l7)')'after zdf_osm_calculate_dhdt: zhbl_t=',zhbl_t(ji,jj), 'hbl=', hbl(ji,jj),& 
    870                & 'delta hbl from dzdhdt', zdhdt(ji,jj)*rn_Dt,' delta hbl from w ', ww(ji,jj,nbld(ji,jj))*rn_Dt,   & 
    871                & ' lcoup= ', l_coup(ji,jj), ' lpyc= ', l_pyc(ji,jj) 
    872             FLUSH(narea+100) 
    873          END IF 
    874 #endif 
    875711      END_2D 
    876712      ! 
     
    911747               dh(ji,jj)   = zdh(ji,jj)                                                    ! ag 19/03   
    912748               hml(ji,jj)  = hbl(ji,jj) - dh(ji,jj)                                        ! ag 19/03 
    913 #ifdef key_osm_debug 
    914                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    915                   WRITE(narea+100,'(a)')'After setting pycnocline thickness BL running aground: lpyc= F5: ibld(ji,jj) >= mbkt(ji,jj) -2' 
    916                   WRITE(narea+100,'(2(a,i7),2(a,g11.3))')' ibld=',nbld(ji,jj),' imld=',nmld(ji,jj), ' zdh=',zdh(ji,jj), ' zhml=',zhml(ji,jj) 
    917                   WRITE(narea+100,'(2(a,g11.3))')'dh=',dh(ji,jj),' hml=',hml(ji,jj) 
    918                   FLUSH(narea+100) 
    919                END IF 
    920 #endif 
    921749            ENDIF 
    922750         ENDIF                                              ! ag 19/03 
     
    935763      ! 
    936764      CALL zdf_osm_external_gradients( Kmm, nbld(A2D(0)) + 1, zdtdz_bl_ext, zdsdz_bl_ext, zdbdz_bl_ext ) 
    937 #ifdef key_osm_debug 
    938       IF(narea==nn_narea_db) THEN 
    939          ji=iloc_db; jj=jloc_db 
    940          WRITE(narea+100,'(4(3(a,g11.3),/), 2(4(a,g11.3),/))') & 
    941             & 'After averaging, with new hbl (&correct jp_ext), hml: zt_bl=', av_t_bl(ji,jj),& 
    942             & ' zs_bl=', av_s_bl(ji,jj),  ' zb_bl=', av_b_bl(ji,jj),& 
    943             & 'zdt_bl=', av_dt_bl(ji,jj), ' zds_bl=', av_ds_bl(ji,jj),  ' zdb_bl=', av_db_bl(ji,jj),& 
    944             & 'zt_ml=', av_t_ml(ji,jj), ' zs_ml=', av_s_ml(ji,jj),  ' zb_ml=', av_b_ml(ji,jj),& 
    945             & 'zdt_ml=', av_dt_ml(ji,jj), ' zds_ml=', av_ds_ml(ji,jj),  ' zdb_ml=', av_db_ml(ji,jj),& 
    946             & 'zu_bl =', av_u_bl(ji,jj) , ' zv_bl=', av_v_bl(ji,jj), ' zdu_bl=', av_du_bl(ji,jj), ' zdv_bl=', av_dv_bl(ji,jj),& 
    947             & 'zu_ml =', av_u_ml(ji,jj) , ' zv_ml=', av_v_ml(ji,jj), ' zdu_ml=', av_du_ml(ji,jj), ' zdv_ml=', av_dv_ml(ji,jj) 
    948          FLUSH(narea+100) 
    949       END IF 
    950 #endif 
    951765      ! Rotate mean currents and changes onto wind aligned co-ordinates 
    952766      CALL zdf_osm_velocity_rotation( av_u_ml, av_v_ml ) 
     
    954768      CALL zdf_osm_velocity_rotation( av_u_bl, av_v_bl ) 
    955769      CALL zdf_osm_velocity_rotation( av_du_bl, av_dv_bl ) 
    956 #ifdef key_osm_debug 
    957       IF(narea==nn_narea_db) THEN 
    958          ji=iloc_db; jj=jloc_db 
    959          WRITE(narea+100,'(a,/, 2(4(a,g11.3),/))') & 
    960             & 'After rotation, with new hbl (& correct jp_ext), hml:', & 
    961             & 'zu_bl =', av_u_bl(ji,jj) , ' zv_bl=', av_v_bl(ji,jj), ' zdu_bl=', av_du_bl(ji,jj), ' zdv_bl=', av_dv_bl(ji,jj),& 
    962             & 'zu_ml =', av_u_ml(ji,jj) , ' zv_ml=', av_v_ml(ji,jj), ' zdu_ml=', av_du_ml(ji,jj), ' zdv_ml=', av_dv_ml(ji,jj) 
    963          FLUSH(narea+100) 
    964       END IF 
    965 #endif 
    966770      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    967771      ! Eddy viscosity/diffusivity and non-gradient terms in the flux-gradient relationship 
     
    970774         &                                zhml, zdh, zdhdt, zshear, zwb_ent,   & 
    971775         &                                zwb_min ) 
    972 #ifdef key_osm_debug 
    973       IF(narea==nn_narea_db) THEN 
    974          ji=iloc_db; jj=jloc_db 
    975          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    976          WRITE(narea+100,'(a,*(g11.3))') ' zdiffut[imld-1..ibld+2] =', ( zdiffut(ji,jj,jk), jk=jl,jm ) 
    977          WRITE(narea+100,'(a,*(g11.3))') ' zviscos[imld-1..ibld+2] =', ( zviscos(ji,jj,jk), jk=jl,jm ) 
    978          WRITE(narea+100,*) 
    979          FLUSH(narea+100) 
    980       END IF 
    981 #endif 
    982776      ! 
    983777      ! Calculate non-gradient components of the flux-gradient relationships 
     
    1036830         END_2D 
    1037831      END IF   ! ln_convmix = .true. 
    1038 #ifdef key_osm_debug 
    1039       IF(narea==nn_narea_db) THEN 
    1040          ji=iloc_db; jj=jloc_db 
    1041          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    1042          WRITE(narea+100,'(a)') ' After including KPP Ri# diffusivity & viscosity' 
    1043          WRITE(narea+100,'(a,*(g11.3))') ' zdiffut[imld-1..ibld+2] =', ( zdiffut(ji,jj,jk), jk=jl,jm ) 
    1044          WRITE(narea+100,'(a,*(g11.3))') ' zviscos[imld-1..ibld+2] =', ( zviscos(ji,jj,jk), jk=jl,jm ) 
    1045          WRITE(narea+100,*) 
    1046          FLUSH(narea+100) 
    1047       END IF 
    1048 #endif 
    1049832      ! 
    1050833      IF ( ln_osm_mle ) THEN   ! Set up diffusivity and non-gradient mixing 
     
    1077860            END IF 
    1078861         END_2D 
    1079 #ifdef key_osm_debug 
    1080          IF(narea==nn_narea_db) THEN 
    1081             ji=iloc_db; jj=jloc_db 
    1082             jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    1083             WRITE(narea+100,'(a)') ' After including FK diffusivity & non-local terms' 
    1084             WRITE(narea+100,'(a,*(g11.3))') ' zdiffut[imld-1..ibld+2] =', ( zdiffut(ji,jj,jk), jk=jl,jm ) 
    1085             WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    1086             WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    1087             WRITE(narea+100,*) 
    1088             FLUSH(narea+100) 
    1089          END IF 
    1090 #endif 
    1091862      ENDIF 
    1092863      ! 
     
    1122893         &                    ghamu, 'U', -1.0_wp,   & 
    1123894         &                    ghamv, 'V', -1.0_wp ) 
    1124 #ifdef key_osm_debug 
    1125       IF(narea==nn_narea_db) THEN 
    1126          ji=iloc_db; jj=jloc_db 
    1127          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    1128          WRITE(narea+100,'(a)') ' Final diffusivity & viscosity, & non-local terms' 
    1129          WRITE(narea+100,'(a,*(g11.3))') ' p_avt[imld-1..ibld+2] =', ( p_avt(ji,jj,jk), jk=jl,jm ) 
    1130          WRITE(narea+100,'(a,*(g11.3))') ' p_avm[imld-1..ibld+2] =', ( p_avm(ji,jj,jk), jk=jl,jm ) 
    1131          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    1132          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    1133          WRITE(narea+100,'(a,*(g11.3))') ' ghamu[imld-1..ibld+2] =', ( ghamu(ji,jj,jk), jk=jl,jm ) 
    1134          WRITE(narea+100,'(a,*(g11.3))') ' ghamv[imld-1..ibld+2] =', ( ghamv(ji,jj,jk), jk=jl,jm ) 
    1135          WRITE(narea+100,*) 
    1136          FLUSH(narea+100) 
    1137       END IF 
    1138 #endif 
    1139895      ! 
    1140896      IF ( ln_dia_osm ) THEN 
     
    15491305      zekman(:,:) = EXP( -1.0_wp * pp_ek * ABS( ff_t(A2D(0)) ) * phbl(:,:) / MAX( sustar(A2D(0)), 1.e-8 ) ) 
    15501306      ! 
    1551 #ifdef key_osm_debug 
    1552       IF(narea==nn_narea_db) THEN 
    1553          ji=iloc_db; jj=jloc_db 
    1554          WRITE(narea+100,'(a,g11.3)') & 
    1555             & 'zdf_osm_osbl_state start: zekman=', zekman(ji,jj) 
    1556          FLUSH(narea+100) 
    1557       END IF 
    1558 #endif 
    1559       ! 
    15601307      DO_2D( 0, 0, 0, 0 ) 
    15611308         IF ( l_conv(ji,jj) ) THEN 
     
    15761323                  &              pp_b_shr * MAX( -1.0_wp * ff_t(ji,jj) * sustke(ji,jj) * dstokes(ji,jj) *   & 
    15771324                  &                            av_dv_ml(ji,jj) / phbl(ji,jj), 0.0_wp ) ) 
    1578 #ifdef key_osm_debug 
    1579                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1580                   WRITE(narea+100,'(a,g11.3)')'zdf_osm_osbl_state 1st zshear: zshear=',pshear(ji,jj) 
    1581                   WRITE(narea+100,'(2(a,g11.3))')'zdf_osm_osbl_state 1st zshear: zri_b=',zri_b(ji,jj),' zri_p=',zri_p(ji,jj) 
    1582                   FLUSH(narea+100) 
    1583                END IF 
    1584 #endif 
    15851325               ! Stability dependence 
    15861326               pshear(ji,jj) = pshear(ji,jj) * EXP( -0.75_wp * MAX( 0.0_wp, ( zri_b(ji,jj) - pp_ri_c ) / pp_ri_c ) ) 
    1587 #ifdef key_osm_debug 
    1588                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1589                   WRITE(narea+100,'(a,g11.3)')'zdf_osm_osbl_state 1st zshear: zshear inc ri part=',pshear(ji,jj) 
    1590                   FLUSH(narea+100) 
    1591                END IF 
    1592 #endif 
    15931327               !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    15941328               ! Test ensures n_ddh=0 is not selected. Change to zri_p<27 when  ! 
     
    16411375               &             zr_stokes * ( pp_alpha_s * EXP( -1.5_wp * sla(ji,jj) ) * zrf_shear * sustar(ji,jj)**3 -   & 
    16421376               &                           zrf_langmuir * pp_alpha_lc * swstrl(ji,jj)**3 ) / phml(ji,jj) 
    1643 #ifdef key_osm_debug 
    1644             IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1645                WRITE(narea+100,'(a,g11.3)')'zdf_osm_osbl_state conv+shear0/lang: zwb_ent=',pwb_ent(ji,jj) 
    1646                FLUSH(narea+100) 
    1647             END IF 
    1648 #endif 
    16491377         ENDIF 
    16501378      END_2D 
     
    16551383               ! Unstable OSBL 
    16561384               zwb_shr = -1.0_wp * pp_a_wb_s * zri_b(ji,jj) * pshear(ji,jj) 
    1657 #ifdef key_osm_debug 
    1658                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1659                   WRITE(narea+100,'(a,g11.3)')'zdf_osm_osbl_state 1st zwb_shr: zwb_shr=',zwb_shr 
    1660                   FLUSH(narea+100) 
    1661                END IF 
    1662 #endif 
    16631385               IF ( n_ddh(ji,jj) == 0 ) THEN 
    16641386                  ! Developing shear layer, additional shear production possible. 
     
    16701392                  !              zwb_shr = zwb_shr - 0.25 * MAX ( pshear_u, 0._wp) * ( 1.0 - MIN( zri_p(ji,jj) / pp_ri_p_thresh, 1._wp )**2 ) 
    16711393                  !              zwb_shr = MAX( zwb_shr, -0.25 * pshear_u ) 
    1672 #ifdef key_osm_debug 
    1673                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1674                      WRITE(narea+100,'(3(a,g11.3))')'zdf_osm_osbl_state j_ddh(ji,jj) == 0:zwb_shr=',zwb_shr, & 
    1675                         & '  zshear=',pshear(ji,jj),'  zshear_u=', pshear_u 
    1676                      FLUSH(narea+100) 
    1677                   END IF 
    1678 #endif 
    16791394               ENDIF 
    16801395               pwb_ent(ji,jj) = pwb_ent(ji,jj) + zwb_shr 
     
    16881403            pwb_min(ji,jj) = pwb_ent(ji,jj) + pdh(ji,jj) / phbl(ji,jj) * 2.0_wp * swbav(ji,jj) 
    16891404         END IF  ! l_conv 
    1690 #ifdef key_osm_debug 
    1691          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1692             WRITE(narea+100,'(3(a,g11.3))')'end of zdf_osm_osbl_state:zwb_ent=',pwb_ent(ji,jj), & 
    1693                & '  zwb_min=',pwb_min(ji,jj), '  zwb0tot=', zwb0tot(ji,jj), '  swbav= ', swbav(ji,jj) 
    1694             FLUSH(narea+100) 
    1695          END IF 
    1696 #endif 
    16971405      END_2D 
    16981406      ! 
     
    18061514                           &                      ( zvel_max + MAX( av_db_bl(ji,jj), 1e-15_wp ) ) +   & 
    18071515                           &            zpsi / ( zvel_max + MAX( av_db_bl(ji,jj), 1e-15_wp ) ) 
    1808 #ifdef key_osm_debug 
    1809                         IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1810                            WRITE(narea+100,'(a,g11.3)')'Inside 1st major loop of zdf_osm_calculate_dhdt, OSBL is deepening, entrainment > restratification:  zdhdt=',pdhdt(ji,jj) 
    1811                            WRITE(narea+100,'(3(a,g11.3))') '  zpsi=',zpsi, '  zgamma_b_nd=', zgamma_b_nd, '  zdh=', pdh(ji,jj) 
    1812                            FLUSH(narea+100) 
    1813                         END IF 
    1814 #endif 
    18151516                        IF ( n_ddh(ji,jj) == 1 ) THEN 
    18161517                           IF ( ( swstrc(ji,jj) / svstr(ji,jj) )**3 <= 0.5_wp ) THEN 
     
    18281529                           zddhdt = -1.0_wp * pp_ddh_2 * ( 1.0_wp - pdh(ji,jj) / ( zari * phbl(ji,jj) ) ) * pwb_ent(ji,jj) /   & 
    18291530                              &     ( zvel_max + MAX( av_db_bl(ji,jj), 1e-15_wp ) ) 
    1830 #ifdef key_osm_debug 
    1831                            IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1832                               WRITE(narea+100,'(a,g11.3)')'Inside 1st major loop of zdf_osm_calculate_dhdt,j_ddh(ji,jj) == 1:  zari=',zari 
    1833                               FLUSH(narea+100) 
    1834                            END IF 
    1835 #endif 
    18361531                        ELSE IF ( n_ddh(ji,jj) == 0 ) THEN   ! Growing shear layer 
    18371532                           zddhdt = -1.0_wp * pp_ddh * ( 1.0_wp - 1.6_wp * pdh(ji,jj) / phbl(ji,jj) ) * pwb_ent(ji,jj) /   & 
     
    19171612            ! 
    19181613         ENDIF ! l_shear 
    1919 #ifdef key_osm_debug 
    1920          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1921             WRITE(narea+100,'(4(a,g11.3))')'end of 1st major loop of zdf_osm_calculate_dhdt:  zdhdt=',pdhdt(ji,jj), & 
    1922                &  '  zpert=', zpert, '  zddhdt=', zddhdt, '  zvel_max=', zvel_max 
    1923             IF ( ln_osm_mle ) THEN 
    1924                WRITE(narea+100,'(3(a,g11.3),/)') 'zvel_mle=',pvel_mle(ji,jj), ' zwb_fk_b=', pwb_fk_b(ji,jj), & 
    1925                   & '  zwb_ent + 2*zwb_fk_b =', pwb_ent(ji,jj) + 2.0 * pwb_fk_b(ji,jj) 
    1926                FLUSH(narea+100) 
    1927             END IF 
    1928          END IF 
    1929 #endif 
    19301614         ! 
    19311615      END_2D 
     
    19631647      ! 
    19641648      DO_2D( 0, 0, 0, 0 ) 
    1965 #ifdef key_osm_debug 
    1966          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1967             WRITE(narea+100,'(2(a,i7))')'start of zdf_osm_timestep_hbl: old ibld=',nmld(ji,jj),' trial ibld=', nbld(ji,jj) 
    1968             FLUSH(narea+100) 
    1969          END IF 
    1970 #endif 
    19711649         IF ( nbld(ji,jj) - nmld(ji,jj) > 1 ) THEN 
    19721650            ! 
     
    19871665                     &       ( svstr(ji,jj)**3 + 0.5_wp * swstrc(ji,jj)**3 )**pthird 
    19881666               ENDIF 
    1989 #ifdef key_osm_debug 
    1990                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    1991                   WRITE(narea+100,'(a,g11.3)')'In zdf_osm_timestep_hbl, ibld - imld > 1, lconv=T: zvel_max=',zvel_max 
    1992                   FLUSH(narea+100) 
    1993                END IF 
    1994 #endif 
    19951667               DO jk = nmld(ji,jj), nbld(ji,jj) 
    19961668                  zdb = MAX( grav * ( zthermal * ( av_t_bl(ji,jj) - ts(ji,jj,jm,jp_tem,Kmm) ) -   & 
     
    20101682                  ENDIF 
    20111683                  IF ( zhbl_s >= gdepw(ji,jj,jm+1,Kmm) ) jm = jm + 1 
    2012 #ifdef key_osm_debug 
    2013                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2014                      WRITE(narea+100,'(2(a,i7))')' jk=',jk,' jm=', jm 
    2015                      WRITE(narea+100,'(2(a,g11.3),a,l7)')'zdb=',zdb,' zhbl_s=', zhbl_s,' lpyc=',l_pyc(ji,jj) 
    2016                      FLUSH(narea+100) 
    2017                   END IF 
    2018 #endif 
    20191684               END DO 
    20201685               hbl(ji,jj)  = zhbl_s 
    20211686               nbld(ji,jj) = jm 
    20221687            ELSE   ! Stable 
    2023 #ifdef key_osm_debug 
    2024                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2025                   WRITE(narea+100,'(a)')'In zdf_osm_timestep_hbl, ibld - imld > 1, lconv=F' 
    2026                   FLUSH(narea+100) 
    2027                END IF 
    2028 #endif 
    20291688               DO jk = nmld(ji,jj), nbld(ji,jj) 
    20301689                  zdb = MAX(  grav * ( zthermal * ( av_t_bl(ji,jj) - ts(ji,jj,jm,jp_tem,Kmm) ) -               & 
     
    20481707                  ENDIF 
    20491708                  IF ( zhbl_s >= gdepw(ji,jj,jm,Kmm) ) jm = jm + 1 
    2050 #ifdef key_osm_debug 
    2051                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2052                      WRITE(narea+100,'(2(a,i7))')' jk=',jk,' jm=', jm 
    2053                      WRITE(narea+100,'(4(a,g11.3),a,l7)')'zdb=',zdb,' shol',shol(ji,jj),' zdhdt',pdhdt(ji,jj),' zhbl_s=', zhbl_s,' lpyc=',l_pyc(ji,jj) 
    2054                      FLUSH(narea+100) 
    2055                   END IF 
    2056 #endif 
    20571709               END DO 
    20581710            ENDIF   ! IF ( l_conv ) 
     
    20641716         ENDIF 
    20651717         phbl(ji,jj) = gdepw(ji,jj,nbld(ji,jj),Kmm) 
    2066 #ifdef key_osm_debug 
    2067          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2068             WRITE(narea+100,'(2(a,g11.3),a,i7,/)')'end of zdf_osm_timestep_hbl: hbl=', hbl(ji,jj),' zhbl=', phbl(ji,jj),' ibld=', nbld(ji,jj) 
    2069             FLUSH(narea+100) 
    2070          END IF 
    2071 #endif 
    20721718      END_2D 
    20731719      ! 
     
    22381884         phml(ji,jj) = gdepw(ji,jj,nmld(ji,jj),Kmm) 
    22391885         pdh(ji,jj)  = phbl(ji,jj) - phml(ji,jj) 
    2240 #ifdef key_osm_debug 
    2241          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2242             WRITE(narea+100,'(4(a,g11.3),2(a,i7),/,5(a,g11.3),/)') 'end of zdf_osm_pycnocline_thickness:hml=',hml(ji,jj), & 
    2243                & '  zhml=',phml(ji,jj),' zdh=', pdh(ji,jj), '  dh=', dh(ji,jj), ' imld=', nmld(ji,jj), ' inhml=', inhml, & 
    2244                & 'zvel_max=', zvel_max, ' ztau=', ztau,' zdh_ref=', zdh_ref, ' zar=', zari, ' zddhdt=', zddhdt 
    2245             FLUSH(narea+100) 
    2246          END IF 
    2247 #endif 
    22481886         ! 
    22491887      END_2D 
     
    23251963                     END IF 
    23261964                  END DO 
    2327 #ifdef key_osm_debug 
    2328                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2329                      WRITE(narea+100,'(a,/,3(a,g11.3),/,2(a,g11.3),/)')'end of zdf_osm_pycnocline_buoyancy_profiles:lconv=lpyc=T',& 
    2330                         & 'zzeta_m=', zzeta_m, ' zalpha=', palpha(ji,jj), ' ztmp=', ztmp,& 
    2331                         & ' zbgrad=', zbgrad, ' zgamma_b_nd=', zgamma_b_nd 
    2332                      FLUSH(narea+100) 
    2333                   END IF 
    2334 #endif 
    23351965               END IF   ! If no pycnocline pycnocline gradients set to zero 
    23361966               ! 
     
    23541984                        END DO 
    23551985                     END IF   ! IF (shol >=0.5) 
    2356 #ifdef key_osm_debug 
    2357                      IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2358                         WRITE(narea+100,'(1(a,g11.3))')'end of zdf_osm_pycnocline_buoyancy_profiles:lconv=F zbgrad=', zbgrad 
    2359                         !                           WRITE(narea+100,'(1(a,g11.3))')'end of zdf_osm_pycnocline_scalar_profiles:lconv=F ztgrad=',& 
    2360                         !                                & ztgrad, ' zsgrad=', zsgrad, ' zbgrad=', zbgrad 
    2361                         FLUSH(narea+100) 
    2362                      END IF 
    2363 #endif 
    23641986                  END IF      ! IF (av_db_bl> 0.) 
    23651987               END IF         ! IF (pdhdt >= 0) pdhdt < 0 not considered since pycnocline profile is zero and profile arrays are intialized to zero 
     
    24362058            zdifml_sc(ji,jj) = pp_dif_ml * phml(ji,jj) * zvel_sc_ml 
    24372059            zvisml_sc(ji,jj) = pp_vis_ml * zdifml_sc(ji,jj) 
    2438 #ifdef key_osm_debug 
    2439             IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2440                WRITE(narea+100,'(2(a,g11.3))')'Start of 1st major loop of osm_diffusivity_viscositys, ldconv=T: zdifml_sc=',zdifml_sc(ji,jj),' zvisml_sc=',zvisml_sc(ji,jj) 
    2441                WRITE(narea+100,'(3(a,g11.3))')'zvel_sc_pyc=',zvel_sc_pyc,' zvel_sc_ml=',zvel_sc_ml,' zstab_fac=',zstab_fac 
    2442                FLUSH(narea+100) 
    2443             END IF 
    2444 #endif 
    24452060            ! 
    24462061            IF ( l_pyc(ji,jj) ) THEN 
     
    24512066                  &                  pdh(ji,jj) 
    24522067               zvispyc_n_sc(ji,jj) = pp_vis_pyc * zvel_sc_ml * pdh(ji,jj) + zvispyc_n_sc(ji,jj) * zstab_fac 
    2453 #ifdef key_osm_debug 
    2454                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2455                   WRITE(narea+100,'(2(a,g11.3))')' lpyc=ldconv=T, variables w/o shear contributions: zdifpyc_n_sc',zdifpyc_n_sc(ji,jj) ,' zvispyc_n_sc=',zvispyc_n_sc(ji,jj) 
    2456                   FLUSH(narea+100) 
    2457                END IF 
    2458 #endif 
    24592068               ! 
    24602069               IF ( l_shear(ji,jj) .AND. n_ddh(ji,jj) /= 2 ) THEN 
     
    24632072                  zvispyc_n_sc(ji,jj) = zvispyc_n_sc(ji,jj) + ztmp 
    24642073               ENDIF 
    2465 #ifdef key_osm_debug 
    2466                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2467                   WRITE(narea+100,'(2(a,g11.3))')' lpyc=ldconv=T, variables w shear contributions: zdifpyc_n_sc',zdifpyc_n_sc(ji,jj) ,' zvispyc_n_sc=',zvispyc_n_sc(ji,jj) 
    2468                   FLUSH(narea+100) 
    2469                END IF 
    2470 #endif 
    24712074               ! 
    24722075               zdifpyc_s_sc(ji,jj) = pwb_ent(ji,jj) + 0.0025_wp * zvel_sc_pyc * ( phbl(ji,jj) / pdh(ji,jj) - 1.0_wp ) *   & 
     
    24752078                  &                                               ( phbl(ji,jj) / pdh(ji,jj) - 1.0_wp ) *   & 
    24762079                  &                                               ( av_b_ml(ji,jj) - av_b_bl(ji,jj) ) ) 
    2477 #ifdef key_osm_debug 
    2478                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2479                   WRITE(narea+100,'(2(a,g11.3))')' 1st shot at: zdifpyc_s_sc',zdifpyc_s_sc(ji,jj) ,' zvispyc_s_sc=',zvispyc_s_sc(ji,jj) 
    2480                   FLUSH(narea+100) 
    2481                END IF 
    2482 #endif 
    24832080               zdifpyc_s_sc(ji,jj) = 0.09_wp * zdifpyc_s_sc(ji,jj) * zstab_fac 
    24842081               zvispyc_s_sc(ji,jj) = zvispyc_s_sc(ji,jj) * zstab_fac 
    2485 #ifdef key_osm_debug 
    2486                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2487                   WRITE(narea+100,'(2(a,g11.3))')' 2nd shot at: zdifpyc_s_sc',zdifpyc_s_sc(ji,jj) ,' zvispyc_s_sc=',zvispyc_s_sc(ji,jj) 
    2488                   FLUSH(narea+100) 
    2489                END IF 
    2490 #endif 
    24912082               ! 
    24922083               zdifpyc_s_sc(ji,jj) = MAX( zdifpyc_s_sc(ji,jj), -0.5_wp * zdifpyc_n_sc(ji,jj) ) 
     
    25152106                  zc_coup_vis(ji,jj) = -0.5_wp * ( 0.5_wp * zvisml_sc(ji,jj) / phml(ji,jj) - zb_coup(ji,jj) ) /   & 
    25162107                     &                 ( phml(ji,jj) + zz_b )   ! ag 19/03 
    2517 #ifdef key_osm_debug 
    2518                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2519                      WRITE(narea+100,'(4(a,g11.3))')' lcoup = T; 1st pz_b= ', zz_b, ' pb_coup ', zb_coup(ji,jj),   & 
    2520                         &                           ' pc_coup_vis ', zc_coup_vis(ji,jj), ' rCdU_bot ',rCdU_bot(ji,jj) 
    2521                      WRITE(narea+100,'(2(a,g11.3))')' zmsku ', zmsku, ' zmskv ', zmskv 
    2522                      FLUSH(narea+100) 
    2523                   END IF 
    2524 #endif 
    25252108                  zz_b = -1.0_wp * phml(ji,jj) + gdepw(ji,jj,mbkt(ji,jj)+1,Kmm)   ! ag 19/03 
    25262109                  zbeta_v_sc(ji,jj) = 1.0_wp - 2.0_wp * ( zb_coup(ji,jj) * zz_b + zc_coup_vis(ji,jj) * zz_b**2 ) /   & 
     
    25312114                     &                 1.5_wp * ( zdifml_sc(ji,jj) / phml(ji,jj) ) * zbeta_d_sc(ji,jj) *   & 
    25322115                     &                          SQRT( 1.0_wp - zbeta_d_sc(ji,jj) ) - zb_coup(ji,jj) ) / zz_b   ! ag 19/03 
    2533 #ifdef key_osm_debug 
    2534                   IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2535                      WRITE(narea+100,'(2(a,g11.3))')' 2nd pz_b= ', zz_b, ' pc_coup_dif', zc_coup_dif(ji,jj) 
    2536                      FLUSH(narea+100) 
    2537                   END IF 
    2538 #endif 
    25392116               ELSE   ! ag 19/03 
    25402117                  zbeta_d_sc(ji,jj) = 1.0_wp - ( ( zdifpyc_n_sc(ji,jj) + 1.4_wp * zdifpyc_s_sc(ji,jj) ) /   & 
     
    25442121               ENDIF   ! ag 19/03 
    25452122            ENDIF      ! ag 19/03 
    2546 #ifdef key_osm_debug 
    2547             IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2548                WRITE(narea+100,'(2(a,g11.3))')'ldconv=T: zbeta_d_sc',zbeta_d_sc(ji,jj) ,' zbeta_v_sc=',zbeta_v_sc(ji,jj) 
    2549                WRITE(narea+100,'(2(a,g11.3))')' Final zdifpyc_n_sc',zdifpyc_n_sc(ji,jj) ,' zvispyc_n_sc=',zvispyc_n_sc(ji,jj) 
    2550                WRITE(narea+100,'(2(a,g11.3))')' Final zdifpyc_s_sc',zdifpyc_s_sc(ji,jj) ,' zvispyc_s_sc=',zvispyc_s_sc(ji,jj) 
    2551                FLUSH(narea+100) 
    2552             END IF 
    2553 #endif 
    25542123         ELSE 
    25552124            zdifml_sc(ji,jj) = svstr(ji,jj) * phbl(ji,jj) * MAX( EXP ( -1.0_wp * ( shol(ji,jj) / 0.6_wp )**2 ), 0.2_wp) 
    25562125            zvisml_sc(ji,jj) = zdifml_sc(ji,jj) 
    2557 #ifdef key_osm_debug 
    2558             IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2559                WRITE(narea+100,'(a,g11.3)')'End of 1st major loop of osm_diffusivity_viscositys, ldconv=F: zdifml_sc=',zdifml_sc(ji,jj),' zvisml_sc=',zvisml_sc(ji,jj) 
    2560                FLUSH(narea+100) 
    2561             END IF 
    2562 #endif 
    25632126         END IF 
    25642127      END_2D 
     
    26672230      ! 
    26682231      INTEGER                     ::   ji, jj, jk, jkm_bld, jkf_mld, jkm_mld   ! Loop indices 
    2669 #ifdef key_osm_debug 
    2670       INTEGER                     ::   jl, jm 
    2671 #endif 
    26722232      INTEGER                     ::   istat                                   ! Memory allocation status 
    26732233      REAL(wp)                    ::   zznd_d, zznd_ml, zznd_pyc, znd          ! Temporary non-dimensional depths 
     
    27022262      CALL zdf_osm_pycnocline_buoyancy_profiles( Kmm, kp_ext, zdbdz_pyc, zalpha_pyc, pdh,    & 
    27032263         &                                       phbl, pdbdz_bl_ext, phml, pdhdt ) 
    2704 #ifdef key_osm_debug 
    2705       IF(narea==nn_narea_db) THEN 
    2706          ji=iloc_db; jj=jloc_db 
    2707          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    2708          WRITE(narea+100,'(a,l7,/,3(a,g11.3),/)') & 
    2709             & 'After pycnocline profiles BL  lpyc=', l_pyc(ji,jj),& 
    2710             & 'sub-BL strat: zdtdz_bl_ext=', pdtdz_bl_ext(ji,jj),' zdsdz_bl_ext=', pdsdz_bl_ext(ji,jj),' zdbdz_bl_ext=', pdbdz_bl_ext(ji,jj), & 
    2711             & 'Pycnocline: zalpha_pyc=', zalpha_pyc(ji,jj) 
    2712          !       WRITE(narea+100,'(a,*(g11.3))') ' zdtdz_pyc[imld-1..ibld+2] =', ( zdtdz_pyc(ji,jj,jk), jk=jl,jm ) 
    2713          !       WRITE(narea+100,'(a,*(g11.3))') ' zdsdz_pyc[imld-1..ibld+2] =', ( zdsdz_pyc(ji,jj,jk), jk=jl,jm ) 
    2714          WRITE(narea+100,'(a,*(g11.3))') ' zdbdz_pyc[imld-1..ibld+2] =', ( zdbdz_pyc(ji,jj,jk), jk=jl,jm ) 
    2715          !       WRITE(narea+100,'(a,*(g11.3))') ' zdudz_pyc[imld-1..ibld+2] =', ( zdudz_pyc(ji,jj,jk), jk=jl,jm ) 
    2716          !       WRITE(narea+100,'(a,*(g11.3))') ' zdvdz_pyc[imld-1..ibld+2] =', ( zdvdz_pyc(ji,jj,jk), jk=jl,jm ) 
    2717          WRITE(narea+100,*) 
    2718          FLUSH(narea+100) 
    2719       END IF 
    2720 #endif 
    27212264      ! 
    27222265      ! Auxiliary indices 
     
    27982341         END IF 
    27992342      END_3D 
    2800 #ifdef key_osm_debug 
    2801       IF(narea==nn_narea_db) THEN 
    2802          ji=iloc_db; jj=jloc_db 
    2803          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    2804          WRITE(narea+100,'(a,g11.3)')'Stokes contrib to ghamt/s:  zsc_wth_1=',zsc_wth_1(ji,jj), '  zsc_ws_1=',zsc_ws_1(ji,jj) 
    2805          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    2806          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    2807          IF( l_conv(ji,jj) ) THEN 
    2808             WRITE(narea+100,'(3(a,g11.3))')'Stokes contrib to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj), & 
    2809                &' zsc_uw_2=',zsc_uw_2(ji,jj) 
    2810          ELSE 
    2811             WRITE(narea+100,'(2(a,g11.3))')'Stokes contrib to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj) 
    2812          END IF 
    2813          WRITE(narea+100,'(a,*(g11.3))') ' ghamu[imld-1..ibld+2] =', ( ghamu(ji,jj,jk), jk=jl,jm ) 
    2814          WRITE(narea+100,'(a,*(g11.3))') ' ghamv[imld-1..ibld+2] =', ( ghamv(ji,jj,jk), jk=jl,jm ) 
    2815          WRITE(narea+100,*) 
    2816          FLUSH(narea+100) 
    2817       END IF 
    2818 #endif 
    28192343      ! 
    28202344      ! Buoyancy term in flux-gradient relationship [note : includes ROI ratio 
     
    28682392                  &                     zdelta_pyc**2 / pdh(ji,jj) 
    28692393               zzeta_pyc(ji,jj)    = 0.15_wp - 0.175_wp / ( 1.0_wp + EXP( -3.5_wp * LOG10( -1.0_wp * shol(ji,jj) ) ) ) 
    2870 #ifdef key_osm_debug 
    2871                IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2872                   WRITE(narea+100,'(2(a,g11.3))')'lpyc= lconv=T,dh<0.2*hbl: zbuoy_pyc_sc=',zbuoy_pyc_sc,' zdelta_pyc=',zdelta_pyc 
    2873                   WRITE(narea+100,'(3(a,g11.3))')'zwt_pyc_sc_1=',zwt_pyc_sc_1(ji,jj),' zws_pyc_sc_1=',zws_pyc_sc_1(ji,jj),   & 
    2874                      &                           ' zzeta_pyc=',zzeta_pyc(ji,jj) 
    2875                   FLUSH(narea+100) 
    2876                END IF 
    2877 #endif 
    28782394            END IF 
    28792395         END IF 
     
    28882404               &              0.045_wp * ( ( zws_ent(ji,jj)  * zdbdz_pyc(ji,jj,jk) ) * ztau_sc_u(ji,jj)**2 ) *                 & 
    28892405               &                         MAX( ( 1.75_wp * zznd_pyc -0.15_wp * zznd_pyc**2 - 0.2_wp * zznd_pyc**3 ), 0.0_wp ) 
    2890 #ifdef key_osm_debug 
    2891          END IF 
    2892       END_3D 
    2893       jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    2894       IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    2895          WRITE(narea+100,'(3(a,g11.3))')'lpyc= lconv=T: ztau_sc_u=',ztau_sc_u(ji,jj),' zwth_ent=',zwth_ent(ji,jj),   & 
    2896             &                           ' zws_ent=',zws_ent(ji,jj) 
    2897          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    2898          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    2899          WRITE(narea+100,*) 
    2900          FLUSH(narea+100) 
    2901       END IF 
    2902       DO_3D( 0, 0, 0, 0, 2, jkm_bld ) 
    2903          IF ( l_conv(ji,jj) .AND. l_pyc(ji,jj) .AND. ( jk <= nbld(ji,jj) ) ) THEN 
    2904             zznd_pyc = -1.0_wp * ( gdepw(ji,jj,jk,Kmm) - phbl(ji,jj) ) / pdh(ji,jj) 
    2905 #endif 
    29062406            IF ( dh(ji,jj) < 0.2_wp * hbl(ji,jj) .AND. nbld(ji,jj) - nmld(ji,jj) > 3 ) THEN 
    29072407               ghamt(ji,jj,jk) = ghamt(ji,jj,jk) + 0.05_wp  * zwt_pyc_sc_1(ji,jj) *                              & 
     
    29772477      END_3D 
    29782478      ! 
    2979 #ifdef key_osm_debug 
    2980       IF(narea==nn_narea_db) THEN 
    2981          ji=iloc_db; jj=jloc_db 
    2982          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    2983          WRITE(narea+100,'(2(a,g11.3))')'Stokes + buoy + pyc contribs to ghamt/s:  zsc_wth_1=',zsc_wth_1(ji,jj), '  zsc_ws_1=',zsc_ws_1(ji,jj) 
    2984          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    2985          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    2986          IF( l_conv(ji,jj) ) THEN 
    2987             WRITE(narea+100,'(3(a,g11.3))')'Stokes + buoy + pyc contribs to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj), & 
    2988                &' zsc_uw_2=',zsc_uw_2(ji,jj) 
    2989          ELSE 
    2990             WRITE(narea+100,'(2(a,g11.3))')'Stokes + buoy + pyc contribs to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj) 
    2991          END IF 
    2992          WRITE(narea+100,'(a,*(g11.3))') ' ghamu[imld-1..ibld+2] =', ( ghamu(ji,jj,jk), jk=jl,jm ) 
    2993          WRITE(narea+100,'(a,*(g11.3))') ' ghamv[imld-1..ibld+2] =', ( ghamv(ji,jj,jk), jk=jl,jm ) 
    2994          WRITE(narea+100,*) 
    2995          FLUSH(narea+100) 
    2996       END IF 
    2997 #endif 
    2998  
    29992479      IF ( ln_dia_osm ) THEN 
    30002480         IF ( iom_use("ghamu_0") )    CALL iom_put( "ghamu_0",    wmask*ghamu           ) 
     
    30872567         END IF 
    30882568      END_3D 
    3089 #ifdef key_osm_debug 
    3090       IF(narea==nn_narea_db) THEN 
    3091          ji=iloc_db; jj=jloc_db 
    3092          jl = nmld(ji,jj) - 1; jm = MIN( nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    3093          WRITE(narea+100,'(2(a,g11.3))')'Stokes + buoy + pyc + transport contribs to ghamt/s:  zsc_wth_1=',zsc_wth_1(ji,jj), '  zsc_ws_1=',zsc_ws_1(ji,jj) 
    3094          IF (l_pyc(ji,jj)) WRITE(narea+100,'(2(a,g11.3))') 'zsc_wth_pyc=', zsc_wth_pyc(ji,jj), '  zsc_wth_pyc=',zsc_wth_pyc(ji,jj) 
    3095          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    3096          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    3097          IF( l_conv(ji,jj) ) THEN 
    3098             WRITE(narea+100,'(2(a,g11.3))')'Unstable; transport contrib to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj) 
    3099          ELSE 
    3100             WRITE(narea+100,'(3(a,g11.3))')'Stable; transport contrib to ghamu/v:  zsc_uw_1=',zsc_uw_1(ji,jj), '  zsc_vw_1=',zsc_vw_1(ji,jj), & 
    3101                &' zsc_uw_2=',zsc_uw_2(ji,jj) 
    3102          END IF 
    3103          WRITE(narea+100,'(a,*(g11.3))') ' ghamu[imld-1..ibld+2] =', ( ghamu(ji,jj,jk), jk=jl,jm ) 
    3104          WRITE(narea+100,*) 
    3105          FLUSH(narea+100) 
    3106       END IF 
    3107 #endif 
    31082569      ! 
    31092570      IF ( ln_dia_osm ) THEN 
     
    32512712         ghamv(ji,jj,nbld(ji,jj)) = 0.0_wp 
    32522713      END_2D 
    3253 #ifdef key_osm_debug 
    3254       IF(narea==nn_narea_db) THEN 
    3255          ji=iloc_db; jj=jloc_db 
    3256          jl = nmld(ji,jj) - 1; jm = MIN(nbld(ji,jj) + 2, mbkt(ji,jj) ) 
    3257          WRITE(narea+100,'(a)')'Tweak gham[uv] to go to zero near surface, add pycnocline viscosity/diffusivity  & set=0 at ibld' 
    3258          WRITE(narea+100,'(a,*(g11.3))') ' ghamt[imld-1..ibld+2] =', ( ghamt(ji,jj,jk), jk=jl,jm ) 
    3259          WRITE(narea+100,'(a,*(g11.3))') ' ghams[imld-1..ibld+2] =', ( ghams(ji,jj,jk), jk=jl,jm ) 
    3260          WRITE(narea+100,'(a,*(g11.3))') ' ghamu[imld-1..ibld+2] =', ( ghamu(ji,jj,jk), jk=jl,jm ) 
    3261          WRITE(narea+100,'(a,*(g11.3))') ' ghamv[imld-1..ibld+2] =', ( ghamv(ji,jj,jk), jk=jl,jm ) 
    3262          WRITE(narea+100,*) 
    3263          FLUSH(narea+100) 
    3264       END IF 
    3265 #endif 
    32662714      ! 
    32672715      IF ( ln_dia_osm ) THEN 
     
    34482896            END IF 
    34492897         END IF 
    3450 #ifdef key_osm_debug 
    3451          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    3452             WRITE(narea+100,'(4(a,g11.3))')'start of zdf_osm_osbl_state_fk: zwb_fk=',pwb_fk(ji,jj), & 
    3453                & '  znd_param=',znd_param(ji,jj), ' zpe_mle_ref=', zpe_mle_ref,  ' zpe_mle_layer=', zpe_mle_layer 
    3454             FLUSH(narea+100) 
    3455          END IF 
    3456 #endif 
    34572898         ! 
    34582899      END_2D 
     
    34992940            l_mle(ji,jj)  = .FALSE. 
    35002941         END IF   ! l_conv 
    3501 #ifdef key_osm_debug 
    3502          IF(narea==nn_narea_db.and.ji==iloc_db.and.jj==jloc_db)THEN 
    3503             WRITE(narea+100,'(3(a,g11.3),/,4(a,l2))')'end of zdf_osm_osbl_state_fk:zwb_ent=',pwb_ent(ji,jj), & 
    3504                & '  zhmle=',phmle(ji,jj), ' zhbl=', phbl(ji,jj), & 
    3505                & ' lpyc= ', l_pyc(ji,jj), ' lflux= ', l_flux(ji,jj),  ' lmle= ', l_mle(ji,jj), ' lconv= ', l_conv(ji,jj) 
    3506             FLUSH(narea+100) 
    3507          END IF 
    3508 #endif 
    35092942         ! 
    35102943      END_2D 
     
    36223055         &                 rn_difri,         ln_convmix,     rn_difconv,          nn_osm_wave,           nn_osm_SD_reduce,   & 
    36233056         &                 ln_osm_mle,       rn_osm_hblfrac, rn_osm_bl_thresh,    ln_zdfosm_ice_shelter 
    3624 #ifdef key_osm_debug 
    3625       NAMELIST/namzdf_osm/ nn_idb, nn_jdb, nn_kdb, nn_narea_db 
    3626 #endif 
    36273057      ! Namelist for Fox-Kemper parametrization 
    36283058      NAMELIST/namosm_mle/ nn_osm_mle,       rn_osm_mle_ce,     rn_osm_mle_lf,  rn_osm_mle_time,  rn_osm_mle_lat,   & 
     
    36783108         WRITE(numout,*) '     Use large mixing below BL when unstable             ln_convmix            = ', ln_convmix 
    36793109         WRITE(numout,*) '     Diffusivity when unstable below BL (m2/s)           rn_difconv            = ', rn_difconv 
    3680 #ifdef key_osm_debug 
    3681          WRITE(numout,*) 'nn_idb', nn_idb, 'nn_jdb', nn_jdb, 'nn_kdb', nn_kdb, 'nn_narea_db', nn_narea_db 
    3682          iloc_db = mi0(nn_idb) 
    3683          jloc_db = mj0(nn_jdb) 
    3684          WRITE(numout,*) 'iloc_db ', iloc_db , 'jloc_db', jloc_db 
    3685 #endif 
    36863110      ENDIF 
    36873111      ! 
Note: See TracChangeset for help on using the changeset viewer.