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.