CALL SEQUENCE... crvplot YAXIS XAXIS INPUT OUTPUT \ [ -t1 VAL1 -name VAL2 -lv1 VAL3 -a VAL4 -b VAL5 \ -i VAL6 VAL7 VAL8 -j VAL9 VAL10 VAL11 \ -k VAL12 VAL13 VAL14 -label VAL15 VAL16 VAL17 \ -c VAL18 -d VAL19 -l VAL20 VAL21 \ -m VAL22 VAL23 -n VAL24 VAL25 \ -kind VAL26 -def ] DESCRIPTION... crvplot - PLOT CURVES IN THE X - Y PLANE AUTHORS - F.Zwiers, R.Laprise, 1985. LAST REVISION: $Header: First-release @ 2015-01-07 16:36:15 -0500 (Bernard Dugas) $ PURPOSE - READ GROUPS OF MULTI-VALUED FUNCTIONS FROM FILE YAXIS AND PLOTS THEM AGAINST FUNCTION FROM FILE XAXIS (IF PRESENT). NOTES - 1) YAXIS AND XAXIS MUST HAVE PROPER CCC 8-WORD LABEL (MEANING THAT IT IS EITHER A ZONAL OR A TIME SERIES ARRAY). 2) SPECIFYING "-def" ON THE COMMAND LINE ACTIVATES A MODE IN WHICH THE PROGRAM WILL PLOT ALL RECORDS IN YAXIS. 3) THE DEFAULT IS TO REWIND FILE(S) YAXIS (AND XAXIS) BETWEEN EACH SET OF INPUT CARDS. HOWEVER, NOTE THAT ONLY ONE SET OF DIRECTIVES CAN BE DEFINED WHEN THE PROGRAM IS IN IN COMMAND-LINE MODE. 4) CRVPLOT CAN ONLY HANDLE REAL DATA. INPUT FILES... YAXIS = FUNCTIONS TO BE PLOTTED ON YAXIS XAXIS = FUNCTIONS TO BE PLOTTED ON XAXIS (OPTIONNAL) CARDS READ... ================================================== UP TO FOUR INPUT CARDS ARE READ. EACH SET OF INPUT CARDS DEFINES THE NUMBER OF CURVES ON THAT PLOT. ================================================== CARD 1: ------- **** TAKE NOTE OF ISAMPL BELOW **** READ (5,5010,END=901) NT,NAME,LVL,FYLO,FYHI,NSKIP,NPNTS, 1 NC,PTYPE,LTYPE,PUB,MLTRX,LSPC, 2 NFRM,IRWND,IXAXS,ISCAT,ISAMPL 5010 FORMAT(10X,I10,1X,A4,I5,2E10.0,3I5,1X,2I2,I1,I2,I2,5I1) NT (t1) = TIMESTEP NUMBER (DEFAULT IS -1). NAME = NAME OF VARIABLE (DEFAULT IS 'NEXT'). LVL (lv1) = VERTICAL LEVEL (DEFAULT IS -1). FYLO (a) = LOWER VALUE OF Y-AXIS FYHI (b) = UPPER VALUE OF Y-AXIS IF YLO=YHI, THEN AUTOMATIC SCALING IS DONE ON THE Y-AXIS NSKIP (i-1) = NO OF POINTS TO BE OMITTED AT THE BEGINNING OF EACH CURVE NSKIP=1 WILL SKIP WAVENUMBER 0 FOR SPECTRUM NSKIP>0 OMITS NSKIP POINTS FROM THE LEFT END OF EACH CURVE NSKIP<0 OMITS NSKIP POINTS FROM THE RIGHT END OF EACH CURVE ** NOTE**: THE SKIPPING OPERATION IS PERFORMED *AFTER* THE DATA HAS BEEN ARRANGED AS SPECIFIED BY LSPC (SEE LSPC BELOW). NPNTS (i-2) = MAX. NO. OF POINTS PER CURVE. NC (i-3) = MAX. NO. OF CURVES PER PLOT (NC <= 26, DEFAULT IS 1). LTYPE (j-1) =(1 ==> LIN-LIN), (2 ==> LIN-LOG), (3 ==> LOG-LIN), (4 ==> LOG-LOG) (DEFAULT IS LIN-LIN). PTYPE (j-2) = 0 (1) FOR STANDARD (CONTROLLED) LABELLING. IF PTYPE=1, THEN AN ADDITIONAL INPUT CARD IS READ (SEE BELOW). PUB (j-3) = 0, NORMAL PRINTING (DEFAULT) = 1, 'PUBLICATION' QUALITY PRINTING LSPC (k-1) = CONTROLS THE ORDER IN WHICH THE DATA POINTS ARE PLOTTED. ABS(LSPC) = 1 TO REVERSE THE ORDER OF VECTORS IN THE DISPLAY. PLEASE USE LSPC=1 WHEN PROCESSING DATA FROM SPCSUM. LSPC < 0 TO TRANSPOSE (I.E. SWITCH X AND Y) THE DATA SET BEFORE DRAWING. MLTRX (k-2) = 0, THE NC Y-VECTORS ARE CONSIDERED TO BE OF FIXED LENGTH. IF THE FILE XAXIS IS PRESENT, THEN THE X-VECTOR IS READ ONLY ONCE FOR THE FULL SET OF NC CURVES. = 1, THE NC Y-VECTORS ARE CONSIDERED TO BE OF VARIABLE LENGTH. IF FILE XAXIS IS PRESENT, THEN READ AN X-VECTOR FOR EVERY Y-VECTOR. NFRM (k-3) = DETERMINES THE NUMBER OF FRAMES PER PAGE. = 1, ONE PLOT PER PAGE, (DEFAULT). = 2, TWO PLOTS PER PAGE ORIENTED HORIZONALLY. = 3, TWO PLOTS PER PAGE ORIENTED VERTICALLY. = 4, FOUR PLOTS PER PAGE IRWND = 0, REWIND FILE YAXIS (AND XAXIS) AFTER A SET OF CARDS HAS BEEN READ. = 1, DO NOT REWIND FILE YAXIS (AND XAXIS) AFTER A SET OF CARDS HAS BEEN READ (DEFAULT IN COMMAND-LINE MODE). = 2, ONLY REWIND FILE YAXIS AFTER READING A SET OF CARDS IXAXS (l-1) = 1, TO READ THE X-AXIS SCALE FROM A THIRD INPUT CARD. = 0, THE DEFAULT, IMPLIES NOT TO DO THIS. ISCAT (l-2) = 0 (1) FOR CONTINUOUS (DISCRETE) PLOT POINTS. ISAMPL = 9, PRODUCE A CURVE PATTERNS PLOT SKIPPING TO THE NEXT EOR OR EOF MARK (I.E. CALLS BURNF). CARD 2: ------- READ (5,5020,END=902) IAX,JAX,TITLE 5020 FORMAT(2A20,A40) IAX (label-1) = 20 CHAR. LABEL OF X-AXIS JAX (label-2) = 20 CHAR. LABEL OF Y-AXIS TITLE (label-3) = 40 CHAR. LABEL OF PLOT NOTE - TO CENTER THESE LABELS ON THE PLOT YOU SHOULD CENTER THEM WITHIN THEIR FIELDS. CARD 3 ------ IF (IXAXS NE 0) READ (5,5030,END=903) FXLO,FXHI 5030 FORMAT(30X,2E10.0) FXLO (c) = LOWER VALUE OF X-AXIS FXHI (d) = UPPER VALUE OF X-AXIS NOTES - 1) IF THE INPUT FILE XAXIS IS PRESENT AND FXLO.EQ.FXHI THEN AUTOMATIC SCALING IS DONE ON THE X-AXIS. 2) IF THE INPUT FILE XAXIS IS MISSING AND FXLO.NE.FXHI THEN THE ORDINATE VALUES ARE PLOTTED AGAINST ABSCISSA VALUES: X(I)=FXLO + (I-1)*(FXHI-FXLO)/(LNT-1), WHERE LNT IS THE ACTUAL NUMBER OF POINTS IN THE CURVE. CARD 4 ------ IF (PTYPE NE 0) READ(5,5040) MGRX,MINRX,MGRY,MINRY 5040 FORMAT(10X,4I5) (I.E. SPECIFY X-AXIS SCALE AND CONTROL AXIS LABELLING) FOR LINEAR X-AXIS: MGRX (m-1) = NUMBER OF MAJOR DIVISIONS ALONG THE X-AXIS (RESULTING IN MGRX+1 LABELS ON THE X-AXIS). MINRX (m-2) = NUMBER OF MINOR DIVISIONS WITHIN EACH MAJOR DIVISIONS (RESULTING IN MINRX-1 TICS). FOR LOG X-AXIS: MGRX (m-1) = EXPONENT OF 10 BETWEEN SUCCESSIVE MAJOR DIVISIONS (MGRX=1 RESULTS IN ORDINARY LOG GRAPH PAPER). MINRX (m-1) = CONTROL OVER PLOTTING OF SUBCYCLE DIVISIONS MGRX=1 AND MINRX<=10 ==> 8 NORMAL SUBCYCLE DIVISIONS ARE PLOTTED MGRX>1 OR MINRX >10 ==> SUBCYCLE DIVISIONS SUPPRESSED MGRY (n-1) = LIKE MGRX, EXCEPT FOR Y-AXIS MINRY (n-2) = LIKE MINRX, EXCEPT FOR Y-AXIS COMMAND-LINE ONLY ----------------- KIND = VERTICAL LEVEL TYPE. IT CAN ONLY BE USED WITH CMC/RPN STD FILES AND THEN LV1 AND LV2 ARE ASSUMED TO CONTAIN DECODED VALUES. FURTHERMORE, THIS PARAMETRE CAN ONLY BE SPECIFIED IN COMMAND-LINE MODE. THE CURRENTLY SUPPORTED VALUES ARE: 'HAUTEUR' , heights (m) with respect to sea level 'SIGMA' , classical terrain following (0.0 -> 1.0) 'ETA' , first version of the GEM ETA coordinate 'PRESSION' , pressure (mb) 'ARBITRAIRE', arbitrary level (no units apply) 'HAUTEURS' , heights (M) with respect to the surface 'HYBRIDE' , hybrid GEM coordinate 'THETA' , potential temperature coordinate 'GALCHEN' , GalChen generalized coordinate EXAMPLE OF INPUT CARDS... CRVPLOT -1 NEXT 1 40000. 60000. 0 32 1 1 1 LATITUDE HEIGHT (GPM) FJ - Z(500) - 2W -90.0 90.0 4 2 10 2 0123456789012345678901234567890123456789012345678901234567890 1 2 3 4 5 6 7 EXIT CONDITIONS... 0 NO PROBLEMS FATAL CONDITIONS... 1 PROBLEM READING COMMAND-LINE ARGUMENTS 3 ILLEGAL TYPE OF DATA FOUND ON FILE YAXIS 4 REQUESTED CURVES NOT THE SAME SIZE ON THE SAME GRAPH 5 NOT ENOUGH POINTS FOUND (< 2) 6 XAXIS DOES NOT HAVE AS MANY POINTS AS YAXIS 7 FXLO >= FXHI, EVEN AFTER AUTOMATIC SCALING PERFORMED 8 FYLO >= FYHI, EVEN AFTER AUTOMATIC SCALING PERFORMED 9 ERROR ABORT READING INPUT CARD 1 10 ERROR ABORT READING INPUT CARD 2 11 ERROR ABORT READING INPUT CARD 3 12 ERROR ABORT READING INPUT CARD 4 13 NEGATIVE OR NULL VALUE WITH LOG SCALING IN Y AXIS 14 MGRX OR MGRY READ AS 0 ON INPUT (PTYPE.NE.0) 15 PROPBLEM READING FILE YAXIS NON-FATAL CONDITIONS... 101 NO MORE DATA CORRESPOND TO REQUEST