Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:41:59 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
ef84d10314 Ed H*0001 #include "MNC_OPTIONS.h"
c253a77bb7 Jean*0002 
ef84d10314 Ed H*0003 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
e6bb5b2cc3 Ed H*0004 CBOP 0
9a263a84a8 Ed H*0005 C     !ROUTINE: MNC_CW_SET_GATTR
c253a77bb7 Jean*0006 
9a263a84a8 Ed H*0007 C     !INTERFACE:
c253a77bb7 Jean*0008       SUBROUTINE MNC_CW_SET_GATTR(
ef84d10314 Ed H*0009      I     fname,
3f2ea2a4ed Ed H*0010      I     bi, bj, tnum,
c253a77bb7 Jean*0011      I     myThid )
ef84d10314 Ed H*0012 
1b5fb69d21 Ed H*0013 C     !DESCRIPTION:
                0014 C     This subroutine uses the MNC convenience wrapper layer to write
                0015 C     per-tile grid (grid.xxxxx.nc) files containing all of the grid
                0016 C     information including locations, spacing, areas, \textit{etc}.
                0017 
                0018 C     !USES:
ef84d10314 Ed H*0019       implicit none
2f7dcdd863 Ed H*0020 #include "BUILD_INFO.h"
ef84d10314 Ed H*0021 #include "SIZE.h"
                0022 #include "EEPARAMS.h"
                0023 #include "PARAMS.h"
a30418b6b9 Ed H*0024 #include "MNC_PARAMS.h"
da4209d891 Ed H*0025 #ifdef ALLOW_EXCH2
f9f661930b Jean*0026 #include "W2_EXCH2_SIZE.h"
da4209d891 Ed H*0027 #include "W2_EXCH2_TOPOLOGY.h"
                0028 #endif
9a263a84a8 Ed H*0029 C     Functions
                0030       integer ILNBLNK
ef84d10314 Ed H*0031 
9a263a84a8 Ed H*0032 C     !INPUT PARAMETERS:
ef84d10314 Ed H*0033       integer myThid, bi,bj, tnum
                0034       character*(*) fname
1b5fb69d21 Ed H*0035 CEOP
ef84d10314 Ed H*0036 
9a263a84a8 Ed H*0037 C     !LOCAL VARIABLES:
                0038       integer ilnb
                0039 
3f2ea2a4ed Ed H*0040       CALL MNC_FILE_REDEF(fname, myThid)
ef84d10314 Ed H*0041 
                0042 C     Global attributes
9a263a84a8 Ed H*0043       ilnb = ILNBLNK(the_run_name)
                0044       IF (ilnb .GT. 0) THEN
                0045         CALL MNC_FILE_ADD_ATTR_STR(fname, 'the_run_name',
                0046      &       the_run_name, myThid )
                0047       ENDIF
                0048 
                0049 #ifdef THISVER
                0050       CALL MNC_FILE_ADD_ATTR_STR(fname, 'MITgcm_version',
                0051      &     THISVER ,
                0052      &     myThid )
                0053 #endif
                0054 #ifdef THISUSER
                0055       CALL MNC_FILE_ADD_ATTR_STR(fname, 'build_user',
                0056      &     THISUSER ,
                0057      &     myThid )
                0058 #endif
                0059 #ifdef THISHOST
                0060       CALL MNC_FILE_ADD_ATTR_STR(fname, 'build_host',
                0061      &     THISHOST ,
                0062      &     myThid )
                0063 #endif
                0064 #ifdef THISDATE
                0065       CALL MNC_FILE_ADD_ATTR_STR(fname, 'build_date',
                0066      &     THISDATE ,
                0067      &     myThid )
                0068 #endif
                0069 
                0070       CALL MNC_FILE_ADD_ATTR_STR(fname, 'MITgcm_URL',
3f2ea2a4ed Ed H*0071      &     'http://mitgcm.org', myThid )
c253a77bb7 Jean*0072       CALL MNC_FILE_ADD_ATTR_STR(fname, 'MITgcm_tag_id',
3f2ea2a4ed Ed H*0073      &     MNC_TAG_ID, myThid )
c253a77bb7 Jean*0074       CALL MNC_FILE_ADD_ATTR_DBL(fname, 'MITgcm_mnc_ver',
3a6f2e4083 Ed H*0075      &     1, 0.9D0, myThid )
ef84d10314 Ed H*0076 
                0077 C     Grid info included as attributes
3f2ea2a4ed Ed H*0078       CALL MNC_FILE_ADD_ATTR_INT(fname,'tile_number', 1, tnum, myThid)
                0079       CALL MNC_FILE_ADD_ATTR_INT(fname,'bi', 1, bi, myThid)
                0080       CALL MNC_FILE_ADD_ATTR_INT(fname,'bj', 1, bj, myThid)
c253a77bb7 Jean*0081 C jmc: xC0 & yC0 are not initialised + their type does not match (RS type, not DBL)
                0082 c     CALL MNC_FILE_ADD_ATTR_DBL(fname,'xC0', 1, xC0, myThid)
                0083 c     CALL MNC_FILE_ADD_ATTR_DBL(fname,'yC0', 1, yC0, myThid)
                0084 c     CALL MNC_FILE_ADD_ATTR_DBL(fname,'gravitySign',
566d3da289 Alis*0085 c    &     1, gravitySign, myThid )
                0086 c     CALL MNC_FILE_ADD_ATTR_DBL(fname,'rkFac', 1, rkFac, myThid)
119438a015 Ed H*0087 
                0088 #ifdef ALLOW_EXCH2
                0089 C     W2/exch2 information
c253a77bb7 Jean*0090       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0091      &     'exch2_nNeighbours', 1, exch2_nNeighbours(tnum), myThid)
c253a77bb7 Jean*0092       CALL MNC_FILE_ADD_ATTR_INT(fname,
                0093      &     'exch2_neighbourId', exch2_nNeighbours(tnum),
3f2ea2a4ed Ed H*0094      &     exch2_neighbourId(1,tnum), myThid)
25f1f9f613 Ed H*0095 
c253a77bb7 Jean*0096       CALL MNC_FILE_ADD_ATTR_INT(fname, 'exch2_pij',
53bb8d787c Jean*0097      &     4*exch2_nNeighbours(tnum), exch2_pij(1,1,tnum), myThid)
c253a77bb7 Jean*0098       CALL MNC_FILE_ADD_ATTR_INT(fname, 'exch2_oi',
3f2ea2a4ed Ed H*0099      &     exch2_nNeighbours(tnum), exch2_oi(1,tnum), myThid)
c253a77bb7 Jean*0100       CALL MNC_FILE_ADD_ATTR_INT(fname, 'exch2_oj',
3f2ea2a4ed Ed H*0101      &     exch2_nNeighbours(tnum), exch2_oj(1,tnum), myThid)
25f1f9f613 Ed H*0102 
c253a77bb7 Jean*0103       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0104      &     'exch2_isNedge', 1, exch2_isNedge(tnum), myThid)
c253a77bb7 Jean*0105       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0106      &     'exch2_isSedge', 1, exch2_isSedge(tnum), myThid)
c253a77bb7 Jean*0107       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0108      &     'exch2_isEedge', 1, exch2_isEedge(tnum), myThid)
c253a77bb7 Jean*0109       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0110      &     'exch2_isWedge', 1, exch2_isWedge(tnum), myThid)
25f1f9f613 Ed H*0111 
c253a77bb7 Jean*0112       CALL MNC_FILE_ADD_ATTR_INT(fname,
3f2ea2a4ed Ed H*0113      &     'exch2_myFace', 1, exch2_myFace(tnum), myThid)
c253a77bb7 Jean*0114       CALL MNC_FILE_ADD_ATTR_INT(fname,
53bb8d787c Jean*0115      &     'exch2_txGlobalo', 1, exch2_txGlobalo(tnum), myThid)
c253a77bb7 Jean*0116       CALL MNC_FILE_ADD_ATTR_INT(fname,
53bb8d787c Jean*0117      &     'exch2_tyGlobalo', 1, exch2_tyGlobalo(tnum), myThid)
c253a77bb7 Jean*0118       CALL MNC_FILE_ADD_ATTR_INT(fname,
53bb8d787c Jean*0119      &     'exch2_tBasex', 1, exch2_tBasex(tnum), myThid)
c253a77bb7 Jean*0120       CALL MNC_FILE_ADD_ATTR_INT(fname,
53bb8d787c Jean*0121      &     'exch2_tBasey', 1, exch2_tBasey(tnum), myThid)
119438a015 Ed H*0122 #endif
c253a77bb7 Jean*0123 
ef84d10314 Ed H*0124 C     Model parameters (SIZE.h) included as attributes
3f2ea2a4ed Ed H*0125       CALL MNC_FILE_ADD_ATTR_INT(fname, 'sNx', 1, sNx, myThid)
                0126       CALL MNC_FILE_ADD_ATTR_INT(fname, 'sNy', 1, sNy, myThid)
                0127       CALL MNC_FILE_ADD_ATTR_INT(fname, 'OLx', 1, OLx, myThid)
                0128       CALL MNC_FILE_ADD_ATTR_INT(fname, 'OLy', 1, OLy, myThid)
                0129       CALL MNC_FILE_ADD_ATTR_INT(fname, 'nSx', 1, nSx, myThid)
                0130       CALL MNC_FILE_ADD_ATTR_INT(fname, 'nSy', 1, nSy, myThid)
                0131       CALL MNC_FILE_ADD_ATTR_INT(fname, 'nPx', 1, nPx, myThid)
                0132       CALL MNC_FILE_ADD_ATTR_INT(fname, 'nPy', 1, nPy, myThid)
                0133       CALL MNC_FILE_ADD_ATTR_INT(fname, 'Nx', 1, Nx, myThid)
                0134       CALL MNC_FILE_ADD_ATTR_INT(fname, 'Ny', 1, Ny, myThid)
                0135       CALL MNC_FILE_ADD_ATTR_INT(fname, 'Nr', 1, Nr, myThid)
c253a77bb7 Jean*0136 
ef84d10314 Ed H*0137       RETURN
                0138       END
                0139 
                0140 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0141