| 1 | C       $Id$ | 
| 2 | C--   File plot_field.F: Routines for "formatted" I/O in the MITgcm UV | 
| 3 | C--                      implementation. | 
| 4 | C--    Contents | 
| 5 | C--    o plot_field_xyr8 - Writes a XY Real*8 field | 
| 6 | SUBROUTINE PLOT_FIELD_XYR8( | 
| 7 | I                            fld, fldNam) | 
| 8 |  | 
| 9 | C     /==========================================================\ | 
| 10 | C     | SUBROUTINE PLOT_FIELD_XYR8                               | | 
| 11 | C     | Print out an XY Real 8 field using text map.             | | 
| 12 | C     |==========================================================| | 
| 13 | C     | This routine references "numerical model" parameters like| | 
| 14 | C     | like the integration time. It uses these to create a     | | 
| 15 | C     | title for the field before calling a generic execution   | | 
| 16 | C     | environment support routine.                             | | 
| 17 | C     | This routine can also be edited to cause only some region| | 
| 18 | C     | of a field to be printed by default, or every other      | | 
| 19 | C     | point etc..                                              | | 
| 20 | C     | Other plot formats can also be substituted here.         | | 
| 21 | C     \==========================================================/ | 
| 22 | #include "SIZE.h" | 
| 23 | #include "EEPARAMS.h" | 
| 24 | #include "PARAMS.h" | 
| 25 | #include "CG2D.h" | 
| 26 |  | 
| 27 | C     == Routine arguments == | 
| 28 | Real fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy) | 
| 29 | CHARACTER*(*) fldNam | 
| 30 | INTEGER myThid | 
| 31 |  | 
| 32 | C     == Local variables == | 
| 33 | CHARACTER*(MAX_LEN_MBUF) fldTitle | 
| 34 | INTEGER iStart, iEnd, iStride | 
| 35 | INTEGER jStart, jEnd, jStride | 
| 36 | INTEGER kStart, kEnd, kStride | 
| 37 | INTEGER biStart, biEnd, biStride | 
| 38 | INTEGER bjStart, bjEnd, bjStride | 
| 39 |  | 
| 40 | C--    Form name for identifying "plot" | 
| 41 | WRITE(fldTitle,'(A,A,A,I4)') ' Field ', fldNam, ' at iteration ', | 
| 42 | & nIter | 
| 43 | C--    Do "plot" using textual contour map "execution environment" routine | 
| 44 | C      Substitute other plotting utilities here! | 
| 45 | iStart   =  1-OLx | 
| 46 | iEnd     =  sNx+OLx | 
| 47 | iStride  =  1 | 
| 48 | jStart   =  sNy+OLy | 
| 49 | jEnd     =  1-OLy | 
| 50 | jStride  = -1 | 
| 51 | kStart   =  1 | 
| 52 | kEnd     =  1 | 
| 53 | kStride  =  1 | 
| 54 | biStart  =  1 | 
| 55 | biEnd    =  1 | 
| 56 | biStride =  1 | 
| 57 | bjStart  =  1 | 
| 58 | bjEnd    =  1 | 
| 59 | bjStride = -1 | 
| 60 | CALL PRINT_MAPR8( | 
| 61 | I        fld, fldTitle, | 
| 62 | I         1-OLx,sNx+OLx,1-OLy,sNy+OLy,1,1,  1, 1, | 
| 63 | I         iStart,   iEnd,  iStride, | 
| 64 | I         jStart,   jEnd,  jStride, | 
| 65 | I         kStart,   kEnd,  kStride, | 
| 66 | I        biStart,  biEnd, biStride, | 
| 67 | I        bjStart,  bjEnd, bjStride ) | 
| 68 |  | 
| 69 | RETURN | 
| 70 | END | 
| 71 |  |