- Timestamp:
- 2013-10-22T16:47:27+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_r3858_NOC_ZTC/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90
r3851 r4105 29 29 USE iom ! IOM library 30 30 USE in_out_manager ! I/O logical units 31 USE dynspg_oce, ONLY: lk_dynspg_ts ! Split-explicit free surface flag 31 32 #if defined key_lim2 32 33 USE ice_2 … … 93 94 CALL wrk_alloc(jpi,jpj,pu2d,pv2d) 94 95 95 pu2d(:,:) = 0. e096 pv2d(:,:) = 0. e096 pu2d(:,:) = 0._wp 97 pv2d(:,:) = 0._wp 97 98 98 99 DO ik = 1, jpkm1 !! Vertically integrated momentum trends … … 195 196 IF( nn_dyn2d(ib_bdy) .gt. 0 ) THEN 196 197 IF( nn_dyn2d_dta(ib_bdy) .eq. 2 ) THEN ! tidal harmonic forcing ONLY: initialise arrays 197 dta_bdy(ib_bdy)%ssh(:) = 0. 0198 dta_bdy(ib_bdy)%u2d(:) = 0. 0199 dta_bdy(ib_bdy)%v2d(:) = 0. 0198 dta_bdy(ib_bdy)%ssh(:) = 0._wp 199 dta_bdy(ib_bdy)%u2d(:) = 0._wp 200 dta_bdy(ib_bdy)%v2d(:) = 0._wp 200 201 ENDIF 201 202 IF (nn_tra(ib_bdy).ne.4) THEN … … 216 217 217 218 igrd = 2 ! zonal velocity 218 dta_bdy(ib_bdy)%u2d(:) = 0. 0219 dta_bdy(ib_bdy)%u2d(:) = 0._wp 219 220 DO ib = 1, idx_bdy(ib_bdy)%nblen(igrd) 220 221 ii = idx_bdy(ib_bdy)%nbi(ib,igrd) … … 230 231 END DO 231 232 igrd = 3 ! meridional velocity 232 dta_bdy(ib_bdy)%v2d(:) = 0. 0233 dta_bdy(ib_bdy)%v2d(:) = 0._wp 233 234 DO ib = 1, idx_bdy(ib_bdy)%nblen(igrd) 234 235 ii = idx_bdy(ib_bdy)%nbi(ib,igrd) … … 272 273 ELSE 273 274 IF( nn_dyn2d(ib_bdy) .gt. 0 .and. nn_dyn2d_dta(ib_bdy) .eq. 2 ) THEN ! tidal harmonic forcing ONLY: initialise arrays 274 dta_bdy(ib_bdy)%ssh(:) = 0. 0275 dta_bdy(ib_bdy)%u2d(:) = 0. 0276 dta_bdy(ib_bdy)%v2d(:) = 0. 0275 dta_bdy(ib_bdy)%ssh(:) = 0._wp 276 dta_bdy(ib_bdy)%u2d(:) = 0._wp 277 dta_bdy(ib_bdy)%v2d(:) = 0._wp 277 278 ENDIF 278 279 IF( nb_bdy_fld(ib_bdy) .gt. 0 ) THEN ! update external data … … 286 287 & nn_dyn3d_dta(ib_bdy) .EQ. 1 ) ) THEN 287 288 igrd = 2 ! zonal velocity 288 dta_bdy(ib_bdy)%u2d(:) = 0. 0289 dta_bdy(ib_bdy)%u2d(:) = 0._wp 289 290 DO ib = 1, idx_bdy(ib_bdy)%nblen(igrd) 290 291 ii = idx_bdy(ib_bdy)%nbi(ib,igrd) … … 300 301 END DO 301 302 igrd = 3 ! meridional velocity 302 dta_bdy(ib_bdy)%v2d(:) = 0. 0303 dta_bdy(ib_bdy)%v2d(:) = 0._wp 303 304 DO ib = 1, idx_bdy(ib_bdy)%nblen(igrd) 304 305 ii = idx_bdy(ib_bdy)%nbi(ib,igrd) … … 314 315 END DO 315 316 ENDIF 316 IF( nn_dyn2d(ib_bdy) .gt. 0 .and. nn_dyn2d_dta(ib_bdy) .ge. 2 ) THEN ! update tidal harmonic forcing317 CALL bdytide_update( kt=kt, idx=idx_bdy(ib_bdy), dta=dta_bdy(ib_bdy), &318 & td=tides(ib_bdy), time_offset=time_offset )319 ENDIF320 317 ENDIF 321 318 ENDIF … … 324 321 END DO ! ib_bdy 325 322 323 #if defined key_tide 324 ! Add tides if not split-explicit free surface else this is done in ts loop 325 IF (.NOT.lk_dynspg_ts) CALL bdy_dta_tides( kt=kt, time_offset=time_offset ) 326 #endif 326 327 IF ( ln_apr_obc ) THEN 327 328 DO ib_bdy = 1, nb_bdy … … 476 477 IF( nn_dyn2d(ib_bdy) .gt. 0 .and. ( nn_dyn2d_dta(ib_bdy) .eq. 1 .or. nn_dyn2d_dta(ib_bdy) .eq. 3 ) ) THEN 477 478 478 IF( nn_ tra(ib_bdy) .ne. 4 ) THEN ! runoff condition : no ssh reading479 IF( nn_dyn2d(ib_bdy) .ne. jp_frs .and. nn_tra(ib_bdy) .ne. 4 ) THEN ! runoff condition : no ssh reading 479 480 jfld = jfld + 1 480 481 blf_i(jfld) = bn_ssh … … 572 573 ! Recalculate field counts 573 574 !------------------------- 574 nb_bdy_fld_sum = 0575 575 IF( ib_bdy .eq. 1 ) THEN 576 nb_bdy_fld_sum = 0 576 577 nb_bdy_fld(ib_bdy) = jfld 577 578 nb_bdy_fld_sum = jfld … … 616 617 ALLOCATE( dta_bdy(ib_bdy)%u2d(ilen0(2)) ) 617 618 ALLOCATE( dta_bdy(ib_bdy)%v2d(ilen0(3)) ) 618 IF ( nn_dyn2d_dta(ib_bdy).eq.1.or.nn_dyn2d_dta(ib_bdy).eq.3) THEN619 IF ( nn_dyn2d(ib_bdy) .ne. jp_frs .and. (nn_dyn2d_dta(ib_bdy).eq.1.or.nn_dyn2d_dta(ib_bdy).eq.3) ) THEN 619 620 jfld = jfld + 1 620 621 dta_bdy(ib_bdy)%ssh => bf(jfld)%fnow(:,1,1)
Note: See TracChangeset
for help on using the changeset viewer.