 
      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: /data/armnraid1/cvs/RMNLIB/utils/rdiag/lspgm/crvplot.ptn,v 4.18 2010/05/06 16:25:30 dugas Exp $
 
 
      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
 
