Changeset 11480 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE
- Timestamp:
- 2019-08-29T11:23:25+02:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE/icedyn.F90
r10564 r11480 60 60 CONTAINS 61 61 62 SUBROUTINE ice_dyn( kt )62 SUBROUTINE ice_dyn( kt, Kmm ) 63 63 !!------------------------------------------------------------------- 64 64 !! *** ROUTINE ice_dyn *** … … 73 73 !!-------------------------------------------------------------------- 74 74 INTEGER, INTENT(in) :: kt ! ice time step 75 INTEGER, INTENT(in) :: Kmm ! ocean time level index 75 76 !! 76 77 INTEGER :: ji, jj, jl ! dummy loop indices … … 92 93 tau_icebfr(:,:) = 0._wp 93 94 DO jl = 1, jpl 94 WHERE( h_i_b(:,:,jl) > ht _n(:,:) * rn_depfra ) tau_icebfr(:,:) = tau_icebfr(:,:) + a_i(:,:,jl) * rn_icebfr95 WHERE( h_i_b(:,:,jl) > ht(:,:) * rn_depfra ) tau_icebfr(:,:) = tau_icebfr(:,:) + a_i(:,:,jl) * rn_icebfr 95 96 END DO 96 97 ENDIF … … 121 122 122 123 CASE ( np_dynALL ) !== all dynamical processes ==! 123 CALL ice_dyn_rhg ( kt )! -- rheology124 CALL ice_dyn_rhg ( kt, Kmm ) ! -- rheology 124 125 CALL ice_dyn_adv ( kt ) ; CALL Hbig( zhi_max, zhs_max, zhip_max ) ! -- advection of ice + correction on ice thickness 125 126 CALL ice_dyn_rdgrft( kt ) ! -- ridging/rafting … … 127 128 128 129 CASE ( np_dynRHGADV ) !== no ridge/raft & no corrections ==! 129 CALL ice_dyn_rhg ( kt )! -- rheology130 CALL ice_dyn_rhg ( kt, Kmm ) ! -- rheology 130 131 CALL ice_dyn_adv ( kt ) ; CALL Hbig( zhi_max, zhs_max, zhip_max ) ! -- advection of ice + correction on ice thickness 131 132 CALL Hpiling ! -- simple pile-up (replaces ridging/rafting) -
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE/icedyn_rhg.F90
r10413 r11480 47 47 CONTAINS 48 48 49 SUBROUTINE ice_dyn_rhg( kt )49 SUBROUTINE ice_dyn_rhg( kt, Kmm ) 50 50 !!------------------------------------------------------------------- 51 51 !! *** ROUTINE ice_dyn_rhg *** … … 58 58 !!-------------------------------------------------------------------- 59 59 INTEGER, INTENT(in) :: kt ! ice time step 60 INTEGER, INTENT(in) :: Kmm ! ocean time level index 60 61 !!-------------------------------------------------------------------- 61 62 ! controls … … 76 77 CASE( np_rhgEVP ) ! Elasto-Viscous-Plastic ! 77 78 ! !------------------------! 78 CALL ice_dyn_rhg_evp( kt, stress1_i, stress2_i, stress12_i, shear_i, divu_i, delta_i )79 CALL ice_dyn_rhg_evp( kt, Kmm, stress1_i, stress2_i, stress12_i, shear_i, divu_i, delta_i ) 79 80 ! 80 81 END SELECT -
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE/icedyn_rhg_evp.F90
r10555 r11480 56 56 CONTAINS 57 57 58 SUBROUTINE ice_dyn_rhg_evp( kt, pstress1_i, pstress2_i, pstress12_i, pshear_i, pdivu_i, pdelta_i )58 SUBROUTINE ice_dyn_rhg_evp( kt, Kmm, pstress1_i, pstress2_i, pstress12_i, pshear_i, pdivu_i, pdelta_i ) 59 59 !!------------------------------------------------------------------- 60 60 !! *** SUBROUTINE ice_dyn_rhg_evp *** … … 109 109 !!------------------------------------------------------------------- 110 110 INTEGER , INTENT(in ) :: kt ! time step 111 INTEGER , INTENT(in ) :: Kmm ! ocean time level index 111 112 REAL(wp), DIMENSION(:,:), INTENT(inout) :: pstress1_i, pstress2_i, pstress12_i ! 112 113 REAL(wp), DIMENSION(:,:), INTENT( out) :: pshear_i , pdivu_i , pdelta_i ! … … 335 336 zvV = 0.5_wp * ( vt_i(ji,jj) * e1e2t(ji,jj) + vt_i(ji,jj+1) * e1e2t(ji,jj+1) ) * r1_e1e2v(ji,jj) * vmask(ji,jj,1) 336 337 ! ice-bottom stress at U points 337 zvCr = zaU(ji,jj) * rn_depfra * hu _n(ji,jj)338 zvCr = zaU(ji,jj) * rn_depfra * hu(ji,jj,Kmm) 338 339 zTauU_ib(ji,jj) = rn_icebfr * MAX( 0._wp, zvU - zvCr ) * EXP( -rn_crhg * ( 1._wp - zaU(ji,jj) ) ) 339 340 ! ice-bottom stress at V points 340 zvCr = zaV(ji,jj) * rn_depfra * hv _n(ji,jj)341 zvCr = zaV(ji,jj) * rn_depfra * hv(ji,jj,Kmm) 341 342 zTauV_ib(ji,jj) = rn_icebfr * MAX( 0._wp, zvV - zvCr ) * EXP( -rn_crhg * ( 1._wp - zaV(ji,jj) ) ) 342 343 ! ice_bottom stress at T points 343 zvCr = at_i(ji,jj) * rn_depfra * ht _n(ji,jj)344 zvCr = at_i(ji,jj) * rn_depfra * ht(ji,jj) 344 345 tau_icebfr(ji,jj) = rn_icebfr * MAX( 0._wp, vt_i(ji,jj) - zvCr ) * EXP( -rn_crhg * ( 1._wp - at_i(ji,jj) ) ) 345 346 END DO -
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/ICE/icestp.F90
r10998 r11480 95 95 CONTAINS 96 96 97 SUBROUTINE ice_stp( kt, Kbb, ksbc )97 SUBROUTINE ice_stp( kt, Kbb, Kmm, ksbc ) 98 98 !!--------------------------------------------------------------------- 99 99 !! *** ROUTINE ice_stp *** … … 115 115 !! utau, vtau, taum, wndm, qns , qsr, emp , sfx 116 116 !!--------------------------------------------------------------------- 117 INTEGER, INTENT(in) :: kt ! ocean time step118 INTEGER, INTENT(in) :: Kbb ! ocean time level index119 INTEGER, INTENT(in) :: ksbc ! flux formulation (user defined, bulk, or Pure Coupled)117 INTEGER, INTENT(in) :: kt ! ocean time step 118 INTEGER, INTENT(in) :: Kbb, Kmm ! ocean time level indices 119 INTEGER, INTENT(in) :: ksbc ! flux formulation (user defined, bulk, or Pure Coupled) 120 120 ! 121 121 INTEGER :: jl ! dummy loop index … … 161 161 ! 162 162 IF( ln_icedyn .AND. .NOT.lk_c1d ) & 163 & CALL ice_dyn( kt )! -- Ice dynamics163 & CALL ice_dyn( kt, Kmm ) ! -- Ice dynamics 164 164 ! 165 165 ! !== lateral boundary conditions ==!
Note: See TracChangeset
for help on using the changeset viewer.