/[MITgcm]/MITgcm/model/src/write_grid.F
ViewVC logotype

Diff of /MITgcm/model/src/write_grid.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.17 by edhill, Thu Oct 20 20:23:15 2005 UTC revision 1.18 by jmc, Mon Oct 24 18:16:07 2005 UTC
# Line 36  C     myThid -  Number of this instances Line 36  C     myThid -  Number of this instances
36        INTEGER myThid        INTEGER myThid
37    
38  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
       character*(4) bfname  
39  C     tmpfld  - Temporary array used to compute & write Total Depth  C     tmpfld  - Temporary array used to compute & write Total Depth
40  C               has to be in common for multi threading  C               has to be in common for multi threading
41  C     ?aja: not sure why the COMMON block is necessary - should ask JMC?  C     ?aja: not sure why the COMMON block is necessary - should ask JMC?
42  c     COMMON / LOCAL_INI_MASKS_ETC / tmpfld  c     COMMON / LOCAL_INI_MASKS_ETC / tmpfld
43        _RS tmpfld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)        _RS tmpfld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
44        INTEGER i,j,bi,bj        INTEGER i,j,bi,bj
45          LOGICAL writegrid_mdsio
46    #ifdef ALLOW_MNC
47          CHARACTER*(4) bfname
48    #endif
49  CEOP  CEOP
50    
51  C     Calculate the fluid thickness in R coordinates as seen by the  C     Calculate the fluid thickness in R coordinates as seen by the
# Line 59  C             Total fluid column thickne Line 62  C             Total fluid column thickne
62          ENDDO          ENDDO
63        ENDDO        ENDDO
64    
65          writegrid_mdsio = .TRUE.
66  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
67        IF ( (.NOT. useMNC) .OR. (outputTypesInclusive) ) THEN        IF ( useMNC ) THEN
68            writegrid_mdsio = outputTypesInclusive .OR. .NOT.writegrid_mnc
69          ENDIF
70  #endif /* ALLOW_MNC */  #endif /* ALLOW_MNC */
71    
72        _BEGIN_MASTER( myThid )        IF ( writegrid_mdsio ) THEN
73    
74            _BEGIN_MASTER( myThid )
75    
76  C     Write horizontal grid arrays  C     Write horizontal grid arrays
77        CALL WRITE_FLD_XY_RS( 'XC',' ',XC,0,myThid)          CALL WRITE_FLD_XY_RS( 'XC',' ',XC,0,myThid)
78        CALL WRITE_FLD_XY_RS( 'YC',' ',YC,0,myThid)          CALL WRITE_FLD_XY_RS( 'YC',' ',YC,0,myThid)
79        CALL WRITE_FLD_XY_RS( 'XG',' ',XG,0,myThid)          CALL WRITE_FLD_XY_RS( 'XG',' ',XG,0,myThid)
80        CALL WRITE_FLD_XY_RS( 'YG',' ',YG,0,myThid)          CALL WRITE_FLD_XY_RS( 'YG',' ',YG,0,myThid)
81        CALL WRITE_FLD_XY_RS( 'RAC',' ',rA,0,myThid)          CALL WRITE_FLD_XY_RS( 'RAC',' ',rA,0,myThid)
82        CALL WRITE_FLD_XY_RS( 'RAW',' ',rAw,0,myThid)          CALL WRITE_FLD_XY_RS( 'RAW',' ',rAw,0,myThid)
83        CALL WRITE_FLD_XY_RS( 'RAS',' ',rAs,0,myThid)          CALL WRITE_FLD_XY_RS( 'RAS',' ',rAs,0,myThid)
84        CALL WRITE_FLD_XY_RS( 'RAZ',' ',rAz,0,myThid)          CALL WRITE_FLD_XY_RS( 'RAZ',' ',rAz,0,myThid)
85        CALL WRITE_FLD_XY_RS( 'DXG',' ',DXG,0,myThid)          CALL WRITE_FLD_XY_RS( 'DXG',' ',DXG,0,myThid)
86        CALL WRITE_FLD_XY_RS( 'DYG',' ',DYG,0,myThid)          CALL WRITE_FLD_XY_RS( 'DYG',' ',DYG,0,myThid)
87        CALL WRITE_FLD_XY_RS( 'DXC',' ',DXC,0,myThid)          CALL WRITE_FLD_XY_RS( 'DXC',' ',DXC,0,myThid)
88        CALL WRITE_FLD_XY_RS( 'DYC',' ',DYC,0,myThid)          CALL WRITE_FLD_XY_RS( 'DYC',' ',DYC,0,myThid)
89        IF ( usingCurvilinearGrid ) THEN          IF ( usingCurvilinearGrid ) THEN
90          CALL WRITE_FLD_XY_RS( 'AngleCS',' ',angleCosC,0,myThid)            CALL WRITE_FLD_XY_RS( 'AngleCS',' ',angleCosC,0,myThid)
91          CALL WRITE_FLD_XY_RS( 'AngleSN',' ',angleSinC,0,myThid)            CALL WRITE_FLD_XY_RS( 'AngleSN',' ',angleSinC,0,myThid)
92        ENDIF          ENDIF
93  C     Write 3D geometry arrays  C     Write 3D geometry arrays
94        CALL WRITE_FLD_XY_RS( 'Depth',' ',tmpfld,0,myThid)          CALL WRITE_FLD_XY_RS( 'Depth',' ',tmpfld,0,myThid)
95        CALL WRITE_FLD_XYZ_RS( 'hFacC',' ',hFacC,0,myThid)          CALL WRITE_FLD_XYZ_RS( 'hFacC',' ',hFacC,0,myThid)
96        CALL WRITE_FLD_XYZ_RS( 'hFacW',' ',hFacW,0,myThid)          CALL WRITE_FLD_XYZ_RS( 'hFacW',' ',hFacW,0,myThid)
97        CALL WRITE_FLD_XYZ_RS( 'hFacS',' ',hFacS,0,myThid)          CALL WRITE_FLD_XYZ_RS( 'hFacS',' ',hFacS,0,myThid)
98        IF (buoyancyRelation .EQ. 'ATMOSPHERIC')          IF (buoyancyRelation .EQ. 'ATMOSPHERIC')
99       &     CALL WRITE_FLD_XY_RS( 'topo_P',' ',Ro_surf,0,myThid)       &     CALL WRITE_FLD_XY_RS( 'topo_P',' ',Ro_surf,0,myThid)
100    
101        _END_MASTER(myThid)          _END_MASTER(myThid)
102    
103          ENDIF
104    
105  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
106        ELSE        IF ( useMNC .AND. writegrid_mnc ) THEN
107    
108          _BEGIN_MASTER( myThid )          _BEGIN_MASTER( myThid )
109          bfname='grid'          bfname='grid'

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.22