C $Header: /u/gcmpack/MITgcm/pkg/obcs/OBCS_GRID.h,v 1.5 2014/11/25 01:07:23 jmc Exp $ C $Name: $ #ifdef ALLOW_OBCS CBOP C !ROUTINE: OBCS_GRID.h C !INTERFACE: C #include "OBCS_GRID.h" C !DESCRIPTION: C *==========================================================* C | OBCS_GRID.h C | o Header file containing OBCS location on the grid C *==========================================================* C | o Note: does not (and should not) contain any conditional C | statement that depends on OBCS options ; therefore C | can be safely included without OBCS_OPTIONS.h C *==========================================================* CEOP C tileHasOB[N,S,E,W] :: this tile has OB at Northern/Southern/Eastern/Western edge C OB_Jn, OB_Js :: indices of Northern & Southern OB location (cell center pt) C OB_Ie, OB_Iw :: indices of Eastern & Western OB location (cell center pt) C OB_indexNone :: null value for OB index (if row or column without OB) C OBCS_indexStatus :: track status of OB indices setting C OBCS_insideMask :: Inside OB region mask (zero beyond OB). C OB_connectNumber :: total number of connected parts for this level C OBN_connect :: domain connected piece Id of this Northern OB grid point C OBS_connect :: domain connected piece Id of this Southern OB grid point C OBE_connect :: domain connected piece Id of this Eastern OB grid point C OBW_connect :: domain connected piece Id of this Western OB grid point COMMON /OBCS_ACTIVE_TILES/ & tileHasOBN, tileHasOBS, tileHasOBE, tileHasOBW LOGICAL tileHasOBN(nSx,nSy) LOGICAL tileHasOBS(nSx,nSy) LOGICAL tileHasOBE(nSx,nSy) LOGICAL tileHasOBW(nSx,nSy) COMMON /OBCS_GRID_INDICES/ & OB_Jn, OB_Js, OB_Ie, OB_Iw, & OB_indexNone, OBCS_indexStatus INTEGER OB_Jn(1-OLx:sNx+OLx,nSx,nSy) INTEGER OB_Js(1-OLx:sNx+OLx,nSx,nSy) INTEGER OB_Ie(1-OLy:sNy+OLy,nSx,nSy) INTEGER OB_Iw(1-OLy:sNy+OLy,nSx,nSy) INTEGER OB_indexNone INTEGER OBCS_indexStatus COMMON /OBCS_MASK_RS/ & OBCS_insideMask _RS OBCS_insideMask(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) COMMON /OBCS_CONNECTED_ID/ & OB_connectNumber, & OBN_connect, OBS_connect, OBE_connect, OBW_connect INTEGER OB_connectNumber(Nr) INTEGER OBN_connect(1:sNx,Nr,nSx,nSy) INTEGER OBS_connect(1:sNx,Nr,nSx,nSy) INTEGER OBE_connect(1:sNy,Nr,nSx,nSy) INTEGER OBW_connect(1:sNy,Nr,nSx,nSy) #endif /* ALLOW_OBCS */