 
      CALL SEQUENCE...
       rangrd  GG INPUT OUTPUT [ -n    VAL1 -name VAL2 -lon VAL3 \ 
                                 -lat  VAL4 -npg  VAL5 -a   VAL6 \ 
                                 -kind VAL7 VAL8 -delt VAL9 ] [ -def ]
 
 
      AUTHOR - B.Dugas, AVRIL 23/87.
      LAST REVISION: $Header: /home/cvs/RMNLIB/utils/rdiag/lspgm/rangrd.ptn,v 4.16 2014/09/25 20:20:52 dugas Exp $
 
 
      DESCRIPTION...
       CREATE A FILE, GG, CONTAINING NSETS  OF ILEV LEVELS OF RANDOM 
       GRIDS OF SIZE (ILG,ILAT). THE ORIGINAL RANDOM SEED IS READ IN 
       AS WELL AS RELEVANT DIMENSIONS AND NUMBER OF TIME STEPS. 
 
 
      PARAMETRE...
       NSETS (n)       = NUMBER OF TIMESETS IN GG  (DEF=100)
       DELT            = TIME DELTA BETWEEN SAMPLES IN SECONDS (DEF=0).
                         THIS ARGUMENT IS ALWAYS LESS THAN 99999 AND CAN
                         ONLY BE SET VIA THE COMMAND LINE. WHEN DEFINED,
                         THE INITIAL TIME IS SET TO 1979010100.
       NAME            = DATA NAME                 (DEF='DATA')
       ILEV  (plv)     = NUMBER OF VERTICAL LEVELS (DEF=16,MAX=999)
                         IF ILEV IS NEGATIVE, EACH -ILEV LVL VALUES ARE READ WITH
                         A I10 FORMAT OR AN E10.0 IF ITS VALUE CONTAINS A DECIMAL
                         POINT.
       ILG   (lon)     = LONGITUDINAL DIMENSION    (DEF=32)
       ILAT  (lat)     = LATITUDINAL DIMENSION     (DEF=16)
       NPACK (npg)     = PACKING FACTOR            (DEF=-32)
       SEED  (a)       = INTEGER SEED USED IN RANDOM NUMBER GENERATOR
       KIND  (kind(1)) = OUTPUT DISTRIBUTION TYPE.
                         'UNIF', FOR UNIFORM [0.,1.] (DEFAULT)
                         'GAUS', FOR GAUSSIAN.
       VKIND (kind(2)) = 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) (*** DEFAULT ***)
                         '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
 
       LVL             = VERTICAL LEVELS (ILEV ARE READ IN A SECOND LINE)
 
       READ(5,5000) NSETS,NAME,ILEV,ILG,ILAT,NPACK, SEED,KIND
       IF (ILEV.GT.0)
       READ( 5,5001 ) (LVL(I),I=1,ILEV)
       IF (ILEV.LT.0)
       READ( 5,5002 ) (LVL(I),I=1,-ILEV)
 5000  FORMAT(10X,I5,1X,A4,4I5,I10,1X,A4,i5) 
 5001  FORMAT(16I5)
 5002  FORMAT(8I10)
 
      NOTES 1) NO INPUT CARDS ARE READ WHEN THE 'def' PARAMETRE IS SPECIFIED
            2) EITHER SPECIFYING THE 'def' PARAMETRE OR ENTERING AN EMPTY
               FIRST LINE WILL SETUP A SET OF DEFAULT VALUES.
               NAMELY,
 
                NSETS=100, NAME='DATA', ILEV=1,LVL(1)=500, NPACK=-32, 
                SEED=1234567890  AND ILG=32,ILAT=16
 
            3) THE RESULTS ARE MUTIPLIED BY THE LOCAL LEVEL PRESSURE IN MBS,
               SO THAT THE UNIFORM RANGE OF VALUES GOES FROM 0 TO THE LOCAL
               PRESSURE. THE GAUSSIAN DISTRIBUTION HAS ZERO MEAN AND UNIT 
               VARIANCE BEFORE AGAIN BEING MUTIPLIED BY THE LOCAL PRESSURE.
 
 
      EXAMPLE OF INPUT CARDS...
 
 RANGRD      20 DATA   10  128   64  -16  12345678
  100  200  300  400  500  600  700  800  900 1000
 
         0123456789012345678901234567890123456789012345678901234567890
         1         2         3         4         5         6         7
 
 
      EXIT CONDITIONS...
       0 NO PROBLEMS
       1 MEMORY ALLOCATION PROBLEM
       2 PROBLEM READING FIRST INPUT LINE
       3 PROBLEM READING SECOND OR SUCCESSIVE INPUT LINES
       4 LVL DOES NOT DATA CONSISTENT WITH VKIND
 
