Changeset 9634
- Timestamp:
- 2018-05-25T14:32:47+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r5518_GO6_under_ice_relax/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90
r9488 r9634 39 39 INTEGER, PUBLIC :: nn_sssr ! SST/SSS restoring indicator 40 40 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 42 43 LOGICAL :: ln_sssr_bnd ! flag to bound erp term 43 44 REAL(wp) :: rn_sssr_bnd ! ABS(Max./Min.) value of erp term [mm/day] … … 80 81 REAL(wp) :: zice ! local scalar to permit differential under sea-ice relaxation 81 82 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 term83 83 INTEGER :: ierror ! return error code 84 84 !! … … 118 118 !! rn_deds (ice-free) to rn_deds_ice (100% ice) 119 119 zice = ((1. - fr_i(ji,jj)) * zsrp) + & 120 & (fr_i(ji,jj) * zsrp_ice) 120 & (fr_i(ji,jj) * zsrp_ice) 121 121 zerp = zice * ( 1. - 2.*rnfmsk(ji,jj) ) & ! No damping in vicinity of river mouths 122 122 & * ( sss_m(ji,jj) - sf_sss(1)%fnow(ji,jj,1) ) … … 129 129 ELSEIF( nn_sssr == 2 ) THEN !* Salinity damping term (volume flux (emp) and associated heat flux (qns) 130 130 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] 131 132 zerp_bnd = rn_sssr_bnd / rday ! - - 132 133 !CDIR COLLAPSE 133 134 DO jj = 1, jpj 134 135 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 136 141 & * ( sss_m(ji,jj) - sf_sss(1)%fnow(ji,jj,1) ) & 137 142 & / MAX( sss_m(ji,jj), 1.e-20 ) … … 172 177 CHARACTER(len=100) :: cn_dir ! Root directory for location of ssr files 173 178 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_bnd179 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 175 180 INTEGER :: ios 176 181 !!---------------------------------------------------------------------- … … 191 196 WRITE(numout,*) '~~~~~~~ ' 192 197 WRITE(numout,*) ' Namelist namsbc_ssr :' 193 WRITE(numout,*) ' SST restoring term (Yes=1) nn_sstr = ', nn_sstr194 WRITE(numout,*) ' SSS damping term (Yes=1, salt flux) nn_sssr = ', nn_sssr198 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 195 200 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' 200 206 ENDIF 201 207 !
Note: See TracChangeset
for help on using the changeset viewer.