Back to home page

MITgcm

 
 

    


Warning, /pkg/mnc/SIZE.t is written in an unsupported language. File is not indexed.

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
3623ff8097 Ed H*0001 C
                0002 CBOP
                0003 C    !ROUTINE: SIZE.h
                0004 C    !INTERFACE:
                0005 C    include SIZE.h
                0006 C    !DESCRIPTION: \bv
                0007 C     *==========================================================*
                0008 C     | SIZE.h Declare size of underlying computational grid.     
                0009 C     *==========================================================*
                0010 C     | The design here support a three-dimensional model grid    
                0011 C     | with indices I,J and K. The three-dimensional domain      
                0012 C     | is comprised of nPx*nSx blocks of size sNx along one axis 
                0013 C     | nPy*nSy blocks of size sNy along another axis and one     
                0014 C     | block of size Nz along the final axis.                    
                0015 C     | Blocks have overlap regions of size OLx and OLy along the 
                0016 C     | dimensions that are subdivided.                           
                0017 C     *==========================================================*
                0018 C     \ev
                0019 CEOP
                0020 C     Voodoo numbers controlling data layout.
                0021 C     sNx :: No. X points in sub-grid.
                0022 C     sNy :: No. Y points in sub-grid.
                0023 C     OLx :: Overlap extent in X.
                0024 C     OLy :: Overlat extent in Y.
                0025 C     nSx :: No. sub-grids in X.
                0026 C     nSy :: No. sub-grids in Y.
                0027 C     nPx :: No. of processes to use in X.
                0028 C     nPy :: No. of processes to use in Y.
                0029 C     Nx  :: No. points in X for the total domain.
                0030 C     Ny  :: No. points in Y for the total domain.
                0031 C     Nr  :: No. points in Z for full process domain.
                0032       INTEGER sNx
                0033       INTEGER sNy
                0034       INTEGER OLx
                0035       INTEGER OLy
                0036       INTEGER nSx
                0037       INTEGER nSy
                0038       INTEGER nPx
                0039       INTEGER nPy
                0040       INTEGER Nx
                0041       INTEGER Ny
                0042       INTEGER Nr
                0043       PARAMETER (
                0044      &           sNx =  20,
                0045      &           sNy =  16,
                0046      &           OLx =   4,
                0047      &           OLy =   4,
                0048      &           nSx =   1,
                0049      &           nSy =   1,
                0050      &           nPx =   1,
                0051      &           nPy =   1,
                0052      &           Nx  = sNx*nSx*nPx,
                0053      &           Ny  = sNy*nSy*nPy,
                0054      &           Nr  =  23)
                0055 
                0056 C     MAX_OLX  - Set to the maximum overlap region size of any array
                0057 C     MAX_OLY    that will be exchanged. Controls the sizing of exch
                0058 C                routine buufers.
                0059       INTEGER MAX_OLX
                0060       INTEGER MAX_OLY
                0061       PARAMETER ( MAX_OLX = OLx,
                0062      &            MAX_OLY = OLy )
                0063 
                0064 
                0065 CEH3 ;;; Local Variables: ***
                0066 CEH3 ;;; mode:fortran ***
                0067 CEH3 ;;; End: ***
                0068