Opened 13 years ago
Last modified 13 years ago
#554 closed upgrade
Added capability for partial lateral boundaries — at Initial Version
| Reported by: | arango | Owned by: | arango |
|---|---|---|---|
| Priority: | major | Milestone: | Release ROMS/TOMS 3.6 |
| Component: | Nonlinear | Version: | 3.6 |
| Keywords: | Cc: |
Description
Updated the lateral boundary conditions routines to allow partial boundary conditions in nesting applications. The switch LBC_apply is introduced to specify which boundary point is set in the lateral boundary routines. It is declared in mod_boundary.F:
TYPE T_APPLY
logical, pointer :: west(:)
logical, pointer :: east(:)
logical, pointer :: south(:)
logical, pointer :: north(:)
END TYPE
TYPE (T_APPLY), allocatable :: LBC_apply(:)
These switches are set to TRUE by default. However in composite grids, the points processed by nesting are set to FALSE to allow mixed boundary conditions along the grid edges.
For example, in zetabc.F, we now have:
!
! Western edge, gradient boundary condition.
!
ELSE IF (LBC(iwest,isFsur,ng)%gradient) THEN
DO j=Jstr,Jend
IF (LBC_apply(ng)%west(j)) THEN
zeta(Istr-1,j,kout)=zeta(Istr,j,kout)
#ifdef MASKING
zeta(Istr-1,j,kout)=zeta(Istr-1,j,kout)* &
& GRID(ng)%rmask(Istr-1,j)
#endif
END IF
END DO
Note:
See TracTickets
for help on using tickets.
