- Timestamp:
- 2017-12-19T09:26:25+01:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90
r9116 r9124 48 48 #if defined key_agrif 49 49 USE agrif_opa_interp ! agrif 50 USE agrif_oce 50 51 #endif 51 52 #if defined key_asminc … … 59 60 USE iom ! IOM library 60 61 USE restart ! only for lrst_oce 61 USE timing ! Timing62 62 USE diatmb ! Top,middle,bottom output 63 #if defined key_agrif64 USE agrif_opa_interp ! agrif65 USE agrif_oce66 #endif67 #if defined key_asminc68 USE asminc ! Assimilation increment69 #endif70 63 71 64 IMPLICIT NONE 72 65 PRIVATE 73 66 74 PUBLIC dyn_spg_ts ! routine called in dynspg.F90 75 PUBLIC dyn_spg_ts_alloc ! " " " " 76 PUBLIC dyn_spg_ts_init ! " " " " 77 PUBLIC ts_rst ! " " " " 67 PUBLIC dyn_spg_ts ! called by dyn_spg 68 PUBLIC dyn_spg_ts_init ! - - dyn_spg_init 78 69 79 70 !! Time filtered arrays at baroclinic time step: 80 71 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: un_adv , vn_adv !: Advection vel. at "now" barocl. step 72 ! 81 73 INTEGER, SAVE :: icycle ! Number of barotropic sub-steps for each internal step nn_baro <= 2.5 nn_baro 82 74 REAL(wp),SAVE :: rdtbt ! Barotropic time step 83 75 ! 84 76 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:) :: wgtbtp1, wgtbtp2 ! 1st & 2nd weights used in time filtering of barotropic fields 85 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: zwz! ff_f/h at F points86 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: ftnw, ftne! triad of coriolis parameter87 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: ftsw, ftse! (only used with een vorticity scheme)77 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: zwz ! ff_f/h at F points 78 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: ftnw, ftne ! triad of coriolis parameter 79 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:) :: ftsw, ftse ! (only used with een vorticity scheme) 88 80 89 81 REAL(wp) :: r1_12 = 1._wp / 12._wp ! local ratios … … 179 171 !!---------------------------------------------------------------------- 180 172 ! 181 IF( ln_timing ) CALL timing_start('dyn_spg_ts')182 !183 173 IF( ln_wd_il ) ALLOCATE( zcpx(jpi,jpj), zcpy(jpi,jpj) ) 184 174 ! !* Allocate temporary arrays … … 284 274 zhf(:,:) = 0._wp 285 275 286 !!gm assume 0 in both cases ( xhich is almost surely WRONG ! ) as hvatf has been removed276 !!gm assume 0 in both cases (which is almost surely WRONG ! ) as hvatf has been removed 287 277 !!gm A priori a better value should be something like : 288 278 !!gm zhf(i,j) = masked sum of ht(i,j) , ht(i+1,j) , ht(i,j+1) , (i+1,j+1) … … 1263 1253 CALL iom_put( "baro_v" , vn_b*vmask(:,:,1)+zmdi*(1-vmask(:,:,1 ) ) ) ! Barotropic V Velocity 1264 1254 ENDIF 1265 IF( ln_timing ) CALL timing_stop('dyn_spg_ts')1266 1255 ! 1267 1256 END SUBROUTINE dyn_spg_ts … … 1487 1476 ENDIF 1488 1477 ! 1478 ! ! Allocate time-splitting arrays 1479 IF( dyn_spg_ts_alloc() /= 0 ) CALL ctl_stop('STOP', 'dyn_spg_init: failed to allocate dynspg_ts arrays' ) 1480 ! 1481 ! ! read restart when needed 1482 IF( neuler /= 0 .AND. ln_bt_fw ) CALL ts_rst( nit000, 'READ' ) 1483 ! 1489 1484 END SUBROUTINE dyn_spg_ts_init 1490 1485
Note: See TracChangeset
for help on using the changeset viewer.