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 11844 for NEMO/branches – NEMO

Changeset 11844 for NEMO/branches


Ignore:
Timestamp:
2019-11-01T21:54:15+01:00 (4 years ago)
Author:
mathiot
Message:

rm useless lbclnk + fix reproducibility WED025 + add isf debug option

Location:
NEMO/branches/2019/ENHANCE-02_ISF_nemo
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/cfgs/SHARED/namelist_ref

    r11835 r11844  
    455455         !                       ! ad15 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
    456456         !                       ! hj99 = velocity and stability dependent Gamma    (Holland et al. 1999) 
    457          rn_gammat0  = 1.e-4     ! gammat coefficient used in blk formula 
    458          rn_gammas0  = 1.e-4     ! gammas coefficient used in blk formula 
     457         rn_gammat0  = 1.4e-2    ! gammat coefficient used in blk formula 
     458         rn_gammas0  = 4.e-4    ! gammas coefficient used in blk formula 
    459459         ! 
    460460         rn_htbl     =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
     
    465465         !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    466466         !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    467          sn_isfcav_fwf = 'isfmlt_cav',      -12       , 'fwflisf' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     467         sn_isfcav_fwf = 'isfmlt_cav',      -12.      , 'fwflisf' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    468468      ! 
    469469      ! ---------------- cavities parametrised ------------------------------- 
     
    482482         sn_isfpar_zmin = 'isfmlt_par',       0        ,'sozisfmin',  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    483483         !* 'spe' and 'oasis' case 
    484          sn_isfpar_fwf = 'isfmlt_par' ,      -12       ,'fwfisf'   ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     484         sn_isfpar_fwf = 'isfmlt_par' ,      -12.      ,'sofwfisf' ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
    485485         !* 'bg03' case 
    486          sn_isfpar_Leff = 'isfmlt_par',       0        ,'Leff'     ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     486         sn_isfpar_Leff = 'isfmlt_par',       0.       ,'Leff'     ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
    487487      ! 
    488488      ! ---------------- ice sheet coupling ------------------------------- 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/cfgs/WED025/EXPREF/file_def_nemo-ice.xml

    r11487 r11844  
    1717       <!-- ice mask --> 
    1818       <field field_ref="icemask"          name="simsk"   /> 
    19        <field field_ref="icemask05"        name="simsk05" /> 
    2019       <field field_ref="icemask15"        name="simsk15" /> 
    2120        
     
    2827       <field field_ref="iceapnd"          name="siapnd" /> 
    2928       <field field_ref="icevpnd"          name="sivpnd" /> 
    30        <field field_ref="sst_m"            name="sst_m"  /> 
    31        <field field_ref="sss_m"            name="sss_m"  /> 
    3229        
    3330       <!-- heat --> 
     
    7976       <field field_ref="vfxsnw"           name="vfxsnw" /> 
    8077 
    81        <!-- categories --> 
    82        <field field_ref="icemask_cat"      name="simskcat"/> 
    83        <field field_ref="snwthic_cat"      name="snthicat"/> 
    84        <field field_ref="iceconc_cat"      name="siconcat"/> 
    85        <field field_ref="icethic_cat"      name="sithicat"/> 
    86        <field field_ref="icesalt_cat"      name="sisalcat"/> 
    87        <field field_ref="icetemp_cat"      name="sitemcat"/> 
    88        <field field_ref="snwtemp_cat"      name="sntemcat"/> 
    89        <field field_ref="icettop_cat"      name="sitopcat"/> 
    90  
    9178     </file> 
    9279      
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/cfgs/WED025/EXPREF/file_def_nemo-oce.xml

    r11495 r11844  
    99    --> 
    1010    
    11     <file_definition type="one_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1mo" min_digits="4"> 
     11    <file_definition type="one_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="5d" min_digits="4"> 
    1212     
    1313      <file_group id="5d" output_freq="5d"  output_level="10" enabled=".TRUE.">  <!-- 5d files -->    
     
    2020          <field field_ref="sss"          name="sos"   /> 
    2121          <field field_ref="ssh"          name="zos"   /> 
    22           <field field_ref="sst"          name="tosstd"       long_name="sea surface temperature standard deviation"         operation="instant" freq_op="5d" > sqrt( @sst2 - @sst * @sst ) </field> 
    23           <field field_ref="ssh"          name="zosstd"       long_name="sea surface height above geoid standard deviation"  operation="instant" freq_op="5d" > sqrt( @ssh2 - @ssh * @ssh ) </field> 
    24           <field field_ref="sst"          name="sstdcy"       long_name="amplitude of sst diurnal cycle"                     operation="average" freq_op="1d" > @sstmax - @sstmin </field> 
    2522 
    26           <field field_ref="mldkz5"   /> 
    2723          <field field_ref="mldr10_1" /> 
    28           <field field_ref="mldr10_1"     name="mldr10_1dcy"  long_name="amplitude of mldr10_1 diurnal cycle"                operation="average" freq_op="1d" > @mldr10_1max - @mldr10_1min </field> 
    2924 
    3025          <field field_ref="sbt"                          /> 
     
    4439          <field field_ref="isfgammat"    name="sogammat_cav"  /> 
    4540          <field field_ref="isfgammas"    name="sogammas_cav"  /> 
     41          <field field_ref="isfustar"     name="ustar_cav"  /> 
    4642 
    4743          <!-- ice shelf tbl properties  --> 
     
    5349 
    5450          <!-- ice shelf fluxes  --> 
    55           <field field_ref="fwfisf_cav"    name="sowflisf_cav" /> 
    56           <field field_ref="qoceisf_cav"   name="qoceisf_cav"  /> 
    57           <field field_ref="qlatisf_cav"   name="qlatisf_cav"  /> 
    58           <field field_ref="qhcisf_cav"    name="qhcisf_cav"   /> 
     51          <field field_ref="fwfisf_cav"      name="sowflisf_cav" /> 
     52          <field field_ref="qoceisf_cav"     name="qoceisf_cav"  /> 
     53          <field field_ref="qlatisf_cav"     name="qlatisf_cav"  /> 
     54          <field field_ref="qhcisf_cav"      name="qhcisf_cav"   /> 
     55          <field field_ref="qconisf"         name="qhcond_cav"   /> 
     56          <field field_ref="fwfisf3d_cav"    name="sowflisf3d_cav" /> 
    5957           
    60           <field field_ref="fwfisf_par"    name="sowflisf_par" /> 
    61           <field field_ref="qoceisf_par"   name="qoceisf_par"  /> 
    62           <field field_ref="qlatisf_par"   name="qlatisf_par"  /> 
    63           <field field_ref="qhcisf_par"    name="qhcisf_par"   /> 
     58          <field field_ref="fwfisf_par"      name="sowflisf_par" /> 
     59          <field field_ref="qoceisf_par"     name="qoceisf_par"  /> 
     60          <field field_ref="qlatisf_par"     name="qlatisf_par"  /> 
     61          <field field_ref="qhcisf_par"      name="qhcisf_par"   /> 
     62          <field field_ref="fwfisf3d_par"    name="sowflisf3d_par" /> 
    6463 
    6564   </file> 
     
    8685   </file> 
    8786 
    88         <file id="file15" name_suffix="_scalar" description="scalar variables" > 
    89           <!-- global drifts (conservation checks) --> 
    90           <field field_ref="bgtemper"     grid_ref="grid_1point"   name="bgtemper"    /> 
    91           <field field_ref="bgsaline"     grid_ref="grid_1point"   name="bgsaline"    /> 
    92           <field field_ref="bgheatco"     grid_ref="grid_1point"   name="bgheatco"    /> 
    93           <field field_ref="bgheatfx"     grid_ref="grid_1point"   name="bgheatfx"    /> 
    94           <field field_ref="bgsaltco"     grid_ref="grid_1point"   name="bgsaltco"    /> 
    95           <field field_ref="bgvolssh"     grid_ref="grid_1point"   name="bgvolssh"    /> 
    96           <field field_ref="bgvole3t"     grid_ref="grid_1point"   name="bgvole3t"    /> 
    97  
    98           <!-- global surface forcings  --> 
    99           <field field_ref="bgfrcvol"     grid_ref="grid_1point"   name="bgfrcvol"    /> 
    100           <field field_ref="bgfrctem"     grid_ref="grid_1point"   name="bgfrctem"    /> 
    101           <field field_ref="bgfrchfx"     grid_ref="grid_1point"   name="bgfrchfx"    /> 
    102           <field field_ref="bgfrcsal"     grid_ref="grid_1point"   name="bgfrcsal"    /> 
    103         </file> 
    104  
    10587      </file_group>  
    10688 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/cfgs/WED025/EXPREF/namelist_cfg

    r11494 r11844  
    211211!----------------------------------------------------------------------- 
    212212   ! 
    213    ! ---------------- general ------------------------------- 
     213   ! ---------------- ice shelf load ------------------------------- 
     214   ! 
     215   cn_isfload = 'isomip'      ! scheme to compute ice shelf load (ln_isfcav = .true. in domain_cfg.nc) 
     216   ! 
     217   ! ---------------- ice shelf melt formulation ------------------------------- 
    214218   ! 
    215219   ln_isf = .true.            ! activate ice shelf module 
    216    cn_isfdir = './'           ! directory for all ice shelf input file 
    217    ! 
    218    ! ---------------- cavities opened ------------------------------- 
    219    ! 
    220    cn_isfload = 'isomip' 
    221    ! 
    222    ln_isfcav_mlt = .true.     ! ice shelf melting into the cavity 
    223       cn_isfcav_mlt = '3eq'   ! ice shelf melting formulation (spe/2eq/3eq/oasis) 
    224       !                       ! spe = fwfisf is read from a forcing field 
    225       !                       ! 2eq = ISOMIP  like: 2 equations formulation (Hunter et al., 2006) 
    226       !                       ! 3eq = ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2015) 
    227       !                       ! oasis = fwfisf is given by oasis and pattern by file sn_isfcav_fwf 
    228       !              !  cn_isfcav_mlt = 2eq or 3eq cases: 
    229       cn_gammablk = 'ad15'    ! scheme to compute gammat/s (spe,ad15,hj99) 
    230       !                       ! ad15 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
    231       !                       ! hj99 = velocity and stability dependent Gamma    (Holland et al. 1999) 
    232       rn_gammat0  = 1.4e-2    ! gammat coefficient used in blk formula 
    233       rn_gammas0  = 4.e-4    ! gammas coefficient used in blk formula 
     220      cn_isfdir = './'           ! directory for all ice shelf input file 
    234221      ! 
    235       rn_htbl     =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
    236       !                       ! 0 => thickness of the tbl = thickness of the first wet cell 
     222      ! ---------------- cavities opened ------------------------------- 
    237223      ! 
    238       !* 'spe' and 'oasis' case 
    239       !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
    240       !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    241       !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    242       sn_isfcav_fwf = 'isfmlt_cav',      -12.      , 'fwflisf' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    243    ! 
    244    ! ---------------- cavities parametrised ------------------------------- 
    245    ! 
    246    ln_isfpar_mlt = .true.    ! ice shelf melting parametrised 
    247       cn_isfpar_mlt = 'spe'  ! ice shelf melting parametrisation (spe/bg03/oasis) 
    248       !                      ! spe   = fwfisf is read from a forcing field 
    249       !                      ! bg03  = melt computed using Beckmann and Goosse parametrisation 
    250       !                      ! oasis = fwfisf is given by oasis and pattern by file sn_isfpar_fwf 
     224      ln_isfcav_mlt = .true.     ! ice shelf melting into the cavity 
     225         cn_isfcav_mlt = '3eq'   ! ice shelf melting formulation (spe/2eq/3eq/oasis) 
     226         !                       ! spe = fwfisf is read from a forcing field 
     227         !                       ! 2eq = ISOMIP  like: 2 equations formulation (Hunter et al., 2006) 
     228         !                       ! 3eq = ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2015) 
     229         !                       ! oasis = fwfisf is given by oasis and pattern by file sn_isfcav_fwf 
     230         !              !  cn_isfcav_mlt = 2eq or 3eq cases: 
     231         cn_gammablk = 'ad15'    ! scheme to compute gammat/s (spe,ad15,hj99) 
     232         !                       ! ad15 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
     233         !                       ! hj99 = velocity and stability dependent Gamma    (Holland et al. 1999) 
     234         rn_gammat0  = 1.4e-2    ! gammat coefficient used in blk formula 
     235         rn_gammas0  = 4.e-4    ! gammas coefficient used in blk formula 
     236         ! 
     237         rn_htbl     =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
     238         !                       ! 0 => thickness of the tbl = thickness of the first wet cell 
     239         ! 
     240         !* 'spe' and 'oasis' case 
     241         !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
     242         !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     243         !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
     244         sn_isfcav_fwf = 'isfmlt_cav',      -12.      , 'fwflisf'  ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    251245      ! 
    252       !* all cases 
    253       !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
    254       !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    255       !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    256       sn_isfpar_zmax = 'isfmlt_par',      -12.      , 'sozisfmax' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    257       sn_isfpar_zmin = 'isfmlt_par',      -12.      , 'sozisfmin' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    258       !* 'spe' and 'oasis' case 
    259       sn_isfpar_fwf = 'isfmlt_par' ,      -12.      , 'sofwfisf' ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
    260       !* 'bg03' case 
    261       sn_isfpar_Leff = 'isfmlt_par',       0.       , 'Leff'     ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
    262    ! 
    263    ! ---------------- ice sheet coupling ------------------------------- 
    264    ! 
    265    ln_isfcpl = .false. 
    266       nn_drown       = 10        ! number of iteration of the extrapolation loop (fill the new wet cells) 
    267       ln_isfcpl_cons = .false. 
     246      ! ---------------- cavities parametrised ------------------------------- 
     247      ! 
     248      ln_isfpar_mlt = .true.    ! ice shelf melting parametrised 
     249         cn_isfpar_mlt = 'spe'  ! ice shelf melting parametrisation (spe/bg03/oasis) 
     250         !                      ! spe   = fwfisf is read from a forcing field 
     251         !                      ! bg03  = melt computed using Beckmann and Goosse parametrisation 
     252         !                      ! oasis = fwfisf is given by oasis and pattern by file sn_isfpar_fwf 
     253         ! 
     254         !* all cases 
     255         !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
     256         !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     257         !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
     258         sn_isfpar_zmax = 'isfmlt_par',      -12.      , 'sozisfmax' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     259         sn_isfpar_zmin = 'isfmlt_par',      -12.      , 'sozisfmin' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     260         !* 'spe' and 'oasis' case 
     261         sn_isfpar_fwf = 'isfmlt_par' ,      -12.      , 'sofwfisf' ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
     262         !* 'bg03' case 
     263         sn_isfpar_Leff = 'isfmlt_par',       0.       , 'Leff'     ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
     264      ! 
     265      ! ---------------- ice sheet coupling ------------------------------- 
     266      ! 
     267      ln_isfcpl = .false. 
     268         nn_drown       = 10        ! number of iteration of the extrapolation loop (fill the new wet cells) 
     269         ln_isfcpl_cons = .false. 
    268270/ 
    269271!----------------------------------------------------------------------- 
     
    595597&namhsb        !  Heat and salt budgets                                 (default: OFF) 
    596598!----------------------------------------------------------------------- 
    597    ln_diahsb  = .true.    !  check the heat and salt budgets (T) or not (F) 
    598599/ 
    599600!----------------------------------------------------------------------- 
     
    664665&namctl        !   Control prints                                       (default: OFF) 
    665666!----------------------------------------------------------------------- 
     667   ln_ctl = .FALSE.                 ! Toggle all report printing on/off (T/F); Ignored if sn_cfctl%l_config is T 
     668     sn_cfctl%l_config = .TRUE.     ! IF .true. then control which reports are written with the following 
     669       sn_cfctl%l_runstat = .FALSE. ! switches and which areas produce reports with the proc integer settings. 
     670       sn_cfctl%l_trcstat = .FALSE. ! The default settings for the proc integers should ensure 
     671       sn_cfctl%l_oceout  = .FALSE. ! that  all areas report. 
     672       sn_cfctl%l_layout  = .FALSE. ! 
     673       sn_cfctl%l_mppout  = .FALSE. ! 
     674       sn_cfctl%l_mpptop  = .FALSE. ! 
     675       sn_cfctl%procmin   = 0       ! Minimum area number for reporting [default:0] 
     676       sn_cfctl%procmax   = 1000000 ! Maximum area number for reporting [default:1000000] 
     677       sn_cfctl%procincr  = 1       ! Increment for optional subsetting of areas [default:1] 
     678       sn_cfctl%ptimincr  = 1       ! Timestep increment for writing time step progress info 
     679   nn_print    =    0      !  level of print (0 no extra print) 
     680   nn_ictls    =    0      !  start i indice of control sum (use to compare mono versus 
     681   nn_ictle    =    0      !  end   i indice of control sum        multi processor runs 
     682   nn_jctls    =    0      !  start j indice of control               over a subdomain) 
     683   nn_jctle    =    0      !  end   j indice of control 
     684   nn_isplt    =    1      !  number of processors in i-direction 
     685   nn_jsplt    =    1      !  number of processors in j-direction 
     686   ln_timing   = .true.    !  timing by routine write out in timing.output file 
     687   ln_diacfl   = .false.   !  CFL diagnostics write out in cfl_diagnostics.ascii 
    666688/ 
    667689!----------------------------------------------------------------------- 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/DYN/dynzdf.F90

    r11281 r11844  
    428428                  ikv = mikv(ji,jj)       ! (first wet ocean u- and v-points) 
    429429                  ze3va =  ( 1._wp - r_vvl ) * e3v_n(ji,jj,ikv) + r_vvl * e3v_a(ji,jj,ikv)   ! after scale factor at T-point 
    430                   zwd(ji,jj,iku) = zwd(ji,jj,iku) - r2dt * 0.5*( rCdU_top(ji+1,jj)+rCdU_top(ji,jj) ) / ze3va 
     430                  zwd(ji,jj,ikv) = zwd(ji,jj,ikv) - r2dt * 0.5*( rCdU_top(ji+1,jj)+rCdU_top(ji,jj) ) / ze3va 
    431431               END DO 
    432432            END DO 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isf.F90

    r11553 r11844  
    3131   CHARACTER(LEN=256), PUBLIC :: cn_isfdir 
    3232   LOGICAL           , PUBLIC :: ln_isf 
     33   LOGICAL           , PUBLIC :: ln_isfdebug=.TRUE. 
    3334   ! 
    3435   ! 0.2 -------- ice shelf cavity opened namelist parameter ------------- 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isfcav.F90

    r11553 r11844  
    1515   USE oce            ! ocean dynamics and tracers 
    1616   USE isf            ! ice shelf public variables 
     17   USE isfutils 
    1718   USE isftbl         ! ice shelf top boundary layer properties 
    1819   USE isfcavmlt      ! ice shelf melt formulation 
     
    139140      ptsc(:,:,jp_tem) = - zqh(:,:) * r1_rau0_rcp 
    140141      ! 
     142      IF ( ln_isfdebug ) THEN 
     143         CALL debug('isf_cav: ptsc T',ptsc(:,:,1)) 
     144         CALL debug('isf_cav: ptsc S',ptsc(:,:,2)) 
     145         CALL debug('isf_cav: pqfwf fwf',pqfwf(:,:)) 
     146      END IF 
     147      ! 
    141148   END SUBROUTINE isf_cav 
    142149 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isfcavgam.F90

    r11541 r11844  
    1212   USE oce            ! ocean dynamics and tracers 
    1313   USE isf 
     14   USE isfutils 
    1415   USE isftbl 
    1516   USE dom_oce        ! ocean space and time domain 
     
    9192      CALL iom_put('isfgammas', pgs(:,:)) 
    9293      ! 
     94      IF (ln_isfdebug) THEN 
     95         CALL debug( 'isfcav_gam pgt:', pgt(:,:) ) 
     96         CALL debug( 'isfcav_gam pgs:', pgs(:,:) ) 
     97      END IF 
     98      ! 
    9399   END SUBROUTINE isfcav_gammats 
    94100   ! 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isfcavmlt.F90

    r11541 r11844  
    1313   USE oce            ! ocean dynamics and tracers 
    1414   USE isf            ! ice shelf public variables 
     15   USE isfutils       ! ice shelf debug subroutine 
    1516   USE dom_oce        ! ocean space and time domain 
    1617   USE phycst         ! physical constants 
     
    7475      END SELECT 
    7576      ! 
     77      IF (ln_isfdebug) THEN 
     78         CALL debug( 'isfcav_mlt:', pqhc (:,:) ) 
     79         CALL debug( 'isfcav_mlt:', pqoce(:,:) ) 
     80         CALL debug( 'isfcav_mlt:', pqfwf(:,:) ) 
     81      END IF 
     82      ! 
    7683   END SUBROUTINE isfcav_mlt 
    7784 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isftbl.F90

    r11541 r11844  
    1616   USE dom_oce ! vertical scale factor 
    1717   USE lbclnk  ! lbc_lnk subroutine 
     18   USE isfutils 
     19   USE isf 
    1820 
    1921   IMPLICIT NONE 
     
    4850      REAL(wp), DIMENSION(jpi,jpj), OPTIONAL, INTENT(in   ) :: pfrac         ! fraction of bottom cell affected by tbl 
    4951      !!-------------------------------------------------------------------- 
    50       INTEGER ::   ji, jj                   ! loop index 
    51       INTEGER , DIMENSION(jpi,jpj) :: ikbot ! bottom level of the tbl 
    52       REAL(wp), DIMENSION(jpi,jpj) :: zhtbl ! thickness of the tbl 
    53       REAL(wp), DIMENSION(jpi,jpj) :: zfrac ! thickness of the tbl 
     52      INTEGER ::   ji, jj                     ! loop index 
     53      INTEGER , DIMENSION(jpi,jpj) :: ikbot   ! bottom level of the tbl 
     54      REAL(wp), DIMENSION(jpi,jpj) :: zvarout ! 2d average of pvarin 
     55      REAL(wp), DIMENSION(jpi,jpj) :: zhtbl   ! thickness of the tbl 
     56      REAL(wp), DIMENSION(jpi,jpj) :: zfrac   ! thickness of the tbl 
    5457      !!-------------------------------------------------------------------- 
    5558      !  
     
    6467         ! 
    6568         ! compute tbl property at U point 
    66          CALL isf_tbl_avg( miku, ikbot, zhtbl, zfrac, e3u_n, pvarin, pvarout ) 
     69         CALL isf_tbl_avg( miku, ikbot, zhtbl, zfrac, e3u_n, pvarin, zvarout ) 
     70         ! 
     71         ! check if needed (probably yes) 
     72         CALL lbc_lnk('sbcisf', pvarout,'U',-1.) 
    6773         ! 
    6874         ! compute tbl property at T point 
     75         pvarout(1,:) = 0._wp 
    6976         DO jj = 1, jpj 
    7077            DO ji = 2, jpi 
    71                pvarout(ji,jj) = 0.5_wp * (pvarout(ji,jj) + pvarout(ji-1,jj)) 
     78               pvarout(ji,jj) = 0.5_wp * (zvarout(ji,jj) + zvarout(ji-1,jj)) 
    7279            END DO 
    7380         END DO 
    74          ! 
    75          ! check if needed (probably yes) 
    76          CALL lbc_lnk('sbcisf', pvarout,'T',-1.) 
     81         ! lbclnk not needed as a final communication is done after the computation of fwf 
    7782         !  
    7883      CASE ( 'V' ) 
     
    8590         ! 
    8691         ! compute tbl property at V point 
    87          CALL isf_tbl_avg( mikv, ikbot, zhtbl, zfrac, e3v_n, pvarin, pvarout ) 
     92         CALL isf_tbl_avg( mikv, ikbot, zhtbl, zfrac, e3v_n, pvarin, zvarout ) 
     93         ! 
     94         ! check if needed (probably yes) 
     95         CALL lbc_lnk('sbcisf', pvarout,'V',-1.) 
    8896         ! 
    8997         ! pvarout is an averaging of wet point 
     98         pvarout(:,1) = 0._wp 
    9099         DO jj = 2, jpj 
    91100            DO ji = 1, jpi 
    92                pvarout(ji,jj) = 0.5_wp * (pvarout(ji,jj) + pvarout(ji,jj-1)) 
     101               pvarout(ji,jj) = 0.5_wp * (zvarout(ji,jj) + zvarout(ji,jj-1)) 
    93102            END DO 
    94103         END DO 
    95          ! 
    96          ! check if needed (probably yes) 
    97          CALL lbc_lnk('sbcisf', pvarout,'T',-1.) 
     104         ! lbclnk not needed as a final communication is done after the computation of fwf 
    98105         ! 
    99106      CASE ( 'T' ) 
     
    103110         ! 
    104111      END SELECT 
     112      ! 
     113      IF (ln_isfdebug) CALL debug('isf_tbl pvarout:',pvarout) 
    105114      ! 
    106115   END SUBROUTINE isf_tbl 
  • NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isfutils.F90

    r11521 r11844  
    6565      !!-------------------------------------------------------------------- 
    6666      ! 
    67       zsum = glob_sum_full( 'debug', pvar(:,:) ) 
    68       zmin = MINVAL( pvar(:,:) ) ; CALL mpp_min( 'debug', zmin ) ! min over the global domain 
    69       zmax = MAXVAL( pvar(:,:) ) ; CALL mpp_max( 'debug', zmax ) ! max over the global domain 
     67      zsum = glob_sum( 'debug', pvar(:,:) ) 
     68      zmin = glob_min( 'debug', pvar(:,:) ) 
     69      zmax = glob_max( 'debug', pvar(:,:) ) 
    7070      ! 
    71       WRITE(numout,*) TRIM(cdtxt),' (min, max, sum) : ',zmin, zmax, zsum 
     71      IF (lwp) WRITE(numout,*) TRIM(cdtxt),' (min, max, sum) : ',zmin, zmax, zsum 
    7272      ! 
    73       FLUSH(numout) 
     73      CALL FLUSH(numout) 
     74      ! 
    7475   END SUBROUTINE debug2d 
    7576 
     
    8990      !!-------------------------------------------------------------------- 
    9091      ! 
    91       zsum = glob_sum_full( 'debug', pvar(:,:,:) ) 
    92       zmin = MINVAL( pvar(:,:,:) ) ; CALL mpp_min( 'debug', zmin ) ! min over the global domain 
    93       zmax = MAXVAL( pvar(:,:,:) ) ; CALL mpp_max( 'debug', zmax ) ! max over the global domain 
     92      zsum = glob_sum( 'debug', pvar(:,:,:) ) 
     93      zmin = glob_min( 'debug', pvar(:,:,:) ) 
     94      zmax = glob_max( 'debug', pvar(:,:,:) ) 
    9495      ! 
    95       WRITE(numout,*) TRIM(cdtxt),' (min, max, sum) : ',zmin, zmax, zsum 
     96      IF (lwp) WRITE(numout,*) TRIM(cdtxt),' (min, max, sum) : ',zmin, zmax, zsum 
    9697      ! 
    97       FLUSH(numout) 
     98      CALL FLUSH(numout) 
    9899      ! 
    99100   END SUBROUTINE debug3d 
Note: See TracChangeset for help on using the changeset viewer.