CALL SEQUENCE... ggplot Z U V X INPUT OUTPUT [ -t1 VAL1 -name VAL2 -lv1 VAL3 \ -kind VAL4 -def ] DESCRIPTION... ggplot - CREATES NCAR MAP AND/OR VECTOR PLOT FROM CCC FILE(S) AUTHORS - J.D.Henderson, L.Lefaivre AND R.Laprise. LAST REVISION: $Header: Correct-the-memory-allocation-code-in-LSPGM-GGPLOT-and-add-the-libs-target-in-the-main-Makefile @ Thu, 2 Apr 2015 18:18:06 -0400 (Bernard Dugas) $ PURPOSE - PLOT MAPS OF Z, Z AND X, VECTOR FIELD OF (U,V), Z AND (U,V), Z, X AND (U,V), WITH OR WITHOUT CONTINENTAL OUTLINE, ON LAT- LONG OR POLAR STEREOGRAPHIC PROJECTION. CONTOURS OF Z AND X MAY BE PLOTTED BY CONTOURING ISOTROPIC LINES, OR FILLING CONTOUR LEVELS WITH PATTERNS, OR A COMBINATION OF BOTH FOR EACH FIELD. TO PLOT A SUB-AREA, EXECUTE PROGRAM SUBAREA TO PRODUCE THE IELDS Z, X, U, V AS NEEDED. IF SUBAREA IS NOT CALLED, Z,X,U AND V WILL BE TREATED AS GLOBAL OR HEMISPHERIC DATA, IE PLOTTED OVER A GLOBAL OR HEMISPHERIC MAP, ACCORDING TO IBUF(7). THE PROGRAM USES THE NCAR PLOT PACKAGE. INPUT FILES... Z = FILE CONTAINING GRIDS TO BE CONTOURED/SHADED U,V = FILES CONTAINING THE U AND V WIND COMPONENTS TO BE PLOTTED X = POSSIBLE SECOND FILE CONTAINING GRIDS TO BE CONTOURED/SHAD CARDS READ... FOR CONTOUR MAP... =============== CARD 1- ------ READ(5,5010)NSTEP,NAME,LEVEL,ICOSH1,ICOSH2,MS,SCAL, FLO,HI,FINC,MOD,LHI,JPS 5010 FORMAT(10X,I10,1X,A4,I5,2I1,I3,4E10.0,I1,2I2) NSTEP (t1) TIMESTEP NUMBER = -1, FOR A DON'T CARE CONDITION. NAME NAME OF THE VARIABLE TO BE CONTOURED. ='SKIP', AND VECTOR PLOT IS LATER INTENDED, MOD HAS TO BE CORRECTLY SPECIFIED ON THIS FIRST SKIP CARD. ='NEXT', TO CONTOUR NEXT FIELD, = BLANK, TO NOT CHECK THE NAME OF THE NEXT FIELD, ='ALL', TO CONTOUR ALL FIELDS. THE CARD SET IS ONLY READ ONCE AND APPLIED EVERYWHERE. LEVEL (lv1) LEVEL NUMBER ICOSH1 CONTOUR LINE/FILL CODE FOR FIRST SCALAR FIELD. ICOSH2 CONTOUR LINE/FILL CODE FOR SECOND SCALAR FIELD. = 0, CONTOUR LINES ONLY = 1, CONTOUR LINES, NO ZERO LINE = 2, CONTOURS AND SHADING = 3, CONTOURS AND SHADING, NO ZERO LINE = 4, SHADING ONLY NOTE : FOR THE NO ZERO LINE OPTION, IT IS ASSUMED THAT SCAL,FLO,HI,FINC ARE CHOSEN SO THAT (0.-FLO)/FI IS AN INTEGER DIVISIBLE BY TWO, AND THAT NEITHE FLO OR HI = 0. MS WAS LINE PRINTER MAP SCALE CONTROL (NO LONGER SUPPORTED). IF MS<0 THEN THE PUBLICATION QUALITY OPTIONS ARE ACTIVE. =-1, NO CONTOUR LABELS, THICKER LINES, NO HIGH,LOW LABELS. =-2, NO CONTOUR LABELS, THICKER LINES. SCAL SCALING FACTOR. IF SCAL = 0. THEN SCAL,FLO,HI AND FINC ARE CHOSEN BY THE PROGRAM. FLO LOWEST VALUE TO BE CONTOURED HI HIGEST VALUE TO BE CONTOURED FINC CONTOUR INTERVAL MOD = 0, ONE SCALAR FIELD ONLY. = 1, VECTOR PLOT ONLY (CARD 1 USED ONLY TO DEFINE MOD, AND JPS CARD 2 IS IGNORED) = 2, BOTH SCALAR AND VECTOR FIELDS ARE PLOTTED. = 3, TWO SCALAR FIELDS (IF BOTH CONTOURED, THE FIRST WILL USE SOLID LINES, THE SECOND WILL USE DASHED) = 4, TWO SCALAR FIELDS, 1 VECTOR FIELD. LHI =0,1,HIGHS,LOWS LABELLED. LON 0 IN CENTRE. M,P DRAWN =-1, .......NOT LABELLED. LON 0 IN CENTRE. M,P DRAWN = 2, HIGHS,LOWS LABELLED. LON 180 IN CENTRE. M,P DRAWN =-2, .......NOT LABELLED. LON 180 IN CENTRE. M,P DRAWN = 3, HIGHS,LOWS LABELLED. LON 0 IN CENTRE. M,P NOT D =-3, .......NOT LABELLED. LON 0 IN CENTRE. M,P NOT D = 4, HIGHS,LOWS LABELLED. LON 180 IN CENTRE. M,P NOT D =-4, .......NOT LABELLED. LON 180 IN CENTRE. M,P NOT D NOTE : THE LON 0/180 OPTION IS ONLY EXECUTED FOR GLOBA LAT-LON PLOTS. OTHERWISE IT IS IGNORED. ABS(JPS) = 1, NMC STANDART 55x51 POLAR STEREOGRAPHIC PROJECTION. = 2, NON-STANDART POLAR STEREOGRAPHIC PROJECTION. = 7, SQUARE PLOT IRREGARDLESS OF ASPECT RATIO OF INPUT FILE. TICKS ON SIDE OF PLOT AT EACH DATA POINT. T DATA POINTS ARE THE ORIGINAL GRID POINTS IF PLOTT A CYLINDRICAL EQUIDISTANT PLOT. OTHERWISE THEY AR INTERPOLATED POINTS, AND BEAR NO RELATION TO THE ORIGINAL MODEL GRID. NO CONTINENTAL OUTLINE. =0,8,CYLINDRICAL EQUIDISTANT PROJECTION. = 9, SAME AS FOR JPS=7, BUT THE ASPECT RATIO OF THE PLOT IS THE SAME AS THAT OF THE INPUT FILE. JPS < 0, NO CONTINENTAL OUTLINE IS PLOTTED. NOTE : IF JPS = 7 OR 9 WHEN PLOTTING A VECTOR FIELD ON OR NOT CONTOURING THE FIRST SCALAR FIELD (MOD=1 ICOSH=4) JPS IS SET TO 8, AND A WARNING MESSAGE PRINTED. CARD 2- ------ READ(5,5015) LABEL1 5015 FORMAT(A80) LABEL1 IS AN 80 CHARACTER LABEL FOR CONTOUR MAP. ABSENT IF NAME='SKIP'. FOR NON-STANDART POLAR/STEREOGRAPHIC PROJECTIONS... ================================================ CARD 3- ------- READ(5,5020) IP,JP,D60,DGRW 5020 FORMAT(20X,2I5,2E10.0) IP,JP POSITION OF THE POLE WITH RESPECT TO THE ARRAY ORIGIN (1,1). THIS DOES NOT HAVE TO BE INSIDE THE ARRAY (I.E. EITHER NUMBERS CAN BE NEGATIVE OR LARGER THAN THE ACTUAL ARRAY SIZES). (1,1) WILL MEAN THAT THE POLE AND ORIGIN COINCIDE. DGRW THE ORIENTATION OF THE GREENWICH MERIDIAN WITH TO THE HORIZONTAL. POSITIVE VALUES CLOCKWISE. D60 DEFINES THE GRID SIZE IN METERS. THE LAST TWO VALUES SHOULD BE THE SAME AS THE ONES ENTERED IN A PREVIOUSLY CALLED GGAPS, AND HAVE THE SAME MEANING... FOR SHADING CONTOUR LEVELS OF FIRST SCALAR FIELD ================================================ CARD 4- ------- READ(5,5025) NPAT, (IPAT(I),I=1,NPAT) 5025 FORMAT(10X,10I5) NPAT NUMBER OF GRAY SCALE LEVELS. (3 TO 20 LEVELS). = 0, IMPLIES 10. IPAT(NPAT) NPAT GRAY SCALE PATTERN CODES. 0=WHITE, 48=LIGHT GREY, 49+ = INCREASINGLY DARKER GRE INPUT 0,48,50,52,... OR 0,48,0,48,... SUGGESTED. (IRRELEVANT IF NPAT=0) CARD 5- ------- READ(5,5030) (ZLEV(I),I=1,NPAT) 5030 FORMAT(10X,7E10.0) ZLEV(NPAT) = NPAT DATA VALUES AT WHICH TO CHANGE SHADING PATTERNS THE FIRST IPAT PATTERN WILL SHADE THE CONTOUR LEVEL WITH VALUES < ZLEV(1). THE SECOND IPAT PATTERN WILL SHADE AREAS WITH VALUES BETWEEN ZLEV(1) AND ZLEV(2), AND SO ON FOR THE REST OF THE ARRAY. (IRRELEVANT IF NPAT=0) FOR SECOND SCALAR FIELD ======================= CARD 6- ------ READ(5,5010)NSTEP,NAME,LEVEL,ICOSH1,ICOSH2,MS,SCAL,FLO, HI,FINC,MOD,LHI,JPS 5010 FORMAT(10X,I10,1X,A4,I5,2I1,I3,4E10.0,I1,2I2) VARIABLES IN () ARE NOT USED, BUT THEIR PLACES HAVE BEEN KEPT. NSTEP TIMESTEP NUMBER NAME NAME OF THE VARIABLE TO BE CONTOURED. LEVEL LEVEL NUMBER (ICOSH1) NOT USED (ICOSH2) NOT USED (MS) NOT USED SCAL SCALING FACTOR. IF SCAL = 0. THEN SCAL,FLO,HI AND FINC ARE CHOSEN BY THE PROGRAM. FLO LOWEST VALUE TO BE CONTOURED HI HIGEST VALUE TO BE CONTOURED FINC CONTOUR INTERVAL (MOD) NOT USED LHI =0,1,HIGHS,LOWS LABELLED =-1, .......NOT LABELLED (JPS) NOT USED CARD 7- ------- READ(5,5015) LABEL2 5015 FORMAT(A80) LABEL2 IS AN CHARACTER LABEL FOR SECOND SCALAR FIELD FOR SHADING CONTOUR LEVELS OF SECOND SCALAR FIELD ================================================= CARD 8- ------- SAME AS CARD 3 CARD 9- ------- SAME AS CARD 4 FOR VECTOR PLOT... =============== CARD 10- ------- READ(5,5035) VSCAL,VLO,VI,INCX,INCY 5035 FORMAT(10X,3E10.0,2I5) VSCAL SCALING FACTOR FOR VECTOR MAGNITUDE VLO LOWEST VECTOR MAGNITUDE TO BE PLOTTED VI VECTOR MAGNITUDE TO BE DRAWN AS ARROW OF LENGTH DX INCX EVERY INCX GRID POINT VECTOR IS PLOTTED ALONG X AXIS INCY EVERY INCY GRID POINT VECTOR IS PLOTTED ALONG Y AXIS NOTE : NO SCALING IS DONE IF INCX OR INCY IS LESS THAN 1 . CARD 11- -------- READ(5,5015) LABELV 5015 FORMAT(A80) LABELV IS AN 80 CHARACTER LABEL FOR VECTOR PLOT. EXAMPLE OF INPUT CARDS... GGPLOT. -1 -1 -134 0 1. -100. 100. CONTOUR AND SHADE FIRST FIELD FROM -100 TO 100 BY 5. (SCREEN FILLING) 7 52 0 48 0 48 0 52 0. 10. 15. 20. 25. 30. GGPLOT. -1 -1 -1 1. 0. 100. SHADE SECOND FIELD WITH SEVEN SHADING LEVELS. 7 52 0 48 0 48 0 52 0. 10. 15. 20. 25. 30. 1. 0. 10. 2 2 VECPLOT OF EVERY SECOND (U,V) VECTOR. 0123456789012345678901234567890123456789012345678901234567890 1 2 3 4 5 6 7 NOTES - 1) VALUES EQUAL TO "SPVAL=10.E37" ARE NOT PLOTTED. 2) IF THE '-def' KEY IS SPECIFIED, THE PROGRAM ENTERS AN AUTOMATIC PLOTTING MODE IN WHICH EVERY RECORD IN FILE Z WILL BE PLOTTED, EITHER USING DEFAULT PARAMETRES VALUES OR INFORMATION FOUND ON THE FILE ITSELF. THE ONLY VALUE THAT CAN THEN BE SPECIFIED IS JPS (USING THE '-kind' KEY). 3) OTHERWISE, 2 TO 11 CARDS ARE READ IN. 4) WHEN USING RPN STD FILES, THE LABEL1,LABEL2 AND LABELV INPUT FIELDS CAN CONTAIN THE %NOMVAR% AND/OR %ETIKET% SPECIAL VALUES. THESE WILL THEN BE REPLACED AT RUN TIME BY THE ACTUAL VALUES OF NOMVAR AND ETIKET FOR THE CURRENT FIELDS BEING PLOTTED. EXIT CONDITIONS... 0 NO PROBLEMS FATAL CONDITIONS... 1 SECOND SCALAR FIELD NOT SAME SIZE AS FIRST 2 FIRST VECTOR FIELD NOT SAME SIZE AS FIRST SCALAR 3 SECOND VECTOR FIELD NOT SAME SIZE AS FIRST SCALAR 4 ERROR ABORT READING INPUT CARD 1. NO PLOTS PRODUCED. 5 ERROR ABORT READING INPUT CARD 2 6 ERROR ABORT READING INPUT CARD 3 7 ERROR ABORT READING INPUT CARD 4 8 ERROR ABORT READING INPUT CARD 5 9 ERROR ABORT READING PLTINFO 10 ERROR ABORT READING INPUT CARD 6 11 ERROR ABORT READING INPUT CARD 7 12 ERROR ABORT READING INPUT CARD 8 13 ERROR ABORT READING INPUT CARD 9 14 ERROR ABORT READING INPUT CARD 10 15 ERROR ABORT READING INPUT CARD 11 16 PLTINFO ERROR NON-FATAL CONDITIONS... 101 NO MORE FIELDS AVAILABLE FROM FILE Z 102 Z RECORD TYPE IS NOT GRID OR SUBA 103 NO MORE FIELDS AVAILABLE FROM FILE U 104 U RECORD TYPE IS NOT GRID OR SUBA 105 pltinfo PATH NAME TOO LONG 106 COULD NOT FIND FILE pltinfo 107 NO MORE FIELDS AVAILABLE FROM FILE X 108 X RECORD TYPE IS NOT GRID OR SUBA 109 NO MORE FIELDS AVAILABLE FROM FILE V 110 V RECORD TYPE IS NOT GRID OR SUBA 111 EOF ON FILE Z AFTER SKIP