|
||||
File indexing completed on 2018-07-03 05:10:15 UTC
view on githubraw file Latest commit 03318334 on 2018-06-27 04:27:30 UTC4b7f67a250 Jean*0001 CBOP 0002 C !ROUTINE: SIZE.h 0003 C !INTERFACE: 0004 C include SIZE.h 0005 C !DESCRIPTION: \bv 0006 C *==========================================================* 03318334e8 Jean*0007 C | SIZE.h Declare size of underlying computational grid. 4b7f67a250 Jean*0008 C *==========================================================* 03318334e8 Jean*0009 C | The design here supports a three-dimensional model grid 0010 C | with indices I,J and K. The three-dimensional domain 0011 C | is comprised of nPx*nSx blocks (or tiles) of size sNx 0012 C | along the first (left-most index) axis, nPy*nSy blocks 0013 C | of size sNy along the second axis and one block of size 0014 C | Nr along the vertical (third) axis. 0015 C | Blocks/tiles have overlap regions of size OLx and OLy 0016 C | along the dimensions that are subdivided. 4b7f67a250 Jean*0017 C *==========================================================* 0018 C \ev 03318334e8 Jean*0019 C 0020 C Voodoo numbers controlling data layout: 0021 C sNx :: Number of X points in tile. 0022 C sNy :: Number of Y points in tile. 0023 C OLx :: Tile overlap extent in X. 0024 C OLy :: Tile overlap extent in Y. 0025 C nSx :: Number of tiles per process in X. 0026 C nSy :: Number of tiles per process in Y. 0027 C nPx :: Number of processes to use in X. 0028 C nPy :: Number of processes to use in Y. 0029 C Nx :: Number of points in X for the full domain. 0030 C Ny :: Number of points in Y for the full domain. 0031 C Nr :: Number of points in vertical direction. 4b7f67a250 Jean*0032 CEOP a368568840 Jean*0033 INTEGER sNx 0034 INTEGER sNy 0035 INTEGER OLx 0036 INTEGER OLy 0037 INTEGER nSx 0038 INTEGER nSy 0039 INTEGER nPx 0040 INTEGER nPy 0041 INTEGER Nx 0042 INTEGER Ny 0043 INTEGER Nr 4b7f67a250 Jean*0044 C-- Note: the 4 test-experiments (input, input.thsice, input.viscA4 and 0045 C input.icedyn ) have different minimum Overlap-size requirement: 0046 C input & input.thsice : work with Olx=Oly=2 (= absolute minimum size) ; 0047 C input.viscA4 : needs at least Olx=Oly=3 (for biharmonic viscosity) ; 0048 C input.icedyn : needs at least Olx=Oly=4 (CS-grid multidimensional Advect.) a368568840 Jean*0049 PARAMETER ( e7d28de3df Dimi*0050 & sNx = 32, 7772844671 Jean*0051 & sNy = 16, 4b7f67a250 Jean*0052 & OLx = 4, 0053 & OLy = 4, 7772844671 Jean*0054 & nSx = 12, a368568840 Jean*0055 & nSy = 1, 0056 & nPx = 1, 0057 & nPy = 1, 0058 & Nx = sNx*nSx*nPx, 0059 & Ny = sNy*nSy*nPy, 0060 & Nr = 15) 0061 7772844671 Jean*0062 C MAX_OLX :: Set to the maximum overlap region size of any array a368568840 Jean*0063 C MAX_OLY that will be exchanged. Controls the sizing of exch 7772844671 Jean*0064 C routine buffers. a368568840 Jean*0065 INTEGER MAX_OLX 0066 INTEGER MAX_OLY 0067 PARAMETER ( MAX_OLX = OLx, 0068 & MAX_OLY = OLy ) 0069
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated from https://github.com/MITgcm/MITgcm by the 2.2.1-MITgcm-0.1 LXR engine. The LXR team |