Changeset 3703 for branches/2012/dev_MERGE_2012
- Timestamp:
- 2012-11-28T11:02:28+01:00 (12 years ago)
- Location:
- branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/BDY
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90
r3651 r3703 200 200 ENDIF 201 201 IF (nn_tra(ib_bdy).ne.4) THEN 202 IF (nn_dyn2d_dta(ib_bdy).eq.1.or.nn_dyn2d_dta(ib_bdy).eq.3.or.(ln_full_vel_array(ib_bdy).and.nn_dyn3d_dta(ib_bdy).eq.1)) THEN 202 IF( nn_dyn2d_dta(ib_bdy) .EQ. 1 .OR. nn_dyn2d_dta(ib_bdy) .EQ. 3 .OR. & 203 & (ln_full_vel_array(ib_bdy) .AND. nn_dyn3d_dta(ib_bdy).eq.1) )THEN 204 203 205 ! For the runoff case, no need to update the forcing (already done in the baroclinic part) 204 206 jend = nb_bdy_fld(ib_bdy) 205 207 IF ( nn_tra(ib_bdy) .GT. 0 .AND. nn_tra_dta(ib_bdy) .GE. 1 ) jend = jend - 2 206 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), map=nbmap_ptr(jstart:jend), jit=jit, time_offset=time_offset ) 208 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), map=nbmap_ptr(jstart:jend), & 209 & jit=jit, time_offset=time_offset ) 207 210 IF ( nn_tra(ib_bdy) .GT. 0 .AND. nn_tra_dta(ib_bdy) .GE. 1 ) jend = jend + 2 211 208 212 ! If full velocities in boundary data then split into barotropic and baroclinic data 209 IF( ln_full_vel_array(ib_bdy) .and. & 210 & ( nn_dyn2d_dta(ib_bdy) .eq. 1 .or. nn_dyn2d_dta(ib_bdy) .eq. 3 .or. nn_dyn3d_dta(ib_bdy) .eq. 1 ) ) THEN 213 IF( ln_full_vel_array(ib_bdy) .AND. & 214 & ( nn_dyn2d_dta(ib_bdy) .EQ. 1 .OR. nn_dyn2d_dta(ib_bdy) .EQ. 3 .OR. & 215 & nn_dyn3d_dta(ib_bdy) .EQ. 1 ) )THEN 216 211 217 igrd = 2 ! zonal velocity 212 218 dta_bdy(ib_bdy)%u2d(:) = 0.0 … … 248 254 IF (nn_tra(ib_bdy).eq.4) then ! runoff condition 249 255 jend = nb_bdy_fld(ib_bdy) 250 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), map=nbmap_ptr(jstart:jend), time_offset=time_offset ) 256 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), & 257 & map=nbmap_ptr(jstart:jend), time_offset=time_offset ) 251 258 ! 252 259 igrd = 2 ! zonal velocity … … 271 278 IF( nb_bdy_fld(ib_bdy) .gt. 0 ) THEN ! update external data 272 279 jend = nb_bdy_fld(ib_bdy) 273 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), map=nbmap_ptr(jstart:jend), time_offset=time_offset ) 280 CALL fld_read( kt=kt, kn_fsbc=1, sd=bf(jstart:jend), & 281 & map=nbmap_ptr(jstart:jend), time_offset=time_offset ) 274 282 ENDIF 275 283 ! If full velocities in boundary data then split into barotropic and baroclinic data 276 284 IF( ln_full_vel_array(ib_bdy) .and. & 277 & ( nn_dyn2d_dta(ib_bdy) .eq. 1 .or. nn_dyn2d_dta(ib_bdy) .eq. 3 .or. nn_dyn3d_dta(ib_bdy) .eq. 1 ) ) THEN 285 & ( nn_dyn2d_dta(ib_bdy) .EQ. 1 .OR. nn_dyn2d_dta(ib_bdy) .EQ. 3 .OR. & 286 & nn_dyn3d_dta(ib_bdy) .EQ. 1 ) ) THEN 278 287 igrd = 2 ! zonal velocity 279 288 dta_bdy(ib_bdy)%u2d(:) = 0.0 … … 306 315 ENDIF 307 316 IF( nn_dyn2d(ib_bdy) .gt. 0 .and. nn_dyn2d_dta(ib_bdy) .ge. 2 ) THEN ! update tidal harmonic forcing 308 CALL bdytide_update( kt=kt, idx=idx_bdy(ib_bdy), dta=dta_bdy(ib_bdy), td=tides(ib_bdy), time_offset=time_offset ) 317 CALL bdytide_update( kt=kt, idx=idx_bdy(ib_bdy), dta=dta_bdy(ib_bdy), & 318 & td=tides(ib_bdy), time_offset=time_offset ) 309 319 ENDIF 310 320 ENDIF -
branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn3d.F90
r3680 r3703 263 263 zwgt = idx_bdy(ib_bdy)%nbd(jb,igrd) 264 264 DO jk = 1, jpkm1 265 ua(ii,ij,jk) = ( ua(ii,ij,jk) + zwgt * ( dta_bdy(ib_bdy)%u3d(jb,jk) - ub(ii,ij,jk) + pu2d(ii,ij)) ) * umask(ii,ij,jk) 265 ua(ii,ij,jk) = ( ua(ii,ij,jk) + zwgt * ( dta_bdy(ib_bdy)%u3d(jb,jk) - & 266 ub(ii,ij,jk) + pu2d(ii,ij)) ) * umask(ii,ij,jk) 266 267 END DO 267 268 END DO … … 273 274 zwgt = idx_bdy(ib_bdy)%nbd(jb,igrd) 274 275 DO jk = 1, jpkm1 275 va(ii,ij,jk) = ( va(ii,ij,jk) + zwgt * ( dta_bdy(ib_bdy)%v3d(jb,jk) - vb(ii,ij,jk) + pv2d(ii,ij)) ) * vmask(ii,ij,jk) 276 va(ii,ij,jk) = ( va(ii,ij,jk) + zwgt * ( dta_bdy(ib_bdy)%v3d(jb,jk) - & 277 vb(ii,ij,jk) + pv2d(ii,ij)) ) * vmask(ii,ij,jk) 276 278 END DO 277 279 END DO -
branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90
r3680 r3703 744 744 IF(lwp) THEN ! Since all procs read global data only need to do this check on one proc... 745 745 IF( nbrdta(ib,igrd,ib_bdy) < nbrdta(ibm1,igrd,ib_bdy) ) THEN 746 CALL ctl_stop('bdy_init : ERROR : boundary data in file must be defined in order of distance from edge nbr.', & 747 'A utility for re-ordering boundary coordinates and data files exists in the TOOLS/OBC directory') 746 CALL ctl_stop('bdy_init : ERROR : boundary data in file & 747 must be defined in order of distance from edge nbr.', & 748 'A utility for re-ordering boundary coordinates and data & 749 files exists in the TOOLS/OBC directory') 748 750 ENDIF 749 751 ENDIF … … 881 883 ENDIF 882 884 IF(nbondj .eq. 0) THEN 883 IF(com_north_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(4)-1 .OR. nbidta(ib,igrd,ib_bdy) == ie_b(4)+1) .AND. & 885 IF(com_north_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(4)-1 & 886 & .OR. nbidta(ib,igrd,ib_bdy) == ie_b(4)+1) .AND. & 884 887 & nbjdta(ib,igrd,ib_bdy) == is_b(4) .AND. nbrdta(ib,igrd,ib_bdy) == ir) THEN 885 888 com_north_b = 1 886 889 ENDIF 887 IF(com_south_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(3)-1 .OR. nbidta(ib,igrd,ib_bdy) == ie_b(3)+1) .AND. & 890 IF(com_south_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(3)-1 & 891 &.OR. nbidta(ib,igrd,ib_bdy) == ie_b(3)+1) .AND. & 888 892 & nbjdta(ib,igrd,ib_bdy) == in_b(3) .AND. nbrdta(ib,igrd,ib_bdy) == ir) THEN 889 893 com_south_b = 1 … … 906 910 ENDIF 907 911 ELSEIF(nbondj .eq. 1) THEN 908 IF(com_south_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(3)-1 .OR. nbidta(ib,igrd,ib_bdy) == ie_b(3)+1) .AND. & 912 IF( com_south_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(3)-1 .OR. & 913 & nbidta(ib,igrd,ib_bdy) == ie_b(3)+1) .AND. & 909 914 & nbjdta(ib,igrd,ib_bdy) == in_b(3) .AND. nbrdta(ib,igrd,ib_bdy) == ir) THEN 910 915 com_south_b = 1 … … 919 924 ENDIF 920 925 ELSEIF(nbondj .eq. -1) THEN 921 IF(com_north_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(4)-1 .OR. nbidta(ib,igrd,ib_bdy) == ie_b(4)+1) .AND. & 926 IF(com_north_b .ne. 1 .AND. (nbidta(ib,igrd,ib_bdy) == iw_b(4)-1 & 927 & .OR. nbidta(ib,igrd,ib_bdy) == ie_b(4)+1) .AND. & 922 928 & nbjdta(ib,igrd,ib_bdy) == is_b(4) .AND. nbrdta(ib,igrd,ib_bdy) == ir) THEN 923 929 com_north_b = 1
Note: See TracChangeset
for help on using the changeset viewer.