Changeset 12721


Ignore:
Timestamp:
2020-04-08T20:42:57+02:00 (6 months ago)
Author:
mathiot
Message:

NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo: add last year isf dev

Location:
NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo
Files:
55 added
4 deleted
45 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/cfgs/SHARED/field_def_nemo-oce.xml

    r12660 r12721  
    314314 
    315315          <!-- * variable related to ice shelf forcing * --> 
    316           <field id="fwfisf"       long_name="Ice shelf melting"                             unit="kg/m2/s"  /> 
    317           <field id="fwfisf3d"     long_name="Ice shelf melting"                             unit="kg/m2/s"  grid_ref="grid_T_3D" /> 
    318           <field id="qlatisf"      long_name="Ice shelf latent heat flux"                    unit="W/m2"     /> 
    319           <field id="qlatisf3d"    long_name="Ice shelf latent heat flux"                    unit="W/m2"     grid_ref="grid_T_3D" /> 
    320           <field id="qhcisf"       long_name="Ice shelf heat content flux"                   unit="W/m2"     /> 
    321           <field id="qhcisf3d"     long_name="Ice shelf heat content flux"                   unit="W/m2"     grid_ref="grid_T_3D" /> 
    322           <field id="isfgammat"    long_name="transfert coefficient for isf (temperature) "  unit="m/s"      /> 
    323           <field id="isfgammas"    long_name="transfert coefficient for isf (salinity)    "  unit="m/s"      /> 
    324           <field id="stbl"         long_name="salinity in the Losh tbl                    "  unit="PSU"      /> 
    325           <field id="ttbl"         long_name="temperature in the Losh tbl                 "  unit="C"        /> 
    326           <field id="utbl"         long_name="zonal current in the Losh tbl at T point    "  unit="m/s"      /> 
    327           <field id="vtbl"         long_name="merid current in the Losh tbl at T point    "  unit="m/s"      /> 
    328           <field id="thermald"     long_name="thermal driving of ice shelf melting        "  unit="C"        /> 
    329           <field id="tfrz"         long_name="top freezing point (used to compute melt)   "  unit="C"        /> 
    330           <field id="tinsitu"      long_name="top insitu temperature (used to cmpt melt)  "  unit="C"        /> 
    331           <field id="ustar"        long_name="ustar at T point used in ice shelf melting  "  unit="m/s"      /> 
     316          <field id="isftfrz_cav"     long_name="freezing point temperature at ocean/isf interface"                unit="degC"     /> 
     317          <field id="isftfrz_par"     long_name="freezing point temperature in the parametrization boundary layer" unit="degC"     /> 
     318          <field id="fwfisf_cav"      long_name="Ice shelf melt rate"                           unit="kg/m2/s"  /> 
     319          <field id="fwfisf_par"      long_name="Ice shelf melt rate"                           unit="kg/m2/s"  /> 
     320          <field id="qoceisf_cav"     long_name="Ice shelf ocean  heat flux"                    unit="W/m2"     /> 
     321          <field id="qoceisf_par"     long_name="Ice shelf ocean  heat flux"                    unit="W/m2"     /> 
     322          <field id="qlatisf_cav"     long_name="Ice shelf latent heat flux"                    unit="W/m2"     /> 
     323          <field id="qlatisf_par"     long_name="Ice shelf latent heat flux"                    unit="W/m2"     /> 
     324          <field id="qhcisf_cav"      long_name="Ice shelf heat content flux of injected water" unit="W/m2"     /> 
     325          <field id="qhcisf_par"      long_name="Ice shelf heat content flux of injected water" unit="W/m2"     /> 
     326          <field id="fwfisf3d_cav"    long_name="Ice shelf melt rate"                           unit="kg/m2/s"  grid_ref="grid_T_3D" /> 
     327          <field id="fwfisf3d_par"    long_name="Ice shelf melt rate"                           unit="kg/m2/s"  grid_ref="grid_T_3D" /> 
     328          <field id="qoceisf3d_cav"   long_name="Ice shelf ocean  heat flux"                    unit="W/m2"     grid_ref="grid_T_3D" /> 
     329          <field id="qoceisf3d_par"   long_name="Ice shelf ocean  heat flux"                    unit="W/m2"     grid_ref="grid_T_3D" /> 
     330          <field id="qlatisf3d_cav"   long_name="Ice shelf latent heat flux"                    unit="W/m2"     grid_ref="grid_T_3D" /> 
     331          <field id="qlatisf3d_par"   long_name="Ice shelf latent heat flux"                    unit="W/m2"     grid_ref="grid_T_3D" /> 
     332          <field id="qhcisf3d_cav"    long_name="Ice shelf heat content flux of injected water" unit="W/m2"     grid_ref="grid_T_3D" /> 
     333          <field id="qhcisf3d_par"    long_name="Ice shelf heat content flux of injected water" unit="W/m2"     grid_ref="grid_T_3D" /> 
     334          <field id="ttbl_cav"        long_name="temperature in Losch tbl"                      unit="degC"     /> 
     335          <field id="ttbl_par"        long_name="temperature in the parametrisation boundary layer" unit="degC" /> 
     336          <field id="isfthermald_cav" long_name="thermal driving of ice shelf melting"          unit="degC"     /> 
     337          <field id="isfthermald_par" long_name="thermal driving of ice shelf melting"          unit="degC"     /> 
     338          <field id="isfgammat"       long_name="Ice shelf heat-transfert velocity"             unit="m/s"      /> 
     339          <field id="isfgammas"       long_name="Ice shelf salt-transfert velocity"             unit="m/s"      /> 
     340          <field id="stbl"            long_name="salinity in the Losh tbl"                      unit="1e-3"     /> 
     341          <field id="utbl"            long_name="zonal current in the Losh tbl at T point"      unit="m/s"      /> 
     342          <field id="vtbl"            long_name="merid current in the Losh tbl at T point"      unit="m/s"      /> 
     343          <field id="isfustar"        long_name="ustar at T point used in ice shelf melting"    unit="m/s"      /> 
     344          <field id="qconisf"         long_name="Conductive heat flux through the ice shelf"    unit="W/m2"     /> 
    332345 
    333346          <!-- *_oce variables available with ln_blk_clio or ln_blk_core --> 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/cfgs/SHARED/namelist_ref

    r12660 r12721  
    55!! namelists    2 - Surface boundary (namsbc, namsbc_flx, namsbc_blk, namsbc_cpl, 
    66!!                                    namsbc_sas, namtra_qsr, namsbc_rnf, 
    7 !!                                    namsbc_isf, namsbc_iscpl, namsbc_apr,  
     7!!                                    namisf, namsbc_apr,  
    88!!                                    namsbc_ssr, namsbc_wave, namberg) 
    99!!              3 - lateral boundary (namlbc, namagrif, nambdy, nambdy_tide) 
     
    5151      cn_ocerst_out   = "restart"   !  suffix of ocean restart name (output) 
    5252      cn_ocerst_outdir = "."        !  directory in which to write output ocean restarts 
    53    ln_iscpl    = .false.   !  cavity evolution forcing or coupling to ice sheet model 
    54    nn_istate   =       0   !  output the initial state (1) or not (0) 
     53   nn_istate   =       1   !  output the initial state (1) or not (0) 
    5554   ln_rst_list = .false.   !  output restarts at list of times using nn_stocklist (T) or at set frequency with nn_stock (F) 
    5655   nn_stock    =       0   !  used only if ln_rst_list = F: output restart freqeuncy (modulo referenced to 1) 
     
    7372!----------------------------------------------------------------------- 
    7473   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    75    rn_isfhmin  =    1.00   !  treshold [m] to discriminate grounding ice from floating ice 
    7674   ! 
    7775   rn_rdt      = 5400.     !  time step for the dynamics and tracer 
     
    185183!!   namsbc_rnf      river runoffs                                      (ln_rnf     =T) 
    186184!!   namsbc_apr      Atmospheric Pressure                               (ln_apr_dyn =T) 
    187 !!   namsbc_isf      ice shelf melting/freezing                         (ln_isfcav  =T : read (ln_read_cfg=T) or set or usr_def_zgr ) 
    188 !!   namsbc_iscpl    coupling option between land ice model and ocean   (ln_isfcav  =T) 
    189185!!   namsbc_wave     external fields from wave model                    (ln_wave    =T) 
    190186!!   namberg         iceberg floats                                     (ln_icebergs=T) 
     
    223219   ln_rnf      = .false.   !  runoffs                                   (T => fill namsbc_rnf) 
    224220   ln_apr_dyn  = .false.   !  Patm gradient added in ocean & ice Eqs.   (T => fill namsbc_apr ) 
    225    ln_isf      = .false.   !  ice shelf                                 (T   => fill namsbc_isf & namsbc_iscpl) 
    226221   ln_wave     = .false.   !  Activate coupling with wave  (T => fill namsbc_wave) 
    227222   ln_cdgw     = .false.   !  Neutral drag coefficient read from wave model (T => ln_wave=.true. & fill namsbc_wave) 
     
    443438/ 
    444439!----------------------------------------------------------------------- 
    445 &namsbc_isf    !  Top boundary layer (ISF)                              (ln_isfcav =T : read (ln_read_cfg=T)  
    446 !-----------------------------------------------------------------------             or set or usr_def_zgr ) 
    447    !                 ! type of top boundary layer  
    448    nn_isf      = 1         !  ice shelf melting/freezing 
    449                            !  1 = presence of ISF   ;  2 = bg03 parametrisation  
    450                            !  3 = rnf file for ISF  ;  4 = ISF specified freshwater flux 
    451                            !  options 1 and 4 need ln_isfcav = .true. (domzgr) 
    452       !              !  nn_isf = 1 or 2 cases: 
    453       rn_gammat0  = 1.e-4     ! gammat coefficient used in blk formula 
    454       rn_gammas0  = 1.e-4     ! gammas coefficient used in blk formula 
    455       !              !  nn_isf = 1 or 4 cases: 
    456       rn_hisf_tbl =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
    457       !                       ! 0 => thickness of the tbl = thickness of the first wet cell 
    458       !              ! nn_isf = 1 case 
    459       nn_isfblk   = 1         ! 1 ISOMIP  like: 2 equations formulation (Hunter et al., 2006) 
    460       !                       ! 2 ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2015) 
    461       nn_gammablk = 1         ! 0 = cst Gammat (= gammat/s) 
    462       !                       ! 1 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
    463       !                       ! 2 = velocity and stability dependent Gamma    (Holland et al. 1999) 
    464  
    465    !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
    466    !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    467    !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    468 !* nn_isf = 4 case 
    469    sn_fwfisf   = 'rnfisf'    ,         -12.      ,'sowflisf' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    470 !* nn_isf = 3 case 
    471    sn_rnfisf   = 'rnfisf'    ,         -12.      ,'sofwfisf' ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    472 !* nn_isf = 2 and 3 cases  
    473    sn_depmax_isf ='rnfisf'   ,         -12.      ,'sozisfmax',  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    474    sn_depmin_isf ='rnfisf'   ,         -12.      ,'sozisfmin',  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    475 !* nn_isf = 2 case 
    476    sn_Leff_isf = 'rnfisf'    ,         -12.      ,'Leff'     ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
    477 / 
    478 !----------------------------------------------------------------------- 
    479 &namsbc_iscpl  !   land ice / ocean coupling option                     (ln_isfcav =T : read (ln_read_cfg=T)  
    480 !-----------------------------------------------------------------------             or set or usr_def_zgr ) 
    481    nn_drown    = 10        ! number of iteration of the extrapolation loop (fill the new wet cells) 
    482    ln_hsb      = .false.   ! activate conservation module (conservation exact after a time of rn_fiscpl) 
    483    nn_fiscpl   = 43800     ! (number of time step) conservation period (maybe should be fix to the coupling frequencey of restart frequency) 
     440&namisf       !  Top boundary layer (ISF)                               (default: OFF) 
     441!----------------------------------------------------------------------- 
     442   ! 
     443   ! ---------------- ice shelf load ------------------------------- 
     444   ! 
     445   cn_isfload = 'uniform'      ! scheme to compute ice shelf load (ln_isfcav = .true. in domain_cfg.nc) 
     446      rn_isfload_T = -1.9 
     447      rn_isfload_S = 34.4 
     448   ! 
     449   ! ---------------- ice shelf melt formulation ------------------------------- 
     450   ! 
     451   ln_isf = .false.           ! activate ice shelf module 
     452      ln_isfdebug = .false.      ! add debug print in ISF code (global min/max/sum of specific variable) 
     453      cn_isfdir   = './'         ! directory for all ice shelf input file 
     454      ! 
     455      ! ---------------- cavities opened ------------------------------- 
     456      ! 
     457      ln_isfcav_mlt = .false.    ! ice shelf melting into the cavity (need ln_isfcav = .true. in domain_cfg.nc) 
     458         cn_isfcav_mlt = '3eq'   ! ice shelf melting formulation (spe/2eq/3eq/oasis) 
     459         !                       ! spe = fwfisf is read from a forcing field 
     460         !                       ! 2eq = ISOMIP  like: 2 equations formulation (Hunter et al., 2006 for a short description) 
     461         !                       ! 3eq = ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2016 for a short description) 
     462         !                       ! oasis = fwfisf is given by oasis and pattern by file sn_isfcav_fwf 
     463         !              !  cn_isfcav_mlt = 2eq or 3eq cases: 
     464         cn_gammablk = 'vel'     ! scheme to compute gammat/s (spe,ad15,hj99) 
     465         !                       ! spe      = constant transfert velocity (rn_gammat0, rn_gammas0) 
     466         !                       ! vel      = velocity dependent transfert velocity (u* * gammat/s) (Asay-Davis et al. 2016 for a short description) 
     467         !                       ! vel_stab = velocity and stability dependent transfert coeficient (Holland et al. 1999 for a complete description) 
     468         rn_gammat0  = 1.4e-2    ! gammat coefficient used in spe, vel and vel_stab gamma computation method 
     469         rn_gammas0  = 4.0e-4    ! gammas coefficient used in spe, vel and vel_stab gamma computation method 
     470         ! 
     471         rn_htbl     =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
     472         !                       ! 0 => thickness of the tbl = thickness of the first wet cell 
     473         ! 
     474         !* 'spe' and 'oasis' case 
     475         !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
     476         !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     477         !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
     478         sn_isfcav_fwf = 'isfmlt_cav',      -12.      , 'fwflisf'  ,  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     479      ! 
     480      ! ---------------- cavities parametrised ------------------------------- 
     481      ! 
     482      ln_isfpar_mlt = .false.   ! ice shelf melting parametrised 
     483         cn_isfpar_mlt = 'spe'  ! ice shelf melting parametrisation (spe/bg03/oasis) 
     484         !                      ! spe   = fwfisf is read from a forcing field 
     485         !                      ! bg03  = melt computed using Beckmann and Goosse parametrisation 
     486         !                      ! oasis = fwfisf is given by oasis and pattern by file sn_isfpar_fwf 
     487         ! 
     488         !* all cases 
     489         !___________!_____________!___________________!___________!_____________!_________!___________!__________!__________!_______________! 
     490         !           !  file name  ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
     491         !           !             !  (if <0  months)  !   name    !  (logical)  !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
     492         sn_isfpar_zmax = 'isfmlt_par',       0        ,'sozisfmax',  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     493         sn_isfpar_zmin = 'isfmlt_par',       0        ,'sozisfmin',  .false.    , .true.  , 'yearly'  ,    ''    ,   ''     ,    '' 
     494         !* 'spe' and 'oasis' case 
     495         sn_isfpar_fwf = 'isfmlt_par' ,      -12.      ,'sofwfisf' ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
     496         !* 'bg03' case 
     497         sn_isfpar_Leff = 'isfmlt_par',       0.       ,'Leff'     ,  .false.    , .true.  , 'yearly'   ,    ''    ,   ''     ,    '' 
     498      ! 
     499      ! ---------------- ice sheet coupling ------------------------------- 
     500      ! 
     501      ln_isfcpl = .false. 
     502         nn_drown       = 10        ! number of iteration of the extrapolation loop (fill the new wet cells) 
     503         ln_isfcpl_cons = .false. 
    484504/ 
    485505!----------------------------------------------------------------------- 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/cfgs/ref_cfgs.txt

    r12658 r12721  
    99ORCA2_ICE_PISCES OCE TOP ICE NST 
    1010SPITZ12 OCE ICE 
     11WED025 OCE ICE 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/BDY/bdyvol.F90

    r12658 r12721  
    1414   USE bdy_oce        ! ocean open boundary conditions 
    1515   USE sbc_oce        ! ocean surface boundary conditions 
     16   USE isf_oce, ONLY : fwfisf_cav, fwfisf_par  ! ice shelf 
    1617   USE dom_oce        ! ocean space and time domain  
    1718   USE phycst         ! physical constants 
    18    USE sbcisf         ! ice shelf 
    1919   ! 
    2020   USE in_out_manager ! I/O manager 
     
    7777      ! Calculate the cumulate surface Flux z_cflxemp (m3/s) over all the domain 
    7878      ! ----------------------------------------------------------------------- 
    79       IF ( kc == 1 ) z_cflxemp = glob_sum( 'bdyvol', ( emp(:,:) - rnf(:,:) + fwfisf(:,:) ) * bdytmask(:,:) * e1e2t(:,:)  ) / rau0 
     79      IF ( kc == 1 ) z_cflxemp = glob_sum( 'bdyvol', ( emp(:,:) - rnf(:,:) + fwfisf_cav(:,:) + fwfisf_par(:,:) ) * bdytmask(:,:) * e1e2t(:,:)  ) / rau0 
    8080 
    8181      ! Compute bdy surface each cycle if non linear free surface 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DIA/diahsb.F90

    r12658 r12721  
    1717   USE phycst         ! physical constants 
    1818   USE sbc_oce        ! surface thermohaline fluxes 
     19   USE isf_oce        ! ice shelf fluxes 
    1920   USE sbcrnf         ! river runoff 
    20    USE sbcisf         ! ice shelves 
    2121   USE domvvl         ! vertical scale factors 
    2222   USE traqsr         ! penetrative solar radiation 
     
    4848   REAL(wp), DIMENSION(:,:)  , ALLOCATABLE ::   ssh_hc_loc_ini, ssh_sc_loc_ini   ! 
    4949   REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   hc_loc_ini, sc_loc_ini, e3t_ini  ! 
     50   REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   tmask_ini 
    5051 
    5152   !! * Substitutions 
     
    9192      ! 1 - Trends due to forcing ! 
    9293      ! ------------------------- ! 
    93       z_frc_trd_v = r1_rau0 * glob_sum( 'diahsb', - ( emp(:,:) - rnf(:,:) + fwfisf(:,:) ) * surf(:,:) )   ! volume fluxes 
     94      z_frc_trd_v = r1_rau0 * glob_sum( 'diahsb', - ( emp(:,:) - rnf(:,:) + fwfisf_cav(:,:) + fwfisf_par(:,:) ) * surf(:,:) )   ! volume fluxes 
    9495      z_frc_trd_t =           glob_sum( 'diahsb', sbc_tsc(:,:,jp_tem) * surf(:,:) )                       ! heat fluxes 
    9596      z_frc_trd_s =           glob_sum( 'diahsb', sbc_tsc(:,:,jp_sal) * surf(:,:) )                       ! salt fluxes 
     
    9899      IF( ln_rnf_sal)   z_frc_trd_s = z_frc_trd_s + glob_sum( 'diahsb', rnf_tsc(:,:,jp_sal) * surf(:,:) ) 
    99100      !                    ! Add ice shelf heat & salt input 
    100       IF( ln_isf    )   z_frc_trd_t = z_frc_trd_t + glob_sum( 'diahsb', risf_tsc(:,:,jp_tem) * surf(:,:) ) 
     101      IF( ln_isf    )   z_frc_trd_t = z_frc_trd_t & 
     102         &                          + glob_sum( 'diahsb', ( risf_cav_tsc(:,:,jp_tem) + risf_par_tsc(:,:,jp_tem) ) * surf(:,:) ) 
    101103      !                    ! Add penetrative solar radiation 
    102104      IF( ln_traqsr )   z_frc_trd_t = z_frc_trd_t + r1_rau0_rcp * glob_sum( 'diahsb', qsr     (:,:) * surf(:,:) ) 
     
    155157      ! 
    156158      DO jk = 1, jpkm1           ! volume variation (calculated with scale factors) 
    157          zwrk(:,:,jk) = ( surf(:,:)*e3t_n(:,:,jk) - surf_ini(:,:)*e3t_ini(:,:,jk) ) * tmask(:,:,jk) 
     159         zwrk(:,:,jk) = surf(:,:)*e3t_n(:,:,jk)*tmask(:,:,jk) - surf_ini(:,:)*e3t_ini(:,:,jk)*tmask_ini(:,:,jk) 
    158160      END DO 
    159       zdiff_v2 = glob_sum_full( 'diahsb', zwrk(:,:,:) ) 
     161      zdiff_v2 = glob_sum_full( 'diahsb', zwrk(:,:,:) )     ! glob_sum_full needed as tmask and tmask_ini could be different 
    160162      DO jk = 1, jpkm1           ! heat content variation 
    161          zwrk(:,:,jk) = ( surf(:,:)*e3t_n(:,:,jk)*tsn(:,:,jk,jp_tem) - surf_ini(:,:)*hc_loc_ini(:,:,jk) ) * tmask(:,:,jk) 
     163         zwrk(:,:,jk) = ( surf(:,:)*e3t_n(:,:,jk)*tsn(:,:,jk,jp_tem) - surf_ini(:,:)*hc_loc_ini(:,:,jk) ) 
    162164      END DO 
    163165      zdiff_hc = glob_sum_full( 'diahsb', zwrk(:,:,:) ) 
    164166      DO jk = 1, jpkm1           ! salt content variation 
    165          zwrk(:,:,jk) = ( surf(:,:)*e3t_n(:,:,jk)*tsn(:,:,jk,jp_sal) - surf_ini(:,:)*sc_loc_ini(:,:,jk) ) * tmask(:,:,jk) 
     167         zwrk(:,:,jk) = ( surf(:,:)*e3t_n(:,:,jk)*tsn(:,:,jk,jp_sal) - surf_ini(:,:)*sc_loc_ini(:,:,jk) ) 
    166168      END DO 
    167169      zdiff_sc = glob_sum_full( 'diahsb', zwrk(:,:,:) ) 
     
    187189         zwrk(:,:,jk) = surf(:,:) * e3t_n(:,:,jk) * tmask(:,:,jk) 
    188190      END DO 
    189       zvol_tot = glob_sum_full( 'diahsb', zwrk(:,:,:) ) 
     191      zvol_tot = glob_sum( 'diahsb', zwrk(:,:,:) ) 
    190192 
    191193!!gm to be added ? 
     
    270272            CALL iom_get( numror, jpdom_autoglo, 'ssh_ini'   , ssh_ini   , ldxios = lrxios ) 
    271273            CALL iom_get( numror, jpdom_autoglo, 'e3t_ini'   , e3t_ini   , ldxios = lrxios ) 
     274            CALL iom_get( numror, jpdom_autoglo, 'tmask_ini' , tmask_ini , ldxios = lrxios ) 
    272275            CALL iom_get( numror, jpdom_autoglo, 'hc_loc_ini', hc_loc_ini, ldxios = lrxios ) 
    273276            CALL iom_get( numror, jpdom_autoglo, 'sc_loc_ini', sc_loc_ini, ldxios = lrxios ) 
     
    285288              ! if ice sheet/oceqn coupling, need to mask ini variables here (mask could change at the next NEMO instance). 
    286289               e3t_ini   (:,:,jk) = e3t_n(:,:,jk)                      * tmask(:,:,jk)  ! initial vertical scale factors 
     290               tmask_ini (:,:,jk) = tmask(:,:,jk)                                       ! initial mask 
    287291               hc_loc_ini(:,:,jk) = tsn(:,:,jk,jp_tem) * e3t_n(:,:,jk) * tmask(:,:,jk)  ! initial heat content 
    288292               sc_loc_ini(:,:,jk) = tsn(:,:,jk,jp_sal) * e3t_n(:,:,jk) * tmask(:,:,jk)  ! initial salt content 
     
    325329         CALL iom_rstput( kt, nitrst, numrow, 'ssh_ini'   , ssh_ini   , ldxios = lwxios ) 
    326330         CALL iom_rstput( kt, nitrst, numrow, 'e3t_ini'   , e3t_ini   , ldxios = lwxios ) 
     331         CALL iom_rstput( kt, nitrst, numrow, 'tmask_ini' , tmask_ini , ldxios = lwxios ) 
    327332         CALL iom_rstput( kt, nitrst, numrow, 'hc_loc_ini', hc_loc_ini, ldxios = lwxios ) 
    328333         CALL iom_rstput( kt, nitrst, numrow, 'sc_loc_ini', sc_loc_ini, ldxios = lwxios ) 
     
    396401      ! ------------------- ! 
    397402      ALLOCATE( hc_loc_ini(jpi,jpj,jpk), sc_loc_ini(jpi,jpj,jpk), surf_ini(jpi,jpj), & 
    398          &      e3t_ini(jpi,jpj,jpk), surf(jpi,jpj),  ssh_ini(jpi,jpj), STAT=ierror  ) 
     403         &      e3t_ini(jpi,jpj,jpk), surf(jpi,jpj),  ssh_ini(jpi,jpj), tmask_ini(jpi,jpj,jpk),STAT=ierror  ) 
    399404      IF( ierror > 0 ) THEN 
    400405         CALL ctl_stop( 'dia_hsb_init: unable to allocate hc_loc_ini' )   ;   RETURN 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DIA/diawri.F90

    r12660 r12721  
    2626   !!---------------------------------------------------------------------- 
    2727   USE oce            ! ocean dynamics and tracers  
     28   USE isf_oce 
     29   USE isfcpl 
    2830   USE dom_oce        ! ocean space and time domain 
    2931   USE phycst         ! physical constants 
     
    923925         CALL iom_rstput( 0, 0, inum, 'vovecrtz', wn             )    ! now k-velocity 
    924926      ENDIF 
     927      CALL iom_rstput( 0, 0, inum, 'risfdep', risfdep            )    ! now k-velocity 
     928      CALL iom_rstput( 0, 0, inum, 'ht_n'   , ht_n               )    ! now k-velocity 
     929 
     930      IF ( ln_isf ) THEN 
     931         IF (ln_isfcav_mlt) THEN 
     932            CALL iom_rstput( 0, 0, inum, 'fwfisf_cav', fwfisf_cav          )    ! now k-velocity 
     933            CALL iom_rstput( 0, 0, inum, 'rhisf_cav_tbl', rhisf_tbl_cav    )    ! now k-velocity 
     934            CALL iom_rstput( 0, 0, inum, 'rfrac_cav_tbl', rfrac_tbl_cav    )    ! now k-velocity 
     935            CALL iom_rstput( 0, 0, inum, 'misfkb_cav', REAL(misfkb_cav,8)    )    ! now k-velocity 
     936            CALL iom_rstput( 0, 0, inum, 'misfkt_cav', REAL(misfkt_cav,8)    )    ! now k-velocity 
     937            CALL iom_rstput( 0, 0, inum, 'mskisf_cav', REAL(mskisf_cav,8), ktype = jp_i1 ) 
     938         END IF 
     939         IF (ln_isfpar_mlt) THEN 
     940            CALL iom_rstput( 0, 0, inum, 'isfmsk_par', REAL(mskisf_par,8)  )    ! now k-velocity 
     941            CALL iom_rstput( 0, 0, inum, 'fwfisf_par', fwfisf_par          )    ! now k-velocity 
     942            CALL iom_rstput( 0, 0, inum, 'rhisf_par_tbl', rhisf_tbl_par    )    ! now k-velocity 
     943            CALL iom_rstput( 0, 0, inum, 'rfrac_par_tbl', rfrac_tbl_par    )    ! now k-velocity 
     944            CALL iom_rstput( 0, 0, inum, 'misfkb_par', REAL(misfkb_par,8)    )    ! now k-velocity 
     945            CALL iom_rstput( 0, 0, inum, 'misfkt_par', REAL(misfkt_par,8)    )    ! now k-velocity 
     946            CALL iom_rstput( 0, 0, inum, 'mskisf_par', REAL(mskisf_par,8), ktype = jp_i1 ) 
     947         END IF 
     948      END IF 
     949 
    925950      IF( ALLOCATED(ahtu) ) THEN 
    926951         CALL iom_rstput( 0, 0, inum,  'ahtu', ahtu              )    ! aht at u-point 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/dom_oce.F90

    r12658 r12721  
    3232   LOGICAL , PUBLIC ::   ln_linssh      !: =T  linear free surface ==>> model level are fixed in time 
    3333   LOGICAL , PUBLIC ::   ln_meshmask    !: =T  create a mesh-mask file (mesh_mask.nc) 
    34    REAL(wp), PUBLIC ::   rn_isfhmin     !: threshold to discriminate grounded ice to floating ice 
    3534   REAL(wp), PUBLIC ::   rn_rdt         !: time step for the dynamics and tracer 
    3635   REAL(wp), PUBLIC ::   rn_atfp        !: asselin time filter parameter 
    3736   INTEGER , PUBLIC ::   nn_euler       !: =0 start with forward time step or not (=1) 
    38    LOGICAL , PUBLIC ::   ln_iscpl       !: coupling with ice sheet 
    3937   LOGICAL , PUBLIC ::   ln_crs         !: Apply grid coarsening to dynamical model output or online passive tracers 
    4038 
     
    158156   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:)   ::   e3t_1d  , e3w_1d   !: reference vertical scale factors at T- and W-pts (m) 
    159157 
     158   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   risfdep, bathy 
    160159 
    161160   !!---------------------------------------------------------------------- 
     
    170169   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   tmask_h            !: internal domain T-point mask (Figure 8.5 NEMO book) 
    171170 
    172    INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   misfdep                 !: top first ocean level             (ISF) 
    173    INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mikt, miku, mikv, mikf  !: top first wet T-, U-, V-, F-level (ISF) 
    174    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   risfdep                 !: Iceshelf draft                    (ISF) 
     171   INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   mikt, miku, mikv, mikf  !: top first wet T-, U-, V-, F-level           (ISF) 
    175172 
    176173   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   ssmask, ssumask, ssvmask             !: surface mask at T-,U-, V- and F-pts 
     
    274271         &                      hu_a(jpi,jpj) , hv_a(jpi,jpj) , r1_hu_a(jpi,jpj) , r1_hv_a(jpi,jpj) , STAT=ierr(6)  ) 
    275272         ! 
    276          ! 
    277       ALLOCATE( gdept_1d(jpk) , gdepw_1d(jpk) , e3t_1d(jpk) , e3w_1d(jpk) , STAT=ierr(7) ) 
     273      ALLOCATE( risfdep(jpi,jpj) , bathy(jpi,jpj) , STAT=ierr(7)  )  
     274         ! 
     275      ALLOCATE( gdept_1d(jpk) , gdepw_1d(jpk) , e3t_1d(jpk) , e3w_1d(jpk) , STAT=ierr(8) ) 
    278276         ! 
    279277      ALLOCATE( tmask_i(jpi,jpj) , tmask_h(jpi,jpj) ,                        &  
     
    281279         &      mbkt   (jpi,jpj) , mbku   (jpi,jpj) , mbkv   (jpi,jpj) , STAT=ierr(9) ) 
    282280         ! 
    283       ALLOCATE( misfdep(jpi,jpj) , mikt(jpi,jpj) , miku(jpi,jpj) ,     & 
    284          &      risfdep(jpi,jpj) , mikv(jpi,jpj) , mikf(jpi,jpj) , STAT=ierr(10) ) 
     281      ALLOCATE( mikt(jpi,jpj), miku(jpi,jpj), mikv(jpi,jpj), mikf(jpi,jpj), STAT=ierr(10) ) 
    285282         ! 
    286283      ALLOCATE( tmask(jpi,jpj,jpk) , umask(jpi,jpj,jpk) ,     &  
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/domain.F90

    r12660 r12721  
    140140                                       ! Read in masks to define closed seas and lakes  
    141141      ! 
    142       DO jj = 1, jpj                   ! depth of the iceshelves 
    143          DO ji = 1, jpi 
    144             ik = mikt(ji,jj) 
    145             risfdep(ji,jj) = gdepw_0(ji,jj,ik) 
    146          END DO 
    147       END DO 
    148       ! 
    149142      ht_0(:,:) = 0._wp  ! Reference ocean thickness 
    150143      hu_0(:,:) = 0._wp 
     
    192185      IF( lk_c1d         )   CALL cor_c1d       ! 1D configuration: Coriolis set at T-point 
    193186      ! 
    194       IF( ln_meshmask .AND. .NOT.ln_iscpl )                        CALL dom_wri     ! Create a domain file 
    195       IF( ln_meshmask .AND.      ln_iscpl .AND. .NOT.ln_rstart )   CALL dom_wri     ! Create a domain file 
    196       IF(                                       .NOT.ln_rstart )   CALL dom_ctl     ! Domain control 
    197       ! 
    198       IF( ln_write_cfg )   CALL cfg_write         ! create the configuration file 
     187      IF( ln_meshmask    )   CALL dom_wri       ! Create a domain file 
     188      IF( .NOT.ln_rstart )   CALL dom_ctl       ! Domain control 
     189      ! 
     190      IF( ln_write_cfg   )   CALL cfg_write     ! create the configuration file 
    199191      ! 
    200192      IF(lwp) THEN 
     
    294286         &             ln_cfmeta, ln_iscpl, ln_xios_read, nn_wxios, ln_rstdate, ln_rst_eos 
    295287 
    296       NAMELIST/namdom/ ln_linssh, rn_isfhmin, rn_rdt, rn_atfp, ln_crs, ln_meshmask 
     288      NAMELIST/namdom/ ln_linssh, rn_rdt, rn_atfp, ln_crs, ln_meshmask 
     289 
    297290#if defined key_netcdf4 
    298291      NAMELIST/namnc4/ nn_nchunks_i, nn_nchunks_j, nn_nchunks_k, ln_nc4zip 
     
    345338         WRITE(numout,*) '      overwrite an existing file      ln_clobber      = ', ln_clobber 
    346339         WRITE(numout,*) '      NetCDF chunksize (bytes)        nn_chunksz      = ', nn_chunksz 
    347          WRITE(numout,*) '      IS coupling at the restart step ln_iscpl        = ', ln_iscpl 
    348340         WRITE(numout,*) '      check restart equation of state ln_rst_eos      = ', ln_rst_eos 
    349341 
     
    421413         WRITE(numout,*) '      linear free surface (=T)                ln_linssh   = ', ln_linssh 
    422414         WRITE(numout,*) '      create mesh/mask file                   ln_meshmask = ', ln_meshmask 
    423          WRITE(numout,*) '      treshold to open the isf cavity         rn_isfhmin  = ', rn_isfhmin, ' [m]' 
    424415         WRITE(numout,*) '      ocean time step                         rn_rdt      = ', rn_rdt 
    425416         WRITE(numout,*) '      asselin time filter parameter           rn_atfp     = ', rn_atfp 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/domvvl.F90

    r12658 r12721  
    3636 
    3737   PUBLIC  dom_vvl_init       ! called by domain.F90 
     38   PUBLIC  dom_vvl_zgr        ! called by isfcpl.F90 
    3839   PUBLIC  dom_vvl_sf_nxt     ! called by step.F90 
    3940   PUBLIC  dom_vvl_sf_swp     ! called by step.F90 
     
    115116      !! Reference  : Leclair, M., and G. Madec, 2011, Ocean Modelling. 
    116117      !!---------------------------------------------------------------------- 
     118      ! 
     119      IF(lwp) WRITE(numout,*) 
     120      IF(lwp) WRITE(numout,*) 'dom_vvl_init : Variable volume activated' 
     121      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     122      ! 
     123      CALL dom_vvl_ctl     ! choose vertical coordinate (z_star, z_tilde or layer) 
     124      ! 
     125      !                    ! Allocate module arrays 
     126      IF( dom_vvl_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'dom_vvl_init : unable to allocate arrays' ) 
     127      ! 
     128      !                    ! Read or initialize e3t_(b/n), tilde_e3t_(b/n) and hdiv_lf 
     129      CALL dom_vvl_rst( nit000, 'READ' ) 
     130      e3t_a(:,:,jpk) = e3t_0(:,:,jpk)  ! last level always inside the sea floor set one for all 
     131      ! 
     132      CALL dom_vvl_zgr() ! interpolation scale factor, depth and water column 
     133      ! 
     134   END SUBROUTINE dom_vvl_init 
     135   ! 
     136   SUBROUTINE dom_vvl_zgr() 
     137      !!---------------------------------------------------------------------- 
     138      !!                ***  ROUTINE dom_vvl_init  *** 
     139      !!                    
     140      !! ** Purpose :  Interpolation of all scale factors,  
     141      !!               depths and water column heights 
     142      !! 
     143      !! ** Method  :  - interpolate scale factors 
     144      !! 
     145      !! ** Action  : - e3t_(n/b) and tilde_e3t_(n/b) 
     146      !!              - Regrid: e3(u/v)_n 
     147      !!                        e3(u/v)_b        
     148      !!                        e3w_n            
     149      !!                        e3(u/v)w_b       
     150      !!                        e3(u/v)w_n       
     151      !!                        gdept_n, gdepw_n and gde3w_n 
     152      !!              - h(t/u/v)_0 
     153      !!              - frq_rst_e3t and frq_rst_hdv 
     154      !! 
     155      !! Reference  : Leclair, M., and G. Madec, 2011, Ocean Modelling. 
     156      !!---------------------------------------------------------------------- 
    117157      INTEGER ::   ji, jj, jk 
    118158      INTEGER ::   ii0, ii1, ij0, ij1 
    119159      REAL(wp)::   zcoef 
    120160      !!---------------------------------------------------------------------- 
    121       ! 
    122       IF(lwp) WRITE(numout,*) 
    123       IF(lwp) WRITE(numout,*) 'dom_vvl_init : Variable volume activated' 
    124       IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
    125       ! 
    126       CALL dom_vvl_ctl     ! choose vertical coordinate (z_star, z_tilde or layer) 
    127       ! 
    128       !                    ! Allocate module arrays 
    129       IF( dom_vvl_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'dom_vvl_init : unable to allocate arrays' ) 
    130       ! 
    131       !                    ! Read or initialize e3t_(b/n), tilde_e3t_(b/n) and hdiv_lf 
    132       CALL dom_vvl_rst( nit000, 'READ' ) 
    133       e3t_a(:,:,jpk) = e3t_0(:,:,jpk)  ! last level always inside the sea floor set one for all 
    134161      ! 
    135162      !                    !== Set of all other vertical scale factors  ==!  (now and before) 
     
    263290      ENDIF 
    264291      ! 
    265    END SUBROUTINE dom_vvl_init 
    266  
     292   END SUBROUTINE dom_vvl_zgr 
    267293 
    268294   SUBROUTINE dom_vvl_sf_nxt( kt, kcall )  
     
    813839            id4 = iom_varid( numror, 'tilde_e3t_n', ldstop = .FALSE. ) 
    814840            id5 = iom_varid( numror, 'hdiv_lf', ldstop = .FALSE. ) 
     841            ! 
    815842            !                             ! --------- ! 
    816843            !                             ! all cases ! 
    817844            !                             ! --------- ! 
     845            ! 
    818846            IF( MIN( id1, id2 ) > 0 ) THEN       ! all required arrays exist 
    819847               CALL iom_get( numror, jpdom_autoglo, 'e3t_b', e3t_b(:,:,:), ldxios = lrxios ) 
     
    10331061      ! 
    10341062      IF( ioptio /= 1 )   CALL ctl_stop( 'Choose ONE vertical coordinate in namelist nam_vvl' ) 
    1035       IF( .NOT. ln_vvl_zstar .AND. ln_isf ) CALL ctl_stop( 'Only vvl_zstar has been tested with ice shelf cavity' ) 
    10361063      ! 
    10371064      IF(lwp) THEN                   ! Print the choice 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/domwri.F90

    r12658 r12721  
    1616   !!   dom_stiff      : diagnose maximum grid stiffness/hydrostatic consistency (s-coordinate) 
    1717   !!---------------------------------------------------------------------- 
     18   ! 
    1819   USE dom_oce         ! ocean space and time domain 
    1920   USE phycst ,   ONLY :   rsmall 
     
    155156       
    156157      ! note that mbkt is set to 1 over land ==> use surface tmask 
    157       zprt(:,:) = ssmask(:,:) * REAL( mbkt(:,:) , wp ) 
     158      zprt(:,:) = REAL( mbkt(:,:) , wp ) 
    158159      CALL iom_rstput( 0, 0, inum, 'mbathy', zprt, ktype = jp_i4 )     !    ! nb of ocean T-points 
    159       zprt(:,:) = ssmask(:,:) * REAL( mikt(:,:) , wp ) 
     160      zprt(:,:) = REAL( mikt(:,:) , wp ) 
    160161      CALL iom_rstput( 0, 0, inum, 'misf', zprt, ktype = jp_i4 )       !    ! nb of ocean T-points 
    161       zprt(:,:) = ssmask(:,:) * REAL( risfdep(:,:) , wp ) 
    162       CALL iom_rstput( 0, 0, inum, 'isfdraft', zprt, ktype = jp_r8 )   !    ! nb of ocean T-points 
    163162      !                                                         ! vertical mesh 
    164163      CALL iom_rstput( 0, 0, inum, 'e3t_1d', e3t_1d, ktype = jp_r8  )    !    ! scale factors 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/domzgr.F90

    r12658 r12721  
    7171      INTEGER, DIMENSION(:,:), INTENT(out) ::   k_top, k_bot   ! ocean first and last level indices 
    7272      ! 
    73       INTEGER  ::   jk                  ! dummy loop index 
     73      INTEGER  ::   ji,jj,jk            ! dummy loop index 
     74      INTEGER  ::   ikt, ikb            ! top/bot index 
    7475      INTEGER  ::   ioptio, ibat, ios   ! local integer 
    7576      REAL(wp) ::   zrefdep             ! depth of the reference level (~10m) 
     
    138139      !                                ! top/bottom ocean level indices for t-, u- and v-points (f-point also for top) 
    139140      CALL zgr_top_bot( k_top, k_bot )      ! with a minimum value set to 1 
    140        
    141  
     141      ! 
     142      !                                ! ice shelf draft and bathymetry 
     143      DO jj = 1,jpj 
     144         DO ji = 1,jpi 
     145            ikt = mikt(ji,jj) 
     146            ikb = mbkt(ji,jj) 
     147            bathy  (ji,jj) = gdepw_0(ji,jj,ikb+1) 
     148            risfdep(ji,jj) = gdepw_0(ji,jj,ikt  ) 
     149         END DO 
     150      END DO 
     151      ! 
    142152      !                                ! deepest/shallowest W level Above/Below ~10m 
    143153!!gm BUG in s-coordinate this does not work! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DOM/istate.F90

    r12658 r12721  
    2828   USE dtauvd         ! data: U & V current             (dta_uvd routine) 
    2929   USE domvvl          ! varying vertical mesh 
    30    USE iscplrst        ! ice sheet coupling 
    3130   USE wet_dry         ! wetting and drying (needed for wad_istate) 
    3231   USE usrdef_istate   ! User defined initial state 
     
    8685         !                                    ! ------------------- 
    8786         CALL rst_read                        ! Read the restart file 
    88          IF (ln_iscpl)       CALL iscpl_stp   ! extrapolate restart to wet and dry 
    8987         CALL day_init                        ! model calendar (using both namelist and restart infos) 
    9088         ! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DYN/divhor.F90

    r12658 r12721  
    2020   USE oce             ! ocean dynamics and tracers 
    2121   USE dom_oce         ! ocean space and time domain 
    22    USE sbc_oce, ONLY : ln_rnf, ln_isf ! surface boundary condition: ocean 
    23    USE sbcrnf          ! river runoff  
    24    USE sbcisf          ! ice shelf 
    25    USE iscplhsb        ! ice sheet / ocean coupling 
    26    USE iscplini        ! ice sheet / ocean coupling 
     22   USE sbc_oce, ONLY : ln_rnf      ! river runoff 
     23   USE sbcrnf , ONLY : sbc_rnf_div ! river runoff  
     24   USE isf_oce, ONLY : ln_isf      ! ice shelf 
     25   USE isfhdiv, ONLY : isf_hdiv    ! ice shelf 
    2726#if defined key_asminc    
    2827   USE asminc          ! Assimilation increment 
     
    8685         END DO   
    8786      END DO 
     87      ! 
    8888#if defined key_agrif 
    8989      IF( .NOT. Agrif_Root() ) THEN 
     
    9595#endif 
    9696      ! 
    97       IF( ln_rnf )   CALL sbc_rnf_div( hdivn )              !==  runoffs    ==!   (update hdivn field) 
     97      IF( ln_rnf )                      CALL sbc_rnf_div( hdivn )       !==  runoffs           ==!   (update hdivn field) 
    9898      ! 
    9999#if defined key_asminc  
     
    101101      !  
    102102#endif 
    103       IF( ln_isf )   CALL sbc_isf_div( hdivn )      !==  ice shelf  ==!   (update hdivn field) 
    104103      ! 
    105       IF( ln_iscpl .AND. ln_hsb )   CALL iscpl_div( hdivn ) !==  ice sheet  ==!   (update hdivn field) 
     104      IF( ln_isf )                      CALL isf_hdiv( kt, hdivn )      !==  ice shelf         ==!   (update hdivn field) 
    106105      ! 
    107106      CALL lbc_lnk( 'divhor', hdivn, 'T', 1. )   !   (no sign change) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DYN/dynhpg.F90

    r12658 r12721  
    3131   !!---------------------------------------------------------------------- 
    3232   USE oce             ! ocean dynamics and tracers 
     33   USE isf_oce , ONLY : risfload  ! ice shelf  (risfload variable) 
     34   USE isfload , ONLY : isf_load  ! ice shelf  (isf_load routine ) 
    3335   USE sbc_oce         ! surface variable (only for the flag with ice shelf) 
    3436   USE dom_oce         ! ocean space and time domain 
     
    213215      ENDIF 
    214216      !                           
    215       IF ( .NOT. ln_isfcav ) THEN     !--- no ice shelf load 
    216          riceload(:,:) = 0._wp 
    217          ! 
    218       ELSE                            !--- set an ice shelf load 
    219          ! 
    220          IF(lwp) WRITE(numout,*) 
    221          IF(lwp) WRITE(numout,*) '   ice shelf case: set the ice-shelf load' 
    222          ALLOCATE( zts_top(jpi,jpj,jpts) , zrhd(jpi,jpj,jpk) , zrhdtop_isf(jpi,jpj) , ziceload(jpi,jpj) )  
    223          ! 
    224          znad = 1._wp                     !- To use density and not density anomaly 
    225          ! 
    226          !                                !- assume water displaced by the ice shelf is at T=-1.9 and S=34.4 (rude) 
    227          zts_top(:,:,jp_tem) = -1.9_wp   ;   zts_top(:,:,jp_sal) = 34.4_wp 
    228          ! 
    229          DO jk = 1, jpk                   !- compute density of the water displaced by the ice shelf  
    230             CALL eos( zts_top(:,:,:), gdept_n(:,:,jk), zrhd(:,:,jk) ) 
    231          END DO 
    232          ! 
    233          !                                !- compute rhd at the ice/oce interface (ice shelf side) 
    234          CALL eos( zts_top , risfdep, zrhdtop_isf ) 
    235          ! 
    236          !                                !- Surface value + ice shelf gradient 
    237          ziceload = 0._wp                       ! compute pressure due to ice shelf load  
    238          DO jj = 1, jpj                         ! (used to compute hpgi/j for all the level from 1 to miku/v) 
    239             DO ji = 1, jpi                      ! divided by 2 later 
    240                ikt = mikt(ji,jj) 
    241                ziceload(ji,jj) = ziceload(ji,jj) + (znad + zrhd(ji,jj,1) ) * e3w_n(ji,jj,1) * (1._wp - tmask(ji,jj,1)) 
    242                DO jk = 2, ikt-1 
    243                   ziceload(ji,jj) = ziceload(ji,jj) + (2._wp * znad + zrhd(ji,jj,jk-1) + zrhd(ji,jj,jk)) * e3w_n(ji,jj,jk) & 
    244                      &                              * (1._wp - tmask(ji,jj,jk)) 
    245                END DO 
    246                IF (ikt  >=  2) ziceload(ji,jj) = ziceload(ji,jj) + (2._wp * znad + zrhdtop_isf(ji,jj) + zrhd(ji,jj,ikt-1)) & 
    247                   &                                              * ( risfdep(ji,jj) - gdept_n(ji,jj,ikt-1) ) 
    248             END DO 
    249          END DO 
    250          riceload(:,:) = ziceload(:,:)  ! need to be saved for diaar5 
    251          ! 
    252          DEALLOCATE( zts_top , zrhd , zrhdtop_isf , ziceload )  
    253       ENDIF 
    254       ! 
    255217   END SUBROUTINE dyn_hpg_init 
    256  
    257218 
    258219   SUBROUTINE hpg_zco( kt ) 
     
    572533      !!         ua = ua - 1/e1u * zhpi 
    573534      !!         va = va - 1/e2v * zhpj 
    574       !!      iceload is added and partial cell case are added to the top and bottom 
     535      !!      iceload is added 
    575536      !!       
    576537      !! ** Action : - Update (ua,va) with the now hydrastatic pressure trend 
     
    617578               &                                  - 0.5_wp * e3w_n(ji,jj,ikt)                                         & 
    618579               &                                    * ( 2._wp * znad + rhd(ji,jj,ikt) + zrhdtop_oce(ji,jj) )          & 
    619                &                                  + ( riceload(ji+1,jj) - riceload(ji,jj))                            )  
     580               &                                  + ( risfload(ji+1,jj) - risfload(ji,jj))                            )  
    620581            zhpj(ji,jj,1) = zcoef0 / e2v(ji,jj) * ( 0.5_wp * e3w_n(ji,jj+1,iktp1j)                                    & 
    621582               &                                    * ( 2._wp * znad + rhd(ji,jj+1,iktp1j) + zrhdtop_oce(ji,jj+1) )   & 
    622583               &                                  - 0.5_wp * e3w_n(ji,jj,ikt)                                         &  
    623584               &                                    * ( 2._wp * znad + rhd(ji,jj,ikt) + zrhdtop_oce(ji,jj) )          & 
    624                &                                  + ( riceload(ji,jj+1) - riceload(ji,jj))                            )  
     585               &                                  + ( risfload(ji,jj+1) - risfload(ji,jj))                            )  
    625586            ! s-coordinate pressure gradient correction (=0 if z coordinate) 
    626587            zuap = -zcoef0 * ( rhd    (ji+1,jj,1) + rhd    (ji,jj,1) + 2._wp * znad )   & 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DYN/dynspg_ts.F90

    r12658 r12721  
    3131   USE dom_oce         ! ocean space and time domain 
    3232   USE sbc_oce         ! surface boundary condition: ocean 
     33   USE isf_oce         ! ice shelf variable (fwfisf) 
    3334   USE zdf_oce         ! vertical physics: variables 
    3435   USE zdfdrg          ! vertical physics: top/bottom drag coef. 
    35    USE sbcisf          ! ice shelf variable (fwfisf) 
    3636   USE sbcapr          ! surface boundary condition: atmospheric pressure 
    3737   USE dynadv    , ONLY: ln_dynadv_vec 
     
    331331      !                                   ! ---------------------------------------------------  ! 
    332332      IF (ln_bt_fw) THEN                          ! FORWARD integration: use kt+1/2 fluxes (NOW+1/2) 
    333          zssh_frc(:,:) = r1_rau0 * ( emp(:,:)             - rnf(:,:)              + fwfisf(:,:)                  ) 
     333         zssh_frc(:,:) = r1_rau0 * ( emp(:,:) - rnf(:,:) + fwfisf_cav(:,:) + fwfisf_par(:,:) ) 
    334334      ELSE                                        ! CENTRED integration: use kt-1/2 + kt+1/2 fluxes (NOW) 
    335335         zztmp = r1_rau0 * r1_2 
    336          zssh_frc(:,:) = zztmp * (  emp(:,:) + emp_b(:,:) - rnf(:,:) - rnf_b(:,:) + fwfisf(:,:) + fwfisf_b(:,:)  ) 
     336         zssh_frc(:,:) = zztmp * (  emp(:,:)        + emp_b(:,:)                    & 
     337                &                 - rnf(:,:)        - rnf_b(:,:)                    & 
     338                &                 + fwfisf_cav(:,:) + fwfisf_cav_b(:,:)             & 
     339                &                 + fwfisf_par(:,:) + fwfisf_par_b(:,:)             ) 
    337340      ENDIF 
    338341      !                                   !=  Add Stokes drift divergence  =!   (if exist) 
     
    340343         zssh_frc(:,:) = zssh_frc(:,:) + div_sd(:,:) 
    341344      ENDIF 
     345      ! 
     346      !                                         ! ice sheet coupling 
     347      IF ( ln_isf .AND. ln_isfcpl ) THEN 
     348         ! 
     349         ! ice sheet coupling 
     350         IF( ln_rstart .AND. kt == nit000 ) THEN 
     351            zssh_frc(:,:) = zssh_frc(:,:) + risfcpl_ssh(:,:) 
     352         END IF 
     353         ! 
     354         ! conservation option 
     355         IF( ln_isfcpl_cons ) THEN 
     356            zssh_frc(:,:) = zssh_frc(:,:) + risfcpl_cons_ssh(:,:) 
     357         END IF 
     358         ! 
     359      END IF 
    342360      ! 
    343361#if defined key_asminc 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/DYN/sshwzv.F90

    r12658 r12721  
    1818   !!---------------------------------------------------------------------- 
    1919   USE oce            ! ocean dynamics and tracers variables 
     20   USE isf_oce        ! ice shelf 
    2021   USE dom_oce        ! ocean space and time domain variables  
    2122   USE sbc_oce        ! surface boundary condition: ocean 
     
    255256         IF( .NOT.ln_linssh ) THEN                          ! before <-- with forcing removed 
    256257            zcoef = atfp * rdt * r1_rau0 
    257             sshb(:,:) = sshb(:,:) - zcoef * (     emp_b(:,:) - emp   (:,:)   & 
    258                &                             -    rnf_b(:,:) + rnf   (:,:)   & 
    259                &                             + fwfisf_b(:,:) - fwfisf(:,:)   ) * ssmask(:,:) 
     258            sshb(:,:) = sshb(:,:) - zcoef * (  emp_b(:,:)        - emp   (:,:)       & 
     259               &                             - rnf_b(:,:)        + rnf   (:,:)       & 
     260               &                             + fwfisf_cav_b(:,:) - fwfisf_cav(:,:)   & 
     261               &                             + fwfisf_par_b(:,:) - fwfisf_par(:,:)   ) * ssmask(:,:) 
     262 
     263            ! ice sheet coupling 
     264            IF ( ln_isf .AND. ln_isfcpl .AND. kt == nit000+1) sshb(:,:) = sshb(:,:) - atfp * rdt * ( risfcpl_ssh(:,:) - 0.0 ) * ssmask(:,:) 
     265 
    260266         ENDIF 
     267 
    261268         sshn(:,:) = ssha(:,:)                              ! now <-- after 
    262269      ENDIF 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/IOM/iom.F90

    r12660 r12721  
    384384        CALL iom_set_rstw_var_active('sshn') 
    385385        CALL iom_set_rstw_var_active('rhop') 
    386      ! extra variable needed for the ice sheet coupling 
    387         IF ( ln_iscpl ) THEN 
    388              CALL iom_set_rstw_var_active('tmask') 
    389              CALL iom_set_rstw_var_active('umask') 
    390              CALL iom_set_rstw_var_active('vmask') 
    391              CALL iom_set_rstw_var_active('smask') 
    392              CALL iom_set_rstw_var_active('e3t_n') 
    393              CALL iom_set_rstw_var_active('e3u_n') 
    394              CALL iom_set_rstw_var_active('e3v_n') 
    395              CALL iom_set_rstw_var_active('gdepw_n') 
    396         END IF 
    397386      ENDIF 
    398387      IF(ln_diurnal) CALL iom_set_rstw_var_active('Dsst') 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/IOM/restart.F90

    r12660 r12721  
    172172                     CALL iom_rstput( kt, nitrst, numrow, 'sshn'   , sshn, ldxios = lwxios      ) 
    173173                     CALL iom_rstput( kt, nitrst, numrow, 'rhop'   , rhop, ldxios = lwxios      ) 
    174                   ! extra variable needed for the ice sheet coupling 
    175                   IF ( ln_iscpl ) THEN  
    176                      CALL iom_rstput( kt, nitrst, numrow, 'tmask'  , tmask, ldxios = lwxios ) ! need to extrapolate T/S 
    177                      CALL iom_rstput( kt, nitrst, numrow, 'umask'  , umask, ldxios = lwxios ) ! need to correct barotropic velocity 
    178                      CALL iom_rstput( kt, nitrst, numrow, 'vmask'  , vmask, ldxios = lwxios ) ! need to correct barotropic velocity 
    179                      CALL iom_rstput( kt, nitrst, numrow, 'smask'  , ssmask, ldxios = lwxios) ! need to correct barotropic velocity 
    180                      CALL iom_rstput( kt, nitrst, numrow, 'e3t_n', e3t_n(:,:,:), ldxios = lwxios )   ! need to compute temperature correction 
    181                      CALL iom_rstput( kt, nitrst, numrow, 'e3u_n', e3u_n(:,:,:), ldxios = lwxios )   ! need to compute bt conservation 
    182                      CALL iom_rstput( kt, nitrst, numrow, 'e3v_n', e3v_n(:,:,:), ldxios = lwxios )   ! need to compute bt conservation 
    183                      CALL iom_rstput( kt, nitrst, numrow, 'gdepw_n', gdepw_n(:,:,:), ldxios = lwxios ) ! need to compute extrapolation if vvl 
    184                   END IF 
    185174      ENDIF 
    186175                     CALL iom_rstput( kt, nitrst, numrow, 'neos'    , REAL(neos)      , ldxios = lwxios)   ! equation of state 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/LDF/ldfslp.F90

    r12658 r12721  
    2121   !!---------------------------------------------------------------------- 
    2222   USE oce            ! ocean dynamics and tracers 
     23   USE isf_oce        ! ice shelf 
    2324   USE dom_oce        ! ocean space and time domain 
    2425!   USE ldfdyn         ! lateral diffusion: eddy viscosity coef. 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/SBC/sbc_oce.F90

    r12658 r12721  
    4343   LOGICAL , PUBLIC ::   ln_dm2dc       !: Daily mean to Diurnal Cycle short wave (qsr) 
    4444   LOGICAL , PUBLIC ::   ln_rnf         !: runoffs / runoff mouths 
    45    LOGICAL , PUBLIC ::   ln_isf         !: ice shelf melting 
    4645   LOGICAL , PUBLIC ::   ln_ssr         !: Sea Surface restoring on SST and/or SSS       
    4746   LOGICAL , PUBLIC ::   ln_apr_dyn     !: Atmospheric pressure forcing used on dynamics (ocean & ice) 
     
    122121   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   emp_tot           !: total E-P over ocean and ice                 [Kg/m2/s] 
    123122   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   fmmflx            !: freshwater budget: freezing/melting          [Kg/m2/s] 
    124    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   rnf    , rnf_b    !: river runoff        [Kg/m2/s]   
    125    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   fwfisf , fwfisf_b !: ice shelf melting   [Kg/m2/s]   
    126    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   fwficb , fwficb_b !: iceberg melting [Kg/m2/s]   
    127  
     123   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   rnf    , rnf_b    !: river runoff                                 [Kg/m2/s]   
     124   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   fwficb , fwficb_b !: iceberg melting                              [Kg/m2/s]   
    128125   !! 
    129126   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::  sbc_tsc, sbc_tsc_b  !: sbc content trend                      [K.m/s] jpi,jpj,jpts 
     
    174171         &      sfx    (jpi,jpj) , sfx_b(jpi,jpj) , emp_tot(jpi,jpj), fmmflx(jpi,jpj), STAT=ierr(2) ) 
    175172         ! 
    176       ALLOCATE( fwfisf  (jpi,jpj), rnf  (jpi,jpj) , sbc_tsc  (jpi,jpj,jpts) , qsr_hc  (jpi,jpj,jpk) ,  & 
    177          &      fwfisf_b(jpi,jpj), rnf_b(jpi,jpj) , sbc_tsc_b(jpi,jpj,jpts) , qsr_hc_b(jpi,jpj,jpk) ,  & 
     173      ALLOCATE( rnf  (jpi,jpj) , sbc_tsc  (jpi,jpj,jpts) , qsr_hc  (jpi,jpj,jpk) ,  & 
     174         &      rnf_b(jpi,jpj) , sbc_tsc_b(jpi,jpj,jpts) , qsr_hc_b(jpi,jpj,jpk) ,  & 
    178175         &      fwficb  (jpi,jpj), fwficb_b(jpi,jpj), STAT=ierr(3) ) 
    179176         ! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/SBC/sbccpl.F90

    r12658 r12721  
    2727   USE sbcwave         ! surface boundary condition: waves 
    2828   USE phycst          ! physical constants 
     29   USE isf_oce , ONLY : l_isfoasis, fwfisf_oasis ! ice shelf boundary condition 
    2930#if defined key_si3 
    3031   USE ice            ! ice variables 
     
    3637   USE eosbn2         !  
    3738   USE sbcrnf  , ONLY : l_rnfcpl 
    38    USE sbcisf  , ONLY : l_isfcpl 
    3939#if defined key_cice 
    4040   USE ice_domain_size, only: ncat 
     
    474474      srcv(jpr_icb)%clname = 'OIceberg'   ;  IF( TRIM( sn_rcv_icb%cldes) == 'coupled' )   srcv(jpr_icb)%laction = .TRUE. 
    475475 
    476       IF( srcv(jpr_isf)%laction .AND. ln_isf ) THEN 
    477          l_isfcpl             = .TRUE.                      ! -> no need to read isf in sbcisf 
     476      IF( srcv(jpr_isf)%laction ) THEN 
     477         l_isfoasis = .TRUE.  ! -> isf fwf comes from oasis 
    478478         IF(lwp) WRITE(numout,*) 
    479479         IF(lwp) WRITE(numout,*) '   iceshelf received from oasis ' 
     480         CALL ctl_stop('STOP','not coded') 
    480481      ENDIF 
    481482      ! 
     
    14011402             rnf(:,:)    = rnf(:,:) + fwficb(:,:)   ! iceberg added to runfofs 
    14021403         ENDIF 
    1403          IF( srcv(jpr_isf)%laction )  fwfisf(:,:) = - frcv(jpr_isf)%z3(:,:,1)  ! fresh water flux from the isf (fwfisf <0 mean melting)   
     1404         ! 
     1405         ! ice shelf fwf 
     1406         IF( srcv(jpr_isf)%laction )  THEN 
     1407            fwfisf_oasis(:,:) = - frcv(jpr_isf)%z3(:,:,1)  ! fresh water flux from the isf (fwfisf <0 mean melting)   
     1408         END IF 
    14041409         
    14051410         IF( ln_mixcpl ) THEN   ;   emp(:,:) = emp(:,:) * xcplmask(:,:,0) + zemp(:,:) * zmsk(:,:) 
     
    17041709      ENDIF 
    17051710      IF( srcv(jpr_isf)%laction ) THEN   ! iceshelf (fwfisf <0 mean melting) 
    1706         fwfisf(:,:) = - frcv(jpr_isf)%z3(:,:,1)   
     1711        fwfisf_oasis(:,:) = - frcv(jpr_isf)%z3(:,:,1)   
    17071712      ENDIF 
    17081713 
     
    17431748      ENDIF 
    17441749      IF( srcv(jpr_isf)%laction ) THEN   ! iceshelf (fwfisf <0 mean melting) 
    1745         fwfisf(:,:) = - frcv(jpr_isf)%z3(:,:,1) 
     1750        fwfisf_oasis(:,:) = - frcv(jpr_isf)%z3(:,:,1) 
    17461751      ENDIF 
    17471752      ! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/SBC/sbcfwb.F90

    r12658 r12721  
    1717   USE dom_oce        ! ocean space and time domain 
    1818   USE sbc_oce        ! surface ocean boundary condition 
     19   USE isf_oce , ONLY : fwfisf_cav, fwfisf_par                    ! ice shelf melting contribution 
    1920   USE sbc_ice , ONLY : snwice_mass, snwice_mass_b, snwice_fmass 
    2021   USE phycst         ! physical constants 
    2122   USE sbcrnf         ! ocean runoffs 
    22    USE sbcisf         ! ice shelf melting contribution 
    2323   USE sbcssr         ! Sea-Surface damping terms 
    2424   ! 
     
    104104         ! 
    105105         IF( MOD( kt-1, kn_fsbc ) == 0 ) THEN 
    106             y_fwfnow(1) = local_sum( e1e2t(:,:) * ( emp(:,:) - rnf(:,:) + fwfisf(:,:) - snwice_fmass(:,:) ) ) 
     106            y_fwfnow(1) = local_sum( e1e2t(:,:) * ( emp(:,:) - rnf(:,:) + fwfisf_cav(:,:) + fwfisf_par(:,:) - snwice_fmass(:,:) ) ) 
    107107            CALL mpp_delay_sum( 'sbcfwb', 'fwb', y_fwfnow(:), z_fwfprv(:), kt == nitend - nn_fsbc + 1 ) 
    108108            z_fwfprv(1) = z_fwfprv(1) / area 
     
    159159            ztmsk_neg(:,:) = tmask_i(:,:) - ztmsk_pos(:,:) 
    160160            !                                                  ! fwf global mean (excluding ocean to ice/snow exchanges)  
    161             z_fwf     = glob_sum( 'sbcfwb', e1e2t(:,:) * ( emp(:,:) - rnf(:,:) + fwfisf(:,:) - snwice_fmass(:,:) ) ) / area 
     161            z_fwf     = glob_sum( 'sbcfwb', e1e2t(:,:) * ( emp(:,:) - rnf(:,:) + fwfisf_cav(:,:) + fwfisf_par(:,:) - snwice_fmass(:,:) ) ) / area 
    162162            !             
    163163            IF( z_fwf < 0._wp ) THEN         ! spread out over >0 erp area to increase evaporation 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/SBC/sbcmod.F90

    r12658 r12721  
    3737#endif 
    3838   USE sbcice_cice    ! surface boundary condition: CICE sea-ice model 
    39    USE sbcisf         ! surface boundary condition: ice-shelf 
    4039   USE sbccpl         ! surface boundary condition: coupled formulation 
    4140   USE cpl_oasis3     ! OASIS routines for coupling 
     
    4342   USE sbcrnf         ! surface boundary condition: runoffs 
    4443   USE sbcapr         ! surface boundary condition: atmo pressure  
    45    USE sbcisf         ! surface boundary condition: ice shelf 
    4644   USE sbcfwb         ! surface boundary condition: freshwater budget 
    4745   USE icbstp         ! Icebergs 
     
    9189      LOGICAL ::   ll_purecpl, ll_opa, ll_not_nemo   ! local logical 
    9290      !! 
    93       NAMELIST/namsbc/ nn_fsbc  ,                                                    & 
    94          &             ln_usr   , ln_flx   , ln_blk       ,                          & 
    95          &             ln_cpl   , ln_mixcpl, nn_components,                          & 
    96          &             nn_ice   , ln_ice_embd,                                       & 
    97          &             ln_traqsr, ln_dm2dc ,                                         & 
    98          &             ln_rnf   , nn_fwb   , ln_ssr   , ln_isf    , ln_apr_dyn ,     & 
    99          &             ln_wave  , ln_cdgw  , ln_sdw   , ln_tauwoc  , ln_stcor   ,     & 
    100          &             ln_tauw  , nn_lsm, nn_sdrift 
     91      NAMELIST/namsbc/ nn_fsbc  ,                                                  & 
     92         &             ln_usr   , ln_flx     , ln_blk       ,                      & 
     93         &             ln_cpl   , ln_mixcpl  , nn_components,                      & 
     94         &             nn_ice   , ln_ice_embd,                                     & 
     95         &             ln_traqsr, ln_dm2dc   ,                                     & 
     96         &             ln_rnf   , nn_fwb     , ln_ssr   , ln_apr_dyn,              & 
     97         &             ln_wave  , ln_cdgw    , ln_sdw   , ln_tauwoc , ln_stcor,    & 
     98         &             ln_tauw  , nn_lsm     , nn_sdrift 
    10199      !!---------------------------------------------------------------------- 
    102100      ! 
     
    153151         WRITE(numout,*) '         Patm gradient added in ocean & ice Eqs.    ln_apr_dyn    = ', ln_apr_dyn 
    154152         WRITE(numout,*) '         runoff / runoff mouths                     ln_rnf        = ', ln_rnf 
    155          WRITE(numout,*) '         iceshelf formulation                       ln_isf        = ', ln_isf 
    156153         WRITE(numout,*) '         nb of iterations if land-sea-mask applied  nn_lsm        = ', nn_lsm 
    157154         WRITE(numout,*) '         surface wave                               ln_wave       = ', ln_wave 
     
    239236#endif 
    240237      ! 
    241       IF( .NOT.ln_isf ) THEN        !* No ice-shelf in the domain : allocate and set to zero 
    242          IF( sbc_isf_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'sbc_init : unable to allocate sbc_isf arrays' ) 
    243          fwfisf  (:,:)   = 0._wp   ;   risf_tsc  (:,:,:) = 0._wp 
    244          fwfisf_b(:,:)   = 0._wp   ;   risf_tsc_b(:,:,:) = 0._wp 
    245       END IF 
    246238      ! 
    247239      IF( sbc_ssr_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'sbc_init : unable to allocate sbc_ssr arrays' ) 
     
    341333      IF( ln_ssr      )   CALL sbc_ssr_init            ! Sea-Surface Restoring initialization 
    342334      ! 
    343       IF( ln_isf      )   CALL sbc_isf_init            ! Compute iceshelves 
    344       ! 
    345335                          CALL sbc_rnf_init            ! Runof initialization 
    346336      ! 
     
    409399            rnf_b    (:,:  ) = rnf    (:,:  ) 
    410400            rnf_tsc_b(:,:,:) = rnf_tsc(:,:,:) 
    411          ENDIF 
    412          IF( ln_isf )  THEN 
    413             fwfisf_b  (:,:  ) = fwfisf  (:,:  )                
    414             risf_tsc_b(:,:,:) = risf_tsc(:,:,:)               
    415401         ENDIF 
    416402        ! 
     
    462448         IF( .NOT. ln_passive_mode ) CALL lbc_lnk( 'sbcmod', emp, 'T', 1. ) ! ensure restartability with icebergs 
    463449      ENDIF 
    464  
    465       IF( ln_isf         )   CALL sbc_isf( kt )                   ! compute iceshelves 
    466450 
    467451      IF( ln_rnf         )   CALL sbc_rnf( kt )                   ! add runoffs to fresh water fluxes 
     
    568552      ! 
    569553      IF(ln_ctl) THEN         ! print mean trends (used for debugging) 
    570          CALL prt_ctl(tab2d_1=fr_i              , clinfo1=' fr_i    - : ', mask1=tmask ) 
    571          CALL prt_ctl(tab2d_1=(emp-rnf + fwfisf), clinfo1=' emp-rnf - : ', mask1=tmask ) 
    572          CALL prt_ctl(tab2d_1=(sfx-rnf + fwfisf), clinfo1=' sfx-rnf - : ', mask1=tmask ) 
     554         CALL prt_ctl(tab2d_1=fr_i             , clinfo1=' fr_i     - : ', mask1=tmask ) 
     555         CALL prt_ctl(tab2d_1=(emp-rnf)        , clinfo1=' emp-rnf - : ', mask1=tmask ) 
     556         CALL prt_ctl(tab2d_1=(sfx-rnf)        , clinfo1=' sfx-rnf - : ', mask1=tmask ) 
    573557         CALL prt_ctl(tab2d_1=qns              , clinfo1=' qns      - : ', mask1=tmask ) 
    574558         CALL prt_ctl(tab2d_1=qsr              , clinfo1=' qsr      - : ', mask1=tmask ) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/SBC/sbcssm.F90

    r12660 r12721  
    7070      ! 
    7171      !                                        !* surface T-, U-, V- ocean level variables (T, S, depth, velocity) 
    72       DO jj = 1, jpj 
    73          DO ji = 1, jpi 
    74             zts(ji,jj,jp_tem) = tsn(ji,jj,mikt(ji,jj),jp_tem) 
    75             zts(ji,jj,jp_sal) = tsn(ji,jj,mikt(ji,jj),jp_sal) 
    76          END DO 
    77       END DO 
     72      zts(:,:,jp_tem) = tsn(:,:,1,jp_tem) 
     73      zts(:,:,jp_sal) = tsn(:,:,1,jp_sal) 
    7874      ! 
    7975      IF( nn_fsbc == 1 ) THEN                             !   Instantaneous surface fields        ! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/TRA/tranxt.F90

    r12658 r12721  
    2828   USE sbc_oce         ! surface boundary condition: ocean 
    2929   USE sbcrnf          ! river runoffs 
    30    USE sbcisf          ! ice shelf melting 
     30   USE isf_oce         ! ice shelf melting 
    3131   USE zdf_oce         ! ocean vertical mixing 
    3232   USE domvvl          ! variable volume 
     
    312312                  ztc_f  = ztc_n  + atfp * ztc_d 
    313313                  ! 
    314                   zscale = zfact2 * e3t_n(ji,jj,jk) / ( ht_n(ji,jj) + 1._wp - ssmask(ji,jj) ) 
    315                   ze3t_f = ze3t_f - zscale * ( emp_b(ji,jj) - emp(ji,jj) ) 
    316                   IF ( ll_rnf ) ze3t_f = ze3t_f + zscale * (    rnf_b(ji,jj) -    rnf(ji,jj) ) 
    317                   IF ( ll_isf ) ze3t_f = ze3t_f - zscale * ( fwfisf_b(ji,jj) - fwfisf(ji,jj) ) 
    318  
    319                   IF( jk == mikt(ji,jj) ) THEN           ! first level  
     314                  IF( jk == 1 ) THEN           ! first level  
     315                     ze3t_f = ze3t_f - zfact2 * ( emp_b(ji,jj) - emp(ji,jj)   ) 
    320316                     ztc_f  = ztc_f  - zfact1 * ( psbc_tc(ji,jj,jn) - psbc_tc_b(ji,jj,jn) ) 
     317                  ENDIF 
     318                  ! 
     319                  ! river runoff 
     320                  IF( ln_rnf_depth ) THEN 
     321                     ! Rivers are not just at the surface must go down to nk_rnf(ji,jj) 
     322                     IF( jk <= nk_rnf(ji,jj)  ) THEN 
     323                        ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj) - rnf(ji,jj)   )  ) & 
     324                    &                            * ( e3t_n(ji,jj,jk) / h_rnf(ji,jj) )  
     325                     ENDIF 
     326                  ELSE 
     327                     IF( jk == 1 ) THEN           ! first level  
     328                        ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj)    - rnf(ji,jj)   ) )  
     329                     ENDIF 
    321330                  ENDIF 
    322331                  ! 
     
    324333                  IF( ll_traqsr .AND. jn == jp_tem .AND. jk <= nksr )                            &  
    325334                     &     ztc_f  = ztc_f  - zfact1 * ( qsr_hc(ji,jj,jk) - qsr_hc_b(ji,jj,jk) )  
    326                      ! 
    327                   ! river runoff 
     335                  ! 
    328336                  IF( ll_rnf .AND. jk <= nk_rnf(ji,jj) )                                          & 
    329337                     &     ztc_f  = ztc_f  - zfact1 * ( rnf_tsc(ji,jj,jn) - rnf_tsc_b(ji,jj,jn) ) &  
    330338                     &                              * e3t_n(ji,jj,jk) / h_rnf(ji,jj) 
    331                      ! 
     339                  ! 
    332340                  ! ice shelf 
    333341                  IF( ll_isf ) THEN 
    334                      ! level fully include in the Losch_2008 ice shelf boundary layer 
    335                      IF ( jk >= misfkt(ji,jj) .AND. jk < misfkb(ji,jj) )                          & 
    336                         ztc_f  = ztc_f  - zfact1 * ( risf_tsc(ji,jj,jn) - risf_tsc_b(ji,jj,jn) )  & 
    337                                &                 * e3t_n(ji,jj,jk) * r1_hisf_tbl (ji,jj) 
    338                      ! level partially include in Losch_2008 ice shelf boundary layer  
    339                      IF ( jk == misfkb(ji,jj) )                                                   & 
    340                         ztc_f  = ztc_f  - zfact1 * ( risf_tsc(ji,jj,jn) - risf_tsc_b(ji,jj,jn) )  & 
    341                                &                 * e3t_n(ji,jj,jk) * r1_hisf_tbl (ji,jj) * ralpha(ji,jj) 
     342                     ! 
     343                     ! melt in the cavity 
     344                     IF ( ln_isfcav_mlt ) THEN 
     345                        ! level fully include in the Losch_2008 ice shelf boundary layer 
     346                        IF ( jk >= misfkt_cav(ji,jj) .AND. jk < misfkb_cav(ji,jj) ) THEN 
     347                           ztc_f  = ztc_f  - zfact1 * ( risf_cav_tsc(ji,jj,jn) - risf_cav_tsc_b(ji,jj,jn) ) & 
     348                              &                     * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) 
     349                           ze3t_f = ze3t_f - zfact2 * ( fwfisf_cav_b(ji,jj) - fwfisf_cav(ji,jj) )           & 
     350                              &                     * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) 
     351                        END IF 
     352                        ! level partially include in Losch_2008 ice shelf boundary layer  
     353                        IF ( jk == misfkb_cav(ji,jj) ) THEN 
     354                           ztc_f  = ztc_f  - zfact1 * ( risf_cav_tsc(ji,jj,jn) - risf_cav_tsc_b(ji,jj,jn) )  & 
     355                                  &                 * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) * rfrac_tbl_cav(ji,jj) 
     356                           ze3t_f = ze3t_f - zfact2 * ( fwfisf_cav_b(ji,jj) - fwfisf_cav(ji,jj) )            & 
     357                              &                     * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) * rfrac_tbl_cav(ji,jj) 
     358                        END IF 
     359                     END IF 
     360                     ! 
     361                     ! parametrised melt (cavity closed) 
     362                     IF ( ln_isfpar_mlt ) THEN 
     363                        ! level fully include in the Losch_2008 ice shelf boundary layer 
     364                        IF ( jk >= misfkt_par(ji,jj) .AND. jk < misfkb_par(ji,jj) ) THEN 
     365                           ztc_f  = ztc_f  - zfact1 * ( risf_par_tsc(ji,jj,jn) - risf_par_tsc_b(ji,jj,jn) )  & 
     366                                  &                 * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) 
     367                           ze3t_f = ze3t_f - zfact2 * ( fwfisf_par_b(ji,jj) - fwfisf_par(ji,jj) )            & 
     368                              &                     * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) 
     369                        END IF 
     370                        ! level partially include in Losch_2008 ice shelf boundary layer  
     371                        IF ( jk == misfkb_par(ji,jj) ) THEN 
     372                           ztc_f  = ztc_f  - zfact1 * ( risf_par_tsc(ji,jj,jn) - risf_par_tsc_b(ji,jj,jn) )  & 
     373                                  &                 * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) * rfrac_tbl_par(ji,jj) 
     374                           ze3t_f = ze3t_f - zfact2 * ( fwfisf_par_b(ji,jj) - fwfisf_par(ji,jj) )            & 
     375                              &                     * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) * rfrac_tbl_par(ji,jj) 
     376                        END IF 
     377                     END IF 
     378                     ! 
     379                     ! ice sheet coupling correction 
     380                     IF ( ln_isfcpl ) THEN 
     381                        ! 
     382                        ! at kt = nit000,  risfcpl_vol_n = 0 and risfcpl_vol_b = risfcpl_vol so contribution nul 
     383                        IF ( ln_rstart .AND. kt == nit000+1 ) THEN 
     384                           ztc_f  = ztc_f  + zfact1 * risfcpl_tsc(ji,jj,jk,jn) * r1_e1e2t(ji,jj) 
     385                           ze3t_f = ze3t_f - zfact1 * risfcpl_vol(ji,jj,jk   ) * r1_e1e2t(ji,jj) 
     386                        END IF 
     387                        ! 
     388                     END IF 
     389                     ! 
    342390                  END IF 
    343391                  ! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/TRA/trasbc.F90

    r12658 r12721  
    1010   !!             -   !  2010-09  (C. Ethe, G. Madec) Merge TRA-TRC 
    1111   !!            3.6  !  2014-11  (P. Mathiot) isf melting forcing  
     12   !!            4.1  !  2019-09  (P. Mathiot) isf moved in traisf 
    1213   !!---------------------------------------------------------------------- 
    1314 
     
    2223   USE sbcmod         ! ln_rnf   
    2324   USE sbcrnf         ! River runoff   
    24    USE sbcisf         ! Ice shelf    
    25    USE iscplini       ! Ice sheet coupling 
    2625   USE traqsr         ! solar radiation penetration 
    2726   USE trd_oce        ! trends: ocean variables 
     
    6261      !!      (1) Fext, external forcing (i.e. flux through the (air+ice)-sea interface);  
    6362      !!      (2) Fwe , tracer carried with the water that is exchanged with air+ice.  
    64       !!               The input forcing fields (emp, rnf, sfx, isf) contain Fext+Fwe, 
     63      !!               The input forcing fields (emp, rnf, sfx) contain Fext+Fwe, 
    6564      !!             they are simply added to the tracer trend (tsa). 
    6665      !!               In linear free surface case (ln_linssh=T), the volume of the 
     
    153152         IF( lwxios ) CALL iom_swap(      cxios_context          ) 
    154153      ENDIF 
    155       ! 
    156       !---------------------------------------- 
    157       !       Ice Shelf effects (ISF) 
    158       !     tbl treated as in Losh (2008) JGR 
    159       !---------------------------------------- 
    160       ! 
    161 !!gm BUG ?   Why no differences between non-linear and linear free surface ? 
    162 !!gm         probably taken into account in r1_hisf_tbl : to be verified 
    163       IF( ln_isf ) THEN 
    164          zfact = 0.5_wp 
    165          DO jj = 2, jpj 
    166             DO ji = fs_2, fs_jpim1 
    167                ! 
    168                ikt = misfkt(ji,jj) 
    169                ikb = misfkb(ji,jj) 
    170                ! 
    171                ! level fully include in the ice shelf boundary layer 
    172                ! sign - because fwf sign of evapo (rnf sign of precip) 
    173                DO jk = ikt, ikb - 1 
    174                ! compute trend 
    175                   tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem)                                                & 
    176                      &           + zfact * ( risf_tsc_b(ji,jj,jp_tem) + risf_tsc(ji,jj,jp_tem) )             & 
    177                      &           * r1_hisf_tbl(ji,jj) 
    178                END DO 
    179     
    180                ! level partially include in ice shelf boundary layer  
    181                ! compute trend 
    182                tsa(ji,jj,ikb,jp_tem) = tsa(ji,jj,ikb,jp_tem)                                                 & 
    183                   &              + zfact * ( risf_tsc_b(ji,jj,jp_tem) + risf_tsc(ji,jj,jp_tem) )             & 
    184                   &              * r1_hisf_tbl(ji,jj) * ralpha(ji,jj) 
    185  
    186             END DO 
    187          END DO 
    188       END IF 
    189154      ! 
    190155      !---------------------------------------- 
     
    242207#endif 
    243208      ! 
    244       !---------------------------------------- 
    245       !        Ice Sheet coupling imbalance correction to have conservation 
    246       !---------------------------------------- 
    247       ! 
    248       IF( ln_iscpl .AND. ln_hsb) THEN         ! input of heat and salt due to river runoff  
    249          DO jk = 1,jpk 
    250             DO jj = 2, jpj  
    251                DO ji = fs_2, fs_jpim1 
    252                   zdep = 1._wp / e3t_n(ji,jj,jk)  
    253                   tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) - htsc_iscpl(ji,jj,jk,jp_tem) * zdep 
    254                   tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) - htsc_iscpl(ji,jj,jk,jp_sal) * zdep   
    255                END DO   
    256             END DO   
    257          END DO 
    258       ENDIF 
    259  
    260209      IF( l_trdtra )   THEN                      ! save the horizontal diffusive trends for further diagnostics 
    261210         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) - ztrdt(:,:,:) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/ZDF/zdfmxl.F90

    r12660 r12721  
    1212   !!---------------------------------------------------------------------- 
    1313   USE oce            ! ocean dynamics and tracers variables 
     14   USE isf_oce        ! ice shelf 
    1415   USE dom_oce        ! ocean space and time domain variables 
    1516   USE trc_oce  , ONLY: l_offline         ! ocean space and time domain variables 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/nemogcm.F90

    r12658 r12721  
    6161   USE diaharm        ! tidal harmonics diagnostics  (dia_harm_init routine) 
    6262   USE step           ! NEMO time-stepping                 (stp     routine) 
     63   USE isfstp         ! ice shelf                     (isf_stp_init routine) 
    6364   USE icbini         ! handle bergs, initialisation 
    6465   USE icbstp         ! handle bergs, calving, themodynamics and transport 
     
    430431         RETURN                                       ! end of initialization 
    431432      ENDIF 
     433      ! 
    432434       
    433435                           CALL  istate_init    ! ocean initial state (Dynamics and tracers) 
     
    470472      !                                      ! Icebergs 
    471473                           CALL icb_init( rdt, nit000)   ! initialise icebergs instance 
     474 
     475                                                ! ice shelf 
     476                           CALL isf_init 
    472477 
    473478      !                                      ! Misc. options 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/step.F90

    r12660 r12721  
    113113      IF( ln_apr_dyn )   CALL sbc_apr ( kstp )                   ! atmospheric pressure (NB: call before bdy_dta which needs ssh_ib)  
    114114      IF( ln_bdy     )   CALL bdy_dta ( kstp, kt_offset = +1 )   ! update dynamic & tracer data at open boundaries 
     115      IF( ln_isf     )   CALL isf_stp ( kstp )                   ! ice shelf/ocean boundary condition 
    115116                         CALL sbc     ( kstp )                   ! Sea Boundary Condition (including sea-ice) 
    116117 
     
    230231                         CALL tra_sbc       ( kstp )  ! surface boundary condition 
    231232      IF( ln_traqsr  )   CALL tra_qsr       ( kstp )  ! penetrative solar radiation qsr 
     233      IF( ln_isf     )   CALL tra_isf       ( kstp )  ! ice shelf heat flux 
    232234      IF( ln_trabbc  )   CALL tra_bbc       ( kstp )  ! bottom heat flux 
    233235      IF( ln_trabbl  )   CALL tra_bbl       ( kstp )  ! advective (and/or diffusive) bottom boundary layer scheme 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/src/OCE/step_oce.F90

    r12660 r12721  
    2222   USE sbcwave         ! Wave intialisation 
    2323 
     24   USE isf_oce         ! ice shelf boundary condition 
     25   USE isfstp          ! ice shelf boundary condition     (isf_stp routine) 
     26 
    2427   USE traqsr          ! solar radiation penetration      (tra_qsr routine) 
     28   USE traisf          ! ice shelf                        (tra_isf routine) 
    2529   USE trasbc          ! surface boundary condition       (tra_sbc routine) 
    2630   USE trabbc          ! bottom boundary condition        (tra_bbc routine) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/ISOMIP/EXPREF/file_def_nemo-oce.xml

    r9572 r12721  
    2727     <field field_ref="ssh"          name="sossheig"  /> 
    2828          <!-- variable for ice shelf --> 
    29           <field field_ref="qlatisf"      name="sohflisf"  /> 
    30           <field field_ref="fwfisf"       name="sowflisf"  /> 
     29          <field field_ref="fwfisf_cav"       name="sowflisf"  /> 
    3130          <field field_ref="isfgammat"    name="sogammat"  /> 
    3231          <field field_ref="isfgammas"    name="sogammas"  /> 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/ISOMIP/EXPREF/namelist_cfg

    r12206 r12721  
    4646   rn_rdt      = 1800.     !  time step for the dynamics (and tracer if nn_acc=0) 
    4747/ 
     48!----------------------------------------------------------------------- 
     49&namcfg        !   parameters of the configuration                      (default: use namusr_def in namelist_cfg) 
     50!----------------------------------------------------------------------- 
     51/ 
     52!----------------------------------------------------------------------- 
     53&namtsd        !    Temperature & Salinity Data  (init/dmp)             (default: OFF) 
     54!----------------------------------------------------------------------- 
     55    
     56/ 
     57!----------------------------------------------------------------------- 
     58&namwad        !   Wetting and Drying (WaD)                             (default: OFF) 
     59!----------------------------------------------------------------------- 
     60/ 
     61!----------------------------------------------------------------------- 
     62&namcrs        !   coarsened grid (for outputs and/or TOP)              (ln_crs =T) 
     63!----------------------------------------------------------------------- 
     64/ 
     65!----------------------------------------------------------------------- 
     66&namc1d        !   1D configuration options                             ("key_c1d" default: PAPA station) 
     67!----------------------------------------------------------------------- 
     68/ 
     69!----------------------------------------------------------------------- 
     70&namc1d_dyndmp !   U & V newtonian damping                              ("key_c1d" default: OFF) 
     71!----------------------------------------------------------------------- 
     72/ 
     73!----------------------------------------------------------------------- 
     74&namc1d_uvd    !   data: U & V currents                                 ("key_c1d" default: OFF) 
     75!----------------------------------------------------------------------- 
     76 
     77/ 
     78 
    4879!!====================================================================== 
    4980!!            ***  Surface Boundary Condition namelists  ***          !! 
     
    6697! 
    6798!----------------------------------------------------------------------- 
    68 &namsbc        !   Surface Boundary Condition (surface module) 
    69 !----------------------------------------------------------------------- 
    70    nn_fsbc     = 1         !  frequency of surface boundary condition computation 
     99&namsbc        !   Surface Boundary Condition manager                   (default: NO selection) 
     100!----------------------------------------------------------------------- 
     101   nn_fsbc     = 1         !  frequency of SBC module call 
     102      !                    !  (control sea-ice & iceberg model call) 
    71103   ln_usr      = .true.    !  user defined formulation                  (T => check usrdef_sbc) 
    72    ln_isf      = .true.    !  ice shelf melting/freezing                (T => fill namsbc_isf) 
    73 / 
    74 !----------------------------------------------------------------------- 
    75 &namsbc_isf    !  Top boundary layer (ISF)                              (ln_isfcav =T : read (ln_read_cfg=T)  
    76 !-----------------------------------------------------------------------             or set or usr_def_zgr ) 
    77 !              ! file name ! frequency (hours) ! variable ! time interpol. !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    78 !              !           !  (if <0  months)  !   name   !    (logical)   !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    79 ! nn_isf == 4 
    80    sn_fwfisf   = 'rnfisf'  ,         -12.      ,'sowflisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    81 ! nn_isf == 3 
    82    sn_rnfisf   = 'rnfisf'  ,         -12.      ,'sofwfisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    83 ! nn_isf == 2 and 3 
    84    sn_depmax_isf = 'rnfisf' ,        -12.      ,'sozisfmax' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    85    sn_depmin_isf = 'rnfisf' ,        -12.      ,'sozisfmin' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    86 ! nn_isf == 2 
    87    sn_Leff_isf = 'rnfisf'  ,         -12.      ,'Leff'    ,     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    88 ! for all case 
    89    nn_isf      = 1         !  ice shelf melting/freezing 
    90                            !  1 = presence of ISF    2 = bg03 parametrisation  
    91                            !  3 = rnf file for isf   4 = ISF fwf specified 
    92                            !  option 1 and 4 need ln_isfcav = .true. (domzgr) 
    93 ! only for nn_isf = 1 or 2 
    94    rn_gammat0  = 1.0e-4   ! gammat coefficient used in blk formula 
    95    rn_gammas0  = 1.0e-4   ! gammas coefficient used in blk formula 
    96 ! only for nn_isf = 1 or 4 
    97    rn_hisf_tbl =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
    98                           ! 0 => thickness of the tbl = thickness of the first wet cell 
    99 ! only for nn_isf = 1 
    100    nn_isfblk   = 1        ! 1 ISOMIP  like: 2 equations formulation (Hunter et al., 2006) 
    101                           ! 2 ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2015) 
    102    nn_gammablk = 0        ! 0 = cst Gammat (= gammat/s) 
    103                           ! 1 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
    104                           ! 2 = velocity and stability dependent Gamma    (Holland et al. 1999) 
    105 / 
    106 !----------------------------------------------------------------------- 
    107 &namsbc_iscpl  !   land ice / ocean coupling option                      
    108 !----------------------------------------------------------------------- 
    109 / 
     104/ 
     105!----------------------------------------------------------------------- 
     106&namsbc_flx    !   surface boundary condition : flux formulation        (ln_flx =T) 
     107!----------------------------------------------------------------------- 
     108/ 
     109!----------------------------------------------------------------------- 
     110&namsbc_blk    !   namsbc_blk  generic Bulk formula                     (ln_blk =T) 
     111!----------------------------------------------------------------------- 
     112 
     113/ 
     114!----------------------------------------------------------------------- 
     115&namsbc_cpl    !   coupled ocean/atmosphere model                       ("key_oasis3") 
     116!----------------------------------------------------------------------- 
     117 
     118/ 
     119!----------------------------------------------------------------------- 
     120&namsbc_sas    !   Stand-Alone Surface module: ocean data               (SAS_SRC  only) 
     121!----------------------------------------------------------------------- 
     122 
     123/ 
     124!----------------------------------------------------------------------- 
     125&namsbc_iif    !   Ice-IF : use observed ice cover                      (nn_ice = 1) 
     126!----------------------------------------------------------------------- 
     127/ 
     128!----------------------------------------------------------------------- 
     129&namtra_qsr    !   penetrative solar radiation                          (ln_traqsr =T) 
     130!----------------------------------------------------------------------- 
     131    
     132/ 
     133!----------------------------------------------------------------------- 
     134&namsbc_ssr    !   surface boundary condition : sea surface restoring   (ln_ssr =T) 
     135!----------------------------------------------------------------------- 
     136 
     137/ 
     138!----------------------------------------------------------------------- 
     139&namsbc_rnf    !   runoffs                                              (ln_rnf =T) 
     140!----------------------------------------------------------------------- 
     141 
     142/ 
     143!----------------------------------------------------------------------- 
     144&namsbc_apr    !   Atmospheric pressure used as ocean forcing           (ln_apr_dyn =T) 
     145!----------------------------------------------------------------------- 
     146 
     147/ 
     148!----------------------------------------------------------------------- 
     149&namisf       !  Top boundary layer (ISF)                               (default: OFF) 
     150!----------------------------------------------------------------------- 
     151   ! 
     152   ! ---------------- ice shelf load ------------------------------- 
     153   ! 
     154   ! 
     155   ! ---------------- ice shelf melt formulation ------------------------------- 
     156   ! 
     157   ln_isf = .true.           ! activate ice shelf module 
     158      cn_isfdir = './'           ! directory for all ice shelf input file 
     159      ! 
     160      ! ---------------- cavities opened ------------------------------- 
     161      ! 
     162      ln_isfcav_mlt = .true.    ! ice shelf melting into the cavity (need ln_isfcav = .true. in domain_cfg.nc) 
     163         cn_isfcav_mlt = '2eq'   ! ice shelf melting formulation (spe/2eq/3eq/oasis) 
     164         !                       ! spe = fwfisf is read from a forcing field 
     165         !                       ! 2eq = ISOMIP  like: 2 equations formulation (Hunter et al., 2006) 
     166         !                       ! 3eq = ISOMIP+ like: 3 equations formulation (Asay-Davis et al., 2015) 
     167         !                       ! oasis = fwfisf is given by oasis and pattern by file sn_isfcav_fwf 
     168         !              !  cn_isfcav_mlt = 2eq or 3eq cases: 
     169         cn_gammablk = 'spe'    ! scheme to compute gammat/s (spe,ad15,hj99) 
     170         !                       ! ad15 = velocity dependend Gamma (u* * gammat/s)  (Jenkins et al. 2010) 
     171         !                       ! hj99 = velocity and stability dependent Gamma    (Holland et al. 1999) 
     172         rn_gammat0  = 1.e-4     ! gammat coefficient used in blk formula 
     173         rn_gammas0  = 1.e-4     ! gammas coefficient used in blk formula 
     174         ! 
     175         rn_htbl     =  30.      ! thickness of the top boundary layer    (Losh et al. 2008) 
     176         !                       ! 0 => thickness of the tbl = thickness of the first wet cell 
     177         ! 
     178/ 
     179!----------------------------------------------------------------------- 
     180&namsbc_wave   ! External fields from wave model                        (ln_wave=T) 
     181!----------------------------------------------------------------------- 
     182/ 
     183!----------------------------------------------------------------------- 
     184&namberg       !   iceberg parameters                                   (default: OFF) 
     185!----------------------------------------------------------------------- 
     186 
     187/ 
     188 
    110189!!====================================================================== 
    111190!!               ***  Lateral boundary condition  ***                 !! 
     
    124203   rn_shlat    =    0.     !  free slip 
    125204/ 
     205!----------------------------------------------------------------------- 
     206&namagrif      !  AGRIF zoom                                            ("key_agrif") 
     207!----------------------------------------------------------------------- 
     208/ 
     209!----------------------------------------------------------------------- 
     210&nam_tide      !   tide parameters                                      (default: OFF) 
     211!----------------------------------------------------------------------- 
     212/ 
     213!----------------------------------------------------------------------- 
     214&nambdy        !  unstructured open boundaries                          (default: OFF) 
     215!----------------------------------------------------------------------- 
     216/ 
     217!----------------------------------------------------------------------- 
     218&nambdy_dta    !  open boundaries - external data                       (see nam_bdy) 
     219!----------------------------------------------------------------------- 
     220 
     221/ 
     222!----------------------------------------------------------------------- 
     223&nambdy_tide   !  tidal forcing at open boundaries                      (default: OFF) 
     224!----------------------------------------------------------------------- 
     225/ 
     226 
    126227!!====================================================================== 
    127228!!                ***  Top/Bottom boundary condition  ***             !! 
     
    145246/ 
    146247!----------------------------------------------------------------------- 
    147 &namdrg_top    !   TOP friction                                         (ln_isfcav=T) 
     248&namdrg_top    !   TOP friction                                         (ln_OFF =F & ln_isfcav=T) 
    148249!----------------------------------------------------------------------- 
    149250   rn_Cd0     =  2.5e-3    !  drag coefficient [-] 
     
    156257/ 
    157258!----------------------------------------------------------------------- 
    158 &namdrg_bot    !   BOTTOM friction                                   
     259&namdrg_bot    !   BOTTOM friction                                      (ln_OFF =F) 
    159260!----------------------------------------------------------------------- 
    160261   rn_Cd0     =  1.e-3    !  drag coefficient [-] 
     
    166267      rn_boost =  50.         !  local boost factor  [-] 
    167268/ 
     269!----------------------------------------------------------------------- 
     270&nambbc        !   bottom temperature boundary condition                (default: OFF) 
     271!----------------------------------------------------------------------- 
     272 
     273/ 
     274!----------------------------------------------------------------------- 
     275&nambbl        !   bottom boundary layer scheme                         (default: OFF) 
     276!----------------------------------------------------------------------- 
     277/ 
     278 
    168279!!====================================================================== 
    169280!!                        Tracer (T-S) namelists                      !! 
     
    178289! 
    179290!----------------------------------------------------------------------- 
    180 &nameos        !   ocean Equation Of Seawater                           (default: OFF) 
     291&nameos        !   ocean Equation Of Seawater                           (default: NO selection) 
    181292!----------------------------------------------------------------------- 
    182293   ln_eos80    = .true.          !  = Use EOS80 equation of state 
     
    199310      rn_Ld        = 10.e+3         !  lateral diffusive length   [m] 
    200311/ 
     312!----------------------------------------------------------------------- 
     313&namtra_mle    !   mixed layer eddy parametrisation (Fox-Kemper)       (default: OFF) 
     314!----------------------------------------------------------------------- 
     315/ 
     316!----------------------------------------------------------------------- 
     317&namtra_eiv    !   eddy induced velocity param.                         (default: OFF) 
     318!----------------------------------------------------------------------- 
     319/ 
     320!----------------------------------------------------------------------- 
     321&namtra_dmp    !   tracer: T & S newtonian damping                      (default: OFF) 
     322!----------------------------------------------------------------------- 
     323/ 
     324 
    201325!!====================================================================== 
    202326!!                      ***  Dynamics namelists  ***                  !! 
     
    212336! 
    213337!----------------------------------------------------------------------- 
     338&nam_vvl       !   vertical coordinate options                          (default: z-star) 
     339!----------------------------------------------------------------------- 
     340/ 
     341!----------------------------------------------------------------------- 
    214342&namdyn_adv    !   formulation of the momentum advection                (default: NO selection) 
    215343!----------------------------------------------------------------------- 
     
    218346/ 
    219347!----------------------------------------------------------------------- 
    220 &namdyn_vor    !   Vorticity / Coriolis scheme                          (default: OFF) 
     348&namdyn_vor    !   Vorticity / Coriolis scheme                          (default: NO selection) 
    221349!----------------------------------------------------------------------- 
    222350   ln_dynvor_ene = .true.  !  energy conserving scheme 
     
    241369      rn_Lv      = 10.e+3           !  lateral viscous length   [m] 
    242370/ 
     371!----------------------------------------------------------------------- 
     372&namdta_dyn    !   offline ocean input files                            (OFF_SRC only) 
     373!----------------------------------------------------------------------- 
     374 
     375/ 
     376 
    243377!!====================================================================== 
    244378!!                     vertical physics namelists                     !! 
     
    253387! 
    254388!----------------------------------------------------------------------- 
    255 &namzdf        !   vertical physics                                     (default: NO selection) 
    256 !----------------------------------------------------------------------- 
    257    !                       ! type of vertical closure 
     389&namzdf        !   vertical physics manager                             (default: NO selection) 
     390!----------------------------------------------------------------------- 
     391   !                       ! type of vertical closure (required) 
    258392   ln_zdfcst   = .true.       !  constant mixing 
     393   ! 
     394   !                       ! convection 
    259395   ln_zdfevd   = .true.       !  enhanced vertical diffusion 
    260396      nn_evdm     =    1         ! apply on tracer (=0) or on tracer and momentum (=1) 
    261397      rn_evd      =   0.1        ! mixing coefficient [m2/s] 
    262398   !                       ! coefficients 
    263    rn_avm0     =   1.e-3     !  vertical eddy viscosity   [m2/s] 
    264    rn_avt0     =   5.e-5     !  vertical eddy diffusivity [m2/s] 
    265 / 
     399   rn_avm0     =   1.e-3      !  vertical eddy viscosity   [m2/s]       (background Kz if ln_zdfcst) 
     400   rn_avt0     =   5.e-5      !  vertical eddy diffusivity [m2/s]       (background Kz if ln_zdfcst) 
     401/ 
     402!----------------------------------------------------------------------- 
     403&namzdf_ric    !   richardson number dependent vertical diffusion       (ln_zdfric =T) 
     404!----------------------------------------------------------------------- 
     405/ 
     406!----------------------------------------------------------------------- 
     407&namzdf_tke    !   turbulent eddy kinetic dependent vertical diffusion  (ln_zdftke =T) 
     408!----------------------------------------------------------------------- 
     409/ 
     410!----------------------------------------------------------------------- 
     411&namzdf_gls    !   GLS vertical diffusion                               (ln_zdfgls =T) 
     412!----------------------------------------------------------------------- 
     413/ 
     414!----------------------------------------------------------------------- 
     415&namzdf_osm    !   OSM vertical diffusion                               (ln_zdfosm =T) 
     416!----------------------------------------------------------------------- 
     417/ 
     418!----------------------------------------------------------------------- 
     419&namzdf_iwm    !    internal wave-driven mixing parameterization        (ln_zdfiwm =T) 
     420!----------------------------------------------------------------------- 
     421/ 
     422 
    266423!!====================================================================== 
    267424!!                  ***  Diagnostics namelists  ***                   !! 
     
    279436!!====================================================================== 
    280437! 
     438!----------------------------------------------------------------------- 
     439&namtrd        !   trend diagnostics                                    (default: OFF) 
     440!----------------------------------------------------------------------- 
     441/ 
     442!----------------------------------------------------------------------- 
     443&namptr        !   Poleward Transport Diagnostic                        (default: OFF) 
     444!----------------------------------------------------------------------- 
     445/ 
     446!----------------------------------------------------------------------- 
     447&namhsb        !  Heat and salt budgets                                 (default: OFF) 
     448!----------------------------------------------------------------------- 
     449/ 
     450!----------------------------------------------------------------------- 
     451&namdiu        !   Cool skin and warm layer models                      (default: OFF) 
     452!----------------------------------------------------------------------- 
     453/ 
     454!----------------------------------------------------------------------- 
     455&namflo        !   float parameters                                     ("key_float") 
     456!----------------------------------------------------------------------- 
     457/ 
     458!----------------------------------------------------------------------- 
     459&nam_diaharm   !   Harmonic analysis of tidal constituents              ("key_diaharm") 
     460!----------------------------------------------------------------------- 
     461/ 
     462!----------------------------------------------------------------------- 
     463&namdct        ! transports through some sections                       ("key_diadct") 
     464!----------------------------------------------------------------------- 
     465/ 
     466!----------------------------------------------------------------------- 
     467&nam_diatmb    !  Top Middle Bottom Output                              (default: OFF) 
     468!----------------------------------------------------------------------- 
     469/ 
     470!----------------------------------------------------------------------- 
     471&nam_dia25h    !  25h Mean Output                                       (default: OFF) 
     472!----------------------------------------------------------------------- 
     473/ 
     474!----------------------------------------------------------------------- 
     475&namnc4        !   netcdf4 chunking and compression settings            ("key_netcdf4") 
     476!----------------------------------------------------------------------- 
     477/ 
     478 
    281479!!====================================================================== 
    282480!!               ***  Observation & Assimilation  ***                 !! 
     
    286484!!====================================================================== 
    287485! 
     486!----------------------------------------------------------------------- 
     487&namobs        !  observation usage switch                              (default: OFF) 
     488!----------------------------------------------------------------------- 
     489/ 
     490!----------------------------------------------------------------------- 
     491&nam_asminc    !   assimilation increments                              ('key_asminc') 
     492!----------------------------------------------------------------------- 
     493/ 
     494 
    288495!!====================================================================== 
    289496!!                  ***  Miscellaneous namelists  ***                 !! 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_cen2_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_ubs_cfg

    r12206 r12721  
    4646!----------------------------------------------------------------------- 
    4747   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    48    ! 
    49    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    5048   ! 
    5149   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_eenH_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_een_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_ene_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_ens_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_flux_cen2_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_flux_ubs_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_eenH_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_een_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_ene_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_ens_cfg

    r10075 r12721  
    3232!----------------------------------------------------------------------- 
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    34    ! 
    35    rn_isfhmin  =    0.00   !  treshold (m) to discriminate grounding ice to floating ice 
    3634   ! 
    3735   rn_rdt      =    1.     !  time step for the dynamics (and tracer if nn_acc=0) 
  • NEMO/branches/UKMO/NEMO_4.0.2_GO8_package_ENHANCE-02_ISF_nemo/tests/demo_cfgs.txt

    r10516 r12721  
    11CANAL OCE 
    22ISOMIP OCE 
     3ISOMIP+ OCE 
    34LOCK_EXCHANGE OCE 
    45OVERFLOW OCE 
Note: See TracChangeset for help on using the changeset viewer.