Changeset 9167 for branches/2017
- Timestamp:
- 2017-12-22T18:20:43+01:00 (7 years ago)
- Location:
- branches/2017/dev_merge_2017/NEMOGCM/NEMO/NST_SRC
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/NST_SRC/agrif_lim3_interp.F90
r9160 r9167 165 165 ptab(i1:i2,j1:j2,jm+3) = sv_i(i1:i2,j1:j2,jl) 166 166 ptab(i1:i2,j1:j2,jm+4) = oa_i(i1:i2,j1:j2,jl) 167 jm = jm + 5 167 ptab(i1:i2,j1:j2,jm+5) = a_ip(i1:i2,j1:j2,jl) 168 ptab(i1:i2,j1:j2,jm+6) = v_ip(i1:i2,j1:j2,jl) 169 ptab(i1:i2,j1:j2,jm+7) = t_su(i1:i2,j1:j2,jl) 170 jm = jm + 8 168 171 DO jk = 1, nlay_s 169 172 ptab(i1:i2,j1:j2,jm) = e_s(i1:i2,j1:j2,jk,jl) ; jm = jm + 1 … … 192 195 sv_i(ji,jj,jl) = ptab(ji,jj,jm+3) * tmask(ji,jj,1) 193 196 oa_i(ji,jj,jl) = ptab(ji,jj,jm+4) * tmask(ji,jj,1) 197 a_ip(ji,jj,jl) = ptab(ji,jj,jm+5) * tmask(ji,jj,1) 198 v_ip(ji,jj,jl) = ptab(ji,jj,jm+6) * tmask(ji,jj,1) 199 t_su(ji,jj,jl) = ptab(ji,jj,jm+7) * tmask(ji,jj,1) 194 200 END DO 195 201 END DO 196 jm = jm + 5202 jm = jm + 8 197 203 ! 198 204 DO jk = 1, nlay_s … … 217 223 jm = 1 218 224 DO jl = 1, jpl 219 ztab(:,:,jm ) = a_i 220 ztab(:,:,jm+1) = v_i 221 ztab(:,:,jm+2) = v_s 225 ztab(:,:,jm ) = a_i (:,:,jl) 226 ztab(:,:,jm+1) = v_i (:,:,jl) 227 ztab(:,:,jm+2) = v_s (:,:,jl) 222 228 ztab(:,:,jm+3) = sv_i(:,:,jl) 223 229 ztab(:,:,jm+4) = oa_i(:,:,jl) 224 jm = jm + 5 230 ztab(:,:,jm+5) = a_ip(:,:,jl) 231 ztab(:,:,jm+6) = v_ip(:,:,jl) 232 ztab(:,:,jm+7) = t_su(:,:,jl) 233 jm = jm + 8 225 234 DO jk = 1, nlay_s 226 235 ztab(:,:,jm) = e_s(:,:,jk,jl) … … 324 333 v_s (ji,jj,jl) = ztab(ji,jj,jm+2) * tmask(ji,jj,1) 325 334 sv_i(ji,jj,jl) = ztab(ji,jj,jm+3) * tmask(ji,jj,1) 326 oa_i (ji,jj,jl) = ztab(ji,jj,jm+4) * tmask(ji,jj,1) 335 oa_i(ji,jj,jl) = ztab(ji,jj,jm+4) * tmask(ji,jj,1) 336 a_ip(ji,jj,jl) = ztab(ji,jj,jm+5) * tmask(ji,jj,1) 337 v_ip(ji,jj,jl) = ztab(ji,jj,jm+6) * tmask(ji,jj,1) 338 t_su(ji,jj,jl) = ztab(ji,jj,jm+7) * tmask(ji,jj,1) 327 339 END DO 328 340 END DO 329 jm = jm + 5341 jm = jm + 8 330 342 ! 331 343 DO jk = 1, nlay_s … … 344 356 345 357 ! integrated values 346 vt_i (i1:i2,j1:j2) = SUM( v_i(i1:i2,j1:j2,:),dim=3 )347 vt_s (i1:i2,j1:j2) = SUM( v_s(i1:i2,j1:j2,:),dim=3 )348 at_i (i1:i2,j1:j2) = SUM( a_i(i1:i2,j1:j2,:),dim=3 )358 vt_i (i1:i2,j1:j2) = SUM( v_i(i1:i2,j1:j2,:), dim=3 ) 359 vt_s (i1:i2,j1:j2) = SUM( v_s(i1:i2,j1:j2,:), dim=3 ) 360 at_i (i1:i2,j1:j2) = SUM( a_i(i1:i2,j1:j2,:), dim=3 ) 349 361 et_s(i1:i2,j1:j2) = SUM( SUM( e_s(i1:i2,j1:j2,:,:), dim=4 ), dim=3 ) 350 362 et_i(i1:i2,j1:j2) = SUM( SUM( e_i(i1:i2,j1:j2,:,:), dim=4 ), dim=3 ) -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/NST_SRC/agrif_lim3_update.F90
r9160 r9167 93 93 ptab(i1:i2,j1:j2,jm+2) = v_s (i1:i2,j1:j2,jl) 94 94 ptab(i1:i2,j1:j2,jm+3) = sv_i(i1:i2,j1:j2,jl) 95 ptab(i1:i2,j1:j2,jm+4) = oa_i (i1:i2,j1:j2,jl) 96 jm = jm + 5 95 ptab(i1:i2,j1:j2,jm+4) = oa_i(i1:i2,j1:j2,jl) 96 ptab(i1:i2,j1:j2,jm+5) = a_ip(i1:i2,j1:j2,jl) 97 ptab(i1:i2,j1:j2,jm+6) = v_ip(i1:i2,j1:j2,jl) 98 ptab(i1:i2,j1:j2,jm+7) = t_su(i1:i2,j1:j2,jl) 99 jm = jm + 8 97 100 DO jk = 1, nlay_s 98 101 ptab(i1:i2,j1:j2,jm) = e_s(i1:i2,j1:j2,jk,jl) ; jm = jm + 1 … … 120 123 sv_i(ji,jj,jl) = ptab(ji,jj,jm+3) * tmask(ji,jj,1) 121 124 oa_i(ji,jj,jl) = ptab(ji,jj,jm+4) * tmask(ji,jj,1) 125 a_ip(ji,jj,jl) = ptab(ji,jj,jm+5) * tmask(ji,jj,1) 126 v_ip(ji,jj,jl) = ptab(ji,jj,jm+6) * tmask(ji,jj,1) 127 t_su(ji,jj,jl) = ptab(ji,jj,jm+7) * tmask(ji,jj,1) 122 128 ENDIF 123 129 END DO 124 130 END DO 125 jm = jm + 5131 jm = jm + 8 126 132 ! 127 133 DO jk = 1, nlay_s … … 147 153 et_s(i1:i2,j1:j2) = SUM( SUM( e_s(i1:i2,j1:j2,:,:), dim=4 ), dim=3 ) 148 154 et_i(i1:i2,j1:j2) = SUM( SUM( e_i(i1:i2,j1:j2,:,:), dim=4 ), dim=3 ) 155 156 at_ip(i1:i2,j1:j2) = SUM( a_ip(i1:i2,j1:j2,:), dim=3 ) ! melt ponds 157 vt_ip(i1:i2,j1:j2) = SUM( v_ip(i1:i2,j1:j2,:), dim=3 ) 158 ! 159 ato_i(i1:i2,j1:j2) = 1._wp - at_i(i1:i2,j1:j2) ! open water fraction 149 160 150 161 ENDIF -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/NST_SRC/agrif_user.F90
r9160 r9167 584 584 ind2 = 1 + nbghostcells 585 585 ind3 = 2 + nbghostcells 586 CALL agrif_declare_variable((/2,2,0/),(/ind3,ind3,0/),(/'x','y','N'/),(/1,1,1/),(/nlci,nlcj,jpl*( 5+nlay_s+nlay_i)/),tra_ice_id)587 CALL agrif_declare_variable((/1,2/) ,(/ind2,ind3/) ,(/'x','y'/) ,(/1,1/) ,(/nlci,nlcj/) ,u_ice_id 588 CALL agrif_declare_variable((/2,1/) ,(/ind3,ind2/) ,(/'x','y'/) ,(/1,1/) ,(/nlci,nlcj/) ,v_ice_id 586 CALL agrif_declare_variable((/2,2,0/),(/ind3,ind3,0/),(/'x','y','N'/),(/1,1,1/),(/nlci,nlcj,jpl*(8+nlay_s+nlay_i)/),tra_ice_id) 587 CALL agrif_declare_variable((/1,2/) ,(/ind2,ind3/) ,(/'x','y'/) ,(/1,1/) ,(/nlci,nlcj/) ,u_ice_id ) 588 CALL agrif_declare_variable((/2,1/) ,(/ind3,ind2/) ,(/'x','y'/) ,(/1,1/) ,(/nlci,nlcj/) ,v_ice_id ) 589 589 590 590 ! 2. Set interpolations (normal & tangent to the grid cell for velocities) 591 591 !----------------------------------- 592 CALL Agrif_Set_bcinterp(tra_ice_id, interp= AGRIF_linear)592 CALL Agrif_Set_bcinterp(tra_ice_id, interp = AGRIF_linear) 593 593 CALL Agrif_Set_bcinterp(u_ice_id , interp1 = Agrif_linear,interp2 = AGRIF_ppm ) 594 594 CALL Agrif_Set_bcinterp(v_ice_id , interp1 = AGRIF_ppm ,interp2 = Agrif_linear) … … 603 603 !-------------------------------------------------- 604 604 # if defined UPD_HIGH 605 CALL Agrif_Set_Updatetype(tra_ice_id, update = Agrif_Update_Full_Weighting)606 CALL Agrif_Set_Updatetype(u_ice_id , update1 = Agrif_Update_Average , update2 = Agrif_Update_Full_Weighting)607 CALL Agrif_Set_Updatetype(v_ice_id , update1 = Agrif_Update_Full_Weighting, update2 = Agrif_Update_Average)605 CALL Agrif_Set_Updatetype(tra_ice_id, update = Agrif_Update_Full_Weighting) 606 CALL Agrif_Set_Updatetype(u_ice_id , update1 = Agrif_Update_Average , update2 = Agrif_Update_Full_Weighting) 607 CALL Agrif_Set_Updatetype(v_ice_id , update1 = Agrif_Update_Full_Weighting, update2 = Agrif_Update_Average ) 608 608 #else 609 CALL Agrif_Set_Updatetype(tra_ice_id, update = AGRIF_Update_Average)610 CALL Agrif_Set_Updatetype(u_ice_id , update1 = Agrif_Update_Copy , update2 = Agrif_Update_Average)611 CALL Agrif_Set_Updatetype(v_ice_id , update1 = Agrif_Update_Average, update2 = Agrif_Update_Copy )609 CALL Agrif_Set_Updatetype(tra_ice_id, update = AGRIF_Update_Average) 610 CALL Agrif_Set_Updatetype(u_ice_id , update1 = Agrif_Update_Copy , update2 = Agrif_Update_Average) 611 CALL Agrif_Set_Updatetype(v_ice_id , update1 = Agrif_Update_Average, update2 = Agrif_Update_Copy ) 612 612 #endif 613 613
Note: See TracChangeset
for help on using the changeset viewer.