Changeset 12377 for NEMO/trunk/src/ICE/icedyn_rdgrft.F90
- Timestamp:
- 2020-02-12T15:39:06+01:00 (4 years ago)
- Location:
- NEMO/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev @HEAD ext/AGRIF5 ^/vendors/AGRIF/dev_r11615_ENHANCE-04_namelists_as_internalfiles_agrif@HEAD ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL
-
- Property svn:externals
-
NEMO/trunk/src/ICE/icedyn_rdgrft.F90
r11732 r12377 75 75 REAL(wp) :: rn_fpndrft ! fractional pond loss to the ocean during rafting 76 76 ! 77 !! * Substitutions 78 # include "do_loop_substitute.h90" 77 79 !!---------------------------------------------------------------------- 78 80 !! NEMO/ICE 4.0 , NEMO Consortium (2018) … … 159 161 npti = 0 ; nptidx(:) = 0 160 162 ipti = 0 ; iptidx(:) = 0 161 DO jj = 1, jpj 162 DO ji = 1, jpi 163 IF ( at_i(ji,jj) > epsi10 ) THEN 164 npti = npti + 1 165 nptidx( npti ) = (jj - 1) * jpi + ji 166 ENDIF 167 END DO 168 END DO 163 DO_2D_11_11 164 IF ( at_i(ji,jj) > epsi10 ) THEN 165 npti = npti + 1 166 nptidx( npti ) = (jj - 1) * jpi + ji 167 ENDIF 168 END_2D 169 169 170 170 !-------------------------------------------------------- … … 268 268 269 269 ! controls 270 IF( ln_ctl ) CALL ice_prt3D ('icedyn_rdgrft')! prints270 IF( sn_cfctl%l_prtctl ) CALL ice_prt3D ('icedyn_rdgrft') ! prints 271 271 IF( ln_icectl ) CALL ice_prt (kt, iiceprt, jiceprt,-1, ' - ice dyn rdgrft - ') ! prints 272 272 IF( ln_icediachk ) CALL ice_cons_hsm(1, 'icedyn_rdgrft', rdiag_v, rdiag_s, rdiag_t, rdiag_fv, rdiag_fs, rdiag_ft) ! conservation … … 766 766 ! !--------------------------------------------------! 767 767 CASE( 1 ) !--- Spatial smoothing 768 DO jj = 2, jpjm1 769 DO ji = 2, jpim1 770 IF ( SUM( a_i(ji,jj,:) ) > 0._wp ) THEN 771 zworka(ji,jj) = ( 4.0 * strength(ji,jj) & 772 & + strength(ji-1,jj) * tmask(ji-1,jj,1) + strength(ji+1,jj) * tmask(ji+1,jj,1) & 773 & + strength(ji,jj-1) * tmask(ji,jj-1,1) + strength(ji,jj+1) * tmask(ji,jj+1,1) & 774 & ) / ( 4.0 + tmask(ji-1,jj,1) + tmask(ji+1,jj,1) + tmask(ji,jj-1,1) + tmask(ji,jj+1,1) ) 775 ELSE 776 zworka(ji,jj) = 0._wp 777 ENDIF 778 END DO 779 END DO 768 DO_2D_00_00 769 IF ( SUM( a_i(ji,jj,:) ) > 0._wp ) THEN 770 zworka(ji,jj) = ( 4.0 * strength(ji,jj) & 771 & + strength(ji-1,jj) * tmask(ji-1,jj,1) + strength(ji+1,jj) * tmask(ji+1,jj,1) & 772 & + strength(ji,jj-1) * tmask(ji,jj-1,1) + strength(ji,jj+1) * tmask(ji,jj+1,1) & 773 & ) / ( 4.0 + tmask(ji-1,jj,1) + tmask(ji+1,jj,1) + tmask(ji,jj-1,1) + tmask(ji,jj+1,1) ) 774 ELSE 775 zworka(ji,jj) = 0._wp 776 ENDIF 777 END_2D 780 778 781 DO jj = 2, jpjm1 782 DO ji = 2, jpim1 783 strength(ji,jj) = zworka(ji,jj) 784 END DO 785 END DO 779 DO_2D_00_00 780 strength(ji,jj) = zworka(ji,jj) 781 END_2D 786 782 CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1. ) 787 783 ! … … 792 788 ENDIF 793 789 ! 794 DO jj = 2, jpjm1 795 DO ji = 2, jpim1 796 IF ( SUM( a_i(ji,jj,:) ) > 0._wp ) THEN 797 itframe = 1 ! number of time steps for the running mean 798 IF ( zstrp1(ji,jj) > 0._wp ) itframe = itframe + 1 799 IF ( zstrp2(ji,jj) > 0._wp ) itframe = itframe + 1 800 zp = ( strength(ji,jj) + zstrp1(ji,jj) + zstrp2(ji,jj) ) / itframe 801 zstrp2 (ji,jj) = zstrp1 (ji,jj) 802 zstrp1 (ji,jj) = strength(ji,jj) 803 strength(ji,jj) = zp 804 ENDIF 805 END DO 806 END DO 790 DO_2D_00_00 791 IF ( SUM( a_i(ji,jj,:) ) > 0._wp ) THEN 792 itframe = 1 ! number of time steps for the running mean 793 IF ( zstrp1(ji,jj) > 0._wp ) itframe = itframe + 1 794 IF ( zstrp2(ji,jj) > 0._wp ) itframe = itframe + 1 795 zp = ( strength(ji,jj) + zstrp1(ji,jj) + zstrp2(ji,jj) ) / itframe 796 zstrp2 (ji,jj) = zstrp1 (ji,jj) 797 zstrp1 (ji,jj) = strength(ji,jj) 798 strength(ji,jj) = zp 799 ENDIF 800 END_2D 807 801 CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1. ) 808 802 ! … … 908 902 !!------------------------------------------------------------------- 909 903 ! 910 REWIND( numnam_ice_ref ) ! Namelist namicetdme in reference namelist : Ice mechanical ice redistribution911 904 READ ( numnam_ice_ref, namdyn_rdgrft, IOSTAT = ios, ERR = 901) 912 905 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_rdgrft in reference namelist' ) 913 REWIND( numnam_ice_cfg ) ! Namelist namdyn_rdgrft in configuration namelist : Ice mechanical ice redistribution914 906 READ ( numnam_ice_cfg, namdyn_rdgrft, IOSTAT = ios, ERR = 902 ) 915 907 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namdyn_rdgrft in configuration namelist' )
Note: See TracChangeset
for help on using the changeset viewer.