New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 9634 – NEMO

Changeset 9634


Ignore:
Timestamp:
2018-05-25T14:32:47+02:00 (6 years ago)
Author:
jpalmier
Message:

pass the SSS under ice relaxation term through the namelist

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/NERC/dev_r5518_GO6_under_ice_relax/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90

    r9488 r9634  
    3939   INTEGER, PUBLIC ::   nn_sssr         ! SST/SSS restoring indicator 
    4040   REAL(wp)        ::   rn_dqdt         ! restoring factor on SST and SSS 
    41    REAL(wp)        ::   rn_deds         ! restoring factor on SST and SSS 
     41   REAL(wp)        ::   rn_deds         ! restoring factor on SST and SSS on Ice-free ocean 
     42   REAL(wp)        ::   rn_deds_ice     ! restoring factor on SST and SSS under sea-ice  
    4243   LOGICAL         ::   ln_sssr_bnd     ! flag to bound erp term  
    4344   REAL(wp)        ::   rn_sssr_bnd     ! ABS(Max./Min.) value of erp term [mm/day] 
     
    8081      REAL(wp) ::   zice     ! local scalar to permit differential under sea-ice relaxation 
    8182      REAL(wp) ::   zsrp_ice     !  local scalar for unit conversion of rn_deds factor - under ice 
    82       REAL(wp), PARAMETER ::   rn_deds_ice = -333.333     ! under ice relaxation term 
    8383      INTEGER  ::   ierror   ! return error code 
    8484      !! 
     
    118118                     !!      rn_deds (ice-free) to rn_deds_ice (100% ice) 
    119119                     zice = ((1. - fr_i(ji,jj)) * zsrp) +        & 
    120                         &   (fr_i(ji,jj) * zsrp_ice)  
     120                        &   (fr_i(ji,jj) * zsrp_ice) 
    121121                     zerp = zice * ( 1. - 2.*rnfmsk(ji,jj) )   &      ! No damping in vicinity of river mouths 
    122122                        &        * ( sss_m(ji,jj) - sf_sss(1)%fnow(ji,jj,1) )  
     
    129129            ELSEIF( nn_sssr == 2 ) THEN                               !* Salinity damping term (volume flux (emp) and associated heat flux (qns) 
    130130               zsrp = rn_deds / rday                                  ! from [mm/day] to [kg/m2/s] 
     131               zsrp_ice = rn_deds_ice / rday                          ! from [mm/day] to [kg/m2/s] 
    131132               zerp_bnd = rn_sssr_bnd / rday                          !       -              -     
    132133!CDIR COLLAPSE 
    133134               DO jj = 1, jpj 
    134135                  DO ji = 1, jpi                             
    135                      zerp = zsrp * ( 1. - 2.*rnfmsk(ji,jj) )   &      ! No damping in vicinity of river mouths 
     136                     !! AXY (16-04-2018) Calculate ice-scaled zsrp term - from 
     137                     !!      rn_deds (ice-free) to rn_deds_ice (100% ice) 
     138                     zice = ((1. - fr_i(ji,jj)) * zsrp) +        & 
     139                        &   (fr_i(ji,jj) * zsrp_ice) 
     140                     zerp = zice * ( 1. - 2.*rnfmsk(ji,jj) )   &      ! No damping in vicinity of river mouths 
    136141                        &        * ( sss_m(ji,jj) - sf_sss(1)%fnow(ji,jj,1) )   & 
    137142                        &        / MAX(  sss_m(ji,jj), 1.e-20   ) 
     
    172177      CHARACTER(len=100) ::  cn_dir          ! Root directory for location of ssr files 
    173178      TYPE(FLD_N) ::   sn_sst, sn_sss        ! informations about the fields to be read 
    174       NAMELIST/namsbc_ssr/ cn_dir, nn_sstr, nn_sssr, rn_dqdt, rn_deds, sn_sst, sn_sss, ln_sssr_bnd, rn_sssr_bnd 
     179      NAMELIST/namsbc_ssr/ cn_dir, nn_sstr, nn_sssr, rn_dqdt, rn_deds, rn_deds_ice, sn_sst, sn_sss, ln_sssr_bnd, rn_sssr_bnd 
    175180      INTEGER     ::  ios 
    176181      !!---------------------------------------------------------------------- 
     
    191196         WRITE(numout,*) '~~~~~~~ ' 
    192197         WRITE(numout,*) '   Namelist namsbc_ssr :' 
    193          WRITE(numout,*) '      SST restoring term (Yes=1)             nn_sstr     = ', nn_sstr 
    194          WRITE(numout,*) '      SSS damping term (Yes=1, salt flux)    nn_sssr     = ', nn_sssr 
     198         WRITE(numout,*) '      SST restoring term (Yes=1)                    nn_sstr     = ', nn_sstr 
     199         WRITE(numout,*) '      SSS damping term (Yes=1, salt flux)           nn_sssr     = ', nn_sssr 
    195200         WRITE(numout,*) '                       (Yes=2, volume flux) ' 
    196          WRITE(numout,*) '      dQ/dT (restoring magnitude on SST)     rn_dqdt     = ', rn_dqdt, ' W/m2/K' 
    197          WRITE(numout,*) '      dE/dS (restoring magnitude on SST)     rn_deds     = ', rn_deds, ' mm/day' 
    198          WRITE(numout,*) '      flag to bound erp term                 ln_sssr_bnd = ', ln_sssr_bnd 
    199          WRITE(numout,*) '      ABS(Max./Min.) erp threshold           rn_sssr_bnd = ', rn_sssr_bnd, ' mm/day' 
     201         WRITE(numout,*) '      dQ/dT (restoring magnitude on SST)            rn_dqdt     = ', rn_dqdt, ' W/m2/K' 
     202         WRITE(numout,*) '      dE/dS (restoring magnitude on ice-free SSS)   rn_deds     = ', rn_deds, ' mm/day' 
     203         WRITE(numout,*) '      dE/dS (restoring magnitude under sea-ice SSS) rn_deds_ice = ', rn_deds_ice, ' mm/day' 
     204         WRITE(numout,*) '      flag to bound erp term                        ln_sssr_bnd = ', ln_sssr_bnd 
     205         WRITE(numout,*) '      ABS(Max./Min.) erp threshold                  rn_sssr_bnd = ', rn_sssr_bnd, ' mm/day' 
    200206      ENDIF 
    201207      ! 
Note: See TracChangeset for help on using the changeset viewer.