Changeset 12261 for NEMO/branches
- Timestamp:
- 2019-12-17T14:43:09+01:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11842_SI3-10_EAP
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11842_SI3-10_EAP/cfgs/SHARED/field_def_nemo-ice.xml
r11878 r12261 82 82 <field id="iceshe" long_name="Maximum shear of sea-ice velocity field" standard_name="maximum_shear_of_sea_ice_velocity" unit="s-1" /> 83 83 <field id="aniso" long_name="anisotropy of sea ice floe orientation (0.5 - 1)" standard_name="anisotropy" unit="" /> 84 <field id="yield11" long_name="yield surface tensor component 11" standard_name="yield11" unit="N/m" /> 85 <field id="yield22" long_name="yield surface tensor component 22" standard_name="yield22" unit="N/m" /> 86 <field id="yield12" long_name="yield surface tensor component 12" standard_name="yield12" unit="N/m" /> 84 87 85 88 <!-- surface heat fluxes --> … … 416 419 <field field_ref="vfxthin" name="vfxthin" /> 417 420 418 <!-- diag error for negative ice volume after advection -->419 <field field_ref="iceneg_pres" name="sineg_pres" />420 <field field_ref="iceneg_volu" name="sineg_volu" />421 <field field_ref="iceneg_hfx" name="sineg_hfx" />422 421 </field_group> 423 422 -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/ice.F90
r11951 r12261 146 146 ! 147 147 ! !!** ice-rheology namelist (namdyn_rhg) ** 148 LOGICAL , PUBLIC :: ln_rhg_EVP ! EVP rheology switch, used for rdgrft and rheology 149 LOGICAL , PUBLIC :: ln_rhg_EAP ! EAP rheology switch, used for rdgrft and rheology 148 150 LOGICAL , PUBLIC :: ln_aEVP !: using adaptive EVP (T or F) 149 151 REAL(wp), PUBLIC :: rn_creepl !: creep limit : has to be under 1.0e-9 -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/icedyn_rdgrft.F90
r11732 r12261 23 23 USE icevar ! sea-ice: operations 24 24 USE icectl ! sea-ice: control prints 25 !USE icedyn_rhg ! sea-ice: rheology choice 25 26 ! 26 27 USE in_out_manager ! I/O manager … … 138 139 INTEGER , DIMENSION(jpij) :: iptidx ! compute ridge/raft or not 139 140 REAL(wp), DIMENSION(jpij) :: zdivu, zdelt ! 1D divu_i & delta_i 141 REAL(wp), DIMENSION(jpij) :: conv ! 1D rdg_conv (if EAP rheology) 140 142 ! 141 143 INTEGER, PARAMETER :: jp_itermax = 20 … … 174 176 175 177 ! just needed here 176 CALL tab_2d_1d( npti, nptidx(1:npti), zdelt (1:npti) , delta_i ) 178 CALL tab_2d_1d( npti, nptidx(1:npti), zdelt (1:npti) , delta_i ) 179 CALL tab_2d_1d( npti, nptidx(1:npti), conv (1:npti) , rdg_conv ) 177 180 ! needed here and in the iteration loop 178 181 CALL tab_2d_1d( npti, nptidx(1:npti), zdivu (1:npti) , divu_i) ! zdivu is used as a work array here (no change in divu_i) … … 185 188 ! - ice area added in new ridges 186 189 closing_net(ji) = rn_csrdg * 0.5_wp * ( zdelt(ji) - ABS( zdivu(ji) ) ) - MIN( zdivu(ji), 0._wp ) 190 IF( ln_rhg_EVP ) closing_net(ji) = rn_csrdg * 0.5_wp * ( zdelt(ji) - ABS( zdivu(ji) ) ) - MIN( zdivu(ji), 0._wp ) 191 IF( ln_rhg_EAP ) closing_net(ji) = conv(ji) 187 192 ! 188 193 IF( zdivu(ji) < 0._wp ) closing_net(ji) = MAX( closing_net(ji), -zdivu(ji) ) ! make sure the closing rate is large enough -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/icedyn_rhg.F90
r11877 r12261 37 37 38 38 ! ** namelist (namrhg) ** 39 LOGICAL :: ln_rhg_EVP ! EVP rheology 40 LOGICAL :: ln_rhg_EAP ! EVP rheology 39 ! LOGICAL :: ln_rhg_EVP ! EVP rheology, used by icedyn_rdgrft 40 ! LOGICAL :: ln_rhg_EAP ! EAP rheology, used by icedyn_rdgrft 41 !LOGICAL, PUBLIC :: ln_rhg_EVP ! EVP rheology, used by icedyn_rdgrft 42 !LOGICAL, PUBLIC :: ln_rhg_EAP ! EAP rheology, used by icedyn_rdgrft 41 43 ! 42 44 !! * Substitutions -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/icedyn_rhg_eap.F90
r11951 r12261 145 145 ! 146 146 REAL(wp), DIMENSION(jpi,jpj) :: stress12tmp ! anisotropic stress tensor component for regridding 147 REAL(wp), DIMENSION(jpi,jpj) :: yield11, yield22, yield12 ! yield surface tensor for history 147 148 REAL(wp), DIMENSION(jpi,jpj) :: zp_delt ! P/delta at T points 148 149 REAL(wp), DIMENSION(jpi,jpj) :: zbeta ! beta coef from Kimmritz 2017 … … 384 385 & + zds(ji,jj-1) * e1e2f(ji,jj-1) + zds(ji-1,jj-1) * e1e2f(ji-1,jj-1) & 385 386 & ) * 0.25_wp * r1_e1e2t(ji,jj) 387 !WRITE(numout,*) 'shear output', ji, jj, zdsT 388 386 389 387 390 ! shear**2 at T points (doc eq. A16) … … 409 412 alphar, alphas) 410 413 IF (jter == nn_nevp) THEN 414 yield11(ji,jj) = 0.5_wp * (stressptmp + stressmtmp) 415 yield22(ji,jj) = 0.5_wp * (stressptmp - stressmtmp) 416 yield12(ji,jj) = stress12tmp(ji,jj) 411 417 rdg_conv(ji,jj) = -min( alphar, 0._wp) 412 418 ENDIF … … 421 427 ! gamma = 0.5*P/(delta+creepl) * (c*pi)**2/Area * dt/m 422 428 ! alpha = beta = sqrt(4*gamma) 423 !IF( ln_aEVP ) THEN424 !zalph1 = MAX( 50._wp, rpi * SQRT( 0.5_wp * zp_delt(ji,jj) * r1_e1e2t(ji,jj) * zdt_m(ji,jj) ) )425 !z1_alph1 = 1._wp / ( zalph1 + 1._wp )426 !ENDIF429 IF( ln_aEVP ) THEN 430 zalph1 = MAX( 50._wp, rpi * SQRT( 0.5_wp * zp_delt(ji,jj) * r1_e1e2t(ji,jj) * zdt_m(ji,jj) ) ) 431 z1_alph1 = 1._wp / ( zalph1 + 1._wp ) 432 ENDIF 427 433 428 434 ! stress at T points (zkt/=0 if landfast) … … 437 443 END DO 438 444 !CALL lbc_lnk( 'icedyn_rhg_eap', zp_delt, 'T', 1. ) 439 CALL lbc_lnk ( 'icedyn_rhg_eap', stress12tmp, 'T', 1. )445 CALL lbc_lnk_multi( 'icedyn_rhg_eap', stress12tmp, 'T', 1., rdg_conv, 'T', 1. ) 440 446 441 447 DO jj = 1, jpjm1 … … 447 453 448 454 ! alpha & beta for aEVP 449 !IF( ln_aEVP ) THEN450 !zalph1 = MAX( 50._wp, rpi * SQRT( 0.5_wp * zp_delt(ji,jj) * r1_e1e2t(ji,jj) * zdt_m(ji,jj) ) )451 !z1_alph1 = 1._wp / ( zalph1 + 1._wp )452 !ENDIF455 IF( ln_aEVP ) THEN 456 zalph1 = MAX( 50._wp, rpi * SQRT( 0.5_wp * zp_delt(ji,jj) * r1_e1e2t(ji,jj) * zdt_m(ji,jj) ) ) 457 z1_alph1 = 1._wp / ( zalph1 + 1._wp ) 458 ENDIF 453 459 454 460 ! stress at F points (zkt/=0 if landfast) … … 828 834 829 835 DEALLOCATE( zsig1 , zsig2 , zsig3 ) 836 ENDIF 837 838 ! --- yieldcurve --- ! 839 IF( iom_use('yield11') .OR. iom_use('yield12') .OR. iom_use('yield22')) THEN 840 CALL iom_put( 'yield11', yield11 * zmsk00 ) 841 CALL iom_put( 'yield22', yield22 * zmsk00 ) 842 CALL iom_put( 'yield12', yield12 * zmsk00 ) 830 843 ENDIF 831 844 -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/tests/ICE_ADV2D/EXPREF/file_def_nemo-ice.xml
r10516 r12261 23 23 <field field_ref="icethic" name="sithic_max" operation="maximum" /> 24 24 <field field_ref="icethic" name="sithic_min" operation="minimum" /> 25 <field field_ref="iceneg_pres" name="sineg_pres" />26 <field field_ref="iceneg_volu" name="sineg_volu" />27 25 <field field_ref="fasticepres" name="fasticepres" /> 28 26 <field field_ref="icevolu" name="sivolu" /> -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/tests/ICE_ADV2D/EXPREF/namelist_ice_cfg
r10535 r12261 50 50 &namdyn_adv ! Ice advection 51 51 !------------------------------------------------------------------------------ 52 ln_adv_Pra = . false. ! Advection scheme (Prather)53 ln_adv_UMx = . true. ! Advection scheme (Ultimate-Macho)52 ln_adv_Pra = .true. ! Advection scheme (Prather) 53 ln_adv_UMx = .false. ! Advection scheme (Ultimate-Macho) 54 54 nn_UMx = 5 ! order of the scheme for UMx (1-5 ; 20=centered 2nd order) 55 55 / -
NEMO/branches/2019/dev_r11842_SI3-10_EAP/tests/ICE_ADV2D/MY_SRC/usrdef_nam.F90
r11536 r12261 14 14 !! usr_def_hgr : initialize the horizontal mesh 15 15 !!---------------------------------------------------------------------- 16 USE dom_oce , ONLY: nimpp , njmpp ! i- & j-indices of the local domain16 USE dom_oce , ONLY: nimpp , njmpp , Agrif_Root ! i- & j-indices of the local domain 17 17 USE par_oce ! ocean space and time domain 18 18 USE phycst ! physical constants
Note: See TracChangeset
for help on using the changeset viewer.