Changeset 5208 for branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/LIM_SRC_3/limitd_me.F90
- Timestamp:
- 2015-04-13T15:08:59+02:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/LIM_SRC_3/limitd_me.F90
r4688 r5208 43 43 PUBLIC lim_itd_me_alloc ! called by iceini.F90 44 44 45 REAL(wp) :: epsi20 = 1.e-20_wp ! constant values46 REAL(wp) :: epsi10 = 1.e-10_wp ! constant values47 REAL(wp) :: epsi06 = 1.e-06_wp ! constant values48 49 45 !----------------------------------------------------------------------- 50 46 ! Variables shared among ridging subroutines … … 149 145 150 146 CALL wrk_alloc( jpi, jpj, closing_net, divu_adv, opning, closing_gross, msnow_mlt, esnow_mlt, vt_i_init, vt_i_final ) 151 152 IF( numit == nstart ) CALL lim_itd_me_init ! Initialization (first time-step only)153 147 154 148 IF(ln_ctl) THEN … … 694 688 695 689 IF( partfun_swi == 0 ) THEN !--- Linear formulation (Thorndike et al., 1975) 696 DO jl = 0, ice_cat_bounds(1,2) ! only undeformed ice participates690 DO jl = 0, jpl 697 691 DO jj = 1, jpj 698 692 DO ji = 1, jpi … … 717 711 Gsum(:,:,jl) = EXP( -Gsum(:,:,jl) * astari ) * zdummy 718 712 END DO !jl 719 DO jl = 0, ice_cat_bounds(1,2)713 DO jl = 0, jpl 720 714 athorn(:,:,jl) = Gsum(:,:,jl-1) - Gsum(:,:,jl) 721 715 END DO … … 853 847 INTEGER :: ij ! horizontal index, combines i and j loops 854 848 INTEGER :: icells ! number of cells with aicen > puny 855 REAL(wp) :: zindb ! local scalar856 849 REAL(wp) :: hL, hR, farea, zdummy, zdummy0, ztmelts ! left and right limits of integration 857 850 REAL(wp) :: zsstK ! SST in Kelvin … … 899 892 CALL wrk_alloc( jpi, jpj, afrft, arft1, arft2, virft, vsrft, esrft, smrft, oirft1, oirft2 ) 900 893 CALL wrk_alloc( jpi, jpj, jpl, aicen_init, vicen_init, vsnwn_init, esnwn_init, smv_i_init, oa_i_init ) 901 CALL wrk_alloc( jpi, jpj, jkmax, eirft, erdg1, erdg2, ersw )902 CALL wrk_alloc( jpi, jpj, jkmax, jpl, eicen_init )894 CALL wrk_alloc( jpi, jpj, nlay_i+1, eirft, erdg1, erdg2, ersw ) 895 CALL wrk_alloc( jpi, jpj, nlay_i+1, jpl, eicen_init ) 903 896 904 897 ! Conservation check … … 1037 1030 ! / rafting category n1. 1038 1031 !-------------------------------------------------------------------------- 1039 vrdg1(ji,jj) = vicen_init(ji,jj,jl1) * afrac(ji,jj) / ( 1._wp + ridge_por )1032 vrdg1(ji,jj) = vicen_init(ji,jj,jl1) * afrac(ji,jj) 1040 1033 vrdg2(ji,jj) = vrdg1(ji,jj) * ( 1. + ridge_por ) 1041 1034 vsw (ji,jj) = vrdg1(ji,jj) * ridge_por … … 1043 1036 vsrdg(ji,jj) = vsnwn_init(ji,jj,jl1) * afrac(ji,jj) 1044 1037 esrdg(ji,jj) = esnwn_init(ji,jj,jl1) * afrac(ji,jj) 1045 srdg1(ji,jj) = smv_i_init(ji,jj,jl1) * afrac(ji,jj) / ( 1._wp + ridge_por )1038 srdg1(ji,jj) = smv_i_init(ji,jj,jl1) * afrac(ji,jj) 1046 1039 srdg2(ji,jj) = smv_i_init(ji,jj,jl1) * afrac(ji,jj) !! MV HC 2014 this line seems useless 1047 1040 … … 1128 1121 jj = indxj(ij) 1129 1122 ! heat content of ridged ice 1130 erdg1(ji,jj,jk) = eicen_init(ji,jj,jk,jl1) * afrac(ji,jj) / ( 1._wp + ridge_por )1123 erdg1(ji,jj,jk) = eicen_init(ji,jj,jk,jl1) * afrac(ji,jj) 1131 1124 eirft(ji,jj,jk) = eicen_init(ji,jj,jk,jl1) * afrft(ji,jj) 1132 1125 e_i (ji,jj,jk,jl1) = e_i(ji,jj,jk,jl1) - erdg1(ji,jj,jk) - eirft(ji,jj,jk) … … 1195 1188 !------------------------------------------------------------------------------- 1196 1189 ! jl1 looping 1-jpl 1197 DO jl2 = ice_cat_bounds(1,1), ice_cat_bounds(1,2)1190 DO jl2 = 1, jpl 1198 1191 ! over categories to which ridged ice is transferred 1199 1192 !CDIR NODEP … … 1240 1233 END DO ! jl2 (new ridges) 1241 1234 1242 DO jl2 = ice_cat_bounds(1,1), ice_cat_bounds(1,2)1235 DO jl2 = 1, jpl 1243 1236 1244 1237 !CDIR NODEP … … 1304 1297 CALL wrk_dealloc( jpi, jpj, afrft, arft1, arft2, virft, vsrft, esrft, smrft, oirft1, oirft2 ) 1305 1298 CALL wrk_dealloc( jpi, jpj, jpl, aicen_init, vicen_init, vsnwn_init, esnwn_init, smv_i_init, oa_i_init ) 1306 CALL wrk_dealloc( jpi, jpj, jkmax, eirft, erdg1, erdg2, ersw )1307 CALL wrk_dealloc( jpi, jpj, jkmax, jpl, eicen_init )1299 CALL wrk_dealloc( jpi, jpj, nlay_i+1, eirft, erdg1, erdg2, ersw ) 1300 CALL wrk_dealloc( jpi, jpj, nlay_i+1, jpl, eicen_init ) 1308 1301 ! 1309 1302 END SUBROUTINE lim_itd_me_ridgeshift
Note: See TracChangeset
for help on using the changeset viewer.