 
      CALL SEQUENCE...
       ggacof  GGFILE SPFILE INPUT OUTPUT  [-lrt VAL1  -lmt  VAL2  \ 
                                            -ktr VAL3  -kuv [VAL4] \ 
                                            -npg VAL5  -kind VAL6  \ 
                                            -def VAL7 ]
 
 
 
      DESCRIPTION...
       ggacof  - CONVERTS GAUSSIAN GRID (OR ZONAL CROSS-SECTION) FILE TO
                 SPECTRAL COEFFICIENT FILE
 
 
      AUTHOR  - J.D.Henderson, 31 MARS 1981.
      LAST REVISION: $Header: /home/cvs/RMNLIB/utils/rdiag/lspgm/ggacof.ptn,v 4.13 2014/09/25 20:20:48 dugas Exp $
 
 
      PURPOSE - CONVERTS A FILE OF GAUSSIAN GRIDS (OR GAUSSIAN ZONAL
                CROSS-SECTIONS) TO SPECTRAL COEFFICIENTS.
      NOTE    - THE ZONAL CASE OUTPUT SPECTRAL ARRAY HAS NON-ZERO VALUES
                ONLY FOR THE M=0 PART (ESSENTIALY, THE LEGENDRE TRANSFORM).
                ALL SPECTRAL FIELDS WILL BE OF THE SAME SIZE.
 
 
      INPUT FILE...
       GGFILE = FILE OF GAUSSIAN GRIDS (GLOBAL, HEMISPHERIC OR ZONAL)
 
      OUTPUT FILE...
       SPFILE = SPECTRAL COEFFICIENTS.
 
 
      INPUT PARAMETERS...
 
       LRT,LMT = N,M TRUNCATION SPECTRAL WAVE NUMBERS
       KTR     = TRUNCATION TYPE (0,1=RHOMBOIDAL, DEFAUT=2=TRIANGULAR)
       KUV     = 0 FOR NORMAL ANALYSIS (PRIMARY DEFAULT)
                 1 TO CONVERT REAL WINDS TO MODEL WINDS (SECONDARY DEFAULT)
       KPACK   = SPECTRAL PACKING DENSITY. 0 DEFAULTS TO AT LEAST 64 BITS
       (npg)     AND MORE, IF THE INPUT RECORD SPECIFIED MORE THAN THAT.
       KIND      DETERMINES THE PROCESSING OPTION IN THE FOLLOWING WAY
               = 0 ==> GLOBAL INPUT GRIDS, GLOBAL COEFFICIENTS OUTPUT,
               > 0 ==> HEMISPHERIC INPUT, SYMMETRIC COEFFICIENTS,
               < 0 ==>  "     "      "    ANTI-SYMMETRIC COEFFICIENTS,
 
       NOTES 1) IF (INPUT KHEM.EQ.0) AND (KIND.NE.0), THE ABSOLUTE VALUE
                OF KIND WILL REPLACE KHEM AND AN INFORMATIVE MESSAGE 
                WILL BE PRINTED.
             2) KTR=1 IS AUTOMATICALLY MODIFIED TO KTR=0. HISTORICALLY,
                THESE ARE THE TWO VALUES USED AT RPN AND CCCMA TO
                SPECIFY RHOMBOIDAL TRUNCATIONS, RESPECTIVELY.
             3) Specifying "-def Z" implies that the spectral transform
                will be executed even if the input grid is of type 'Z'.
 
       READ( 5,5010 ) LRT,LMT,KTR,KUV,KPACK,KIND
 5010  FORMAT(10X,6I5)
 
      COMMENTS CONCERNING THE USAGE OF KUV...
 
       THIS PARAMETER IS ONLY RELEVANT FOR VECTOR COMPONENTS AND SHOULD
       NEVER BE USED FOR SCALAR FIELDS. SPECTRAL PROJECTIONS OF VECTOR
       COMPONENTS CAN ONLY BE CARRIED ON SO-CALLED MODEL COMPONENTS,
       WHICH ARE ASSUMED THE BE THE REAL WINDS MULTIPLIED BY
 
                   COS( LAT )/( EARTH RADIUS ).
 
       THE MODEL WINDS ARE THUS CONTINUOUS AT THE POLES AND CAN THEN
       BE CORRECTLY PROJECTED. THE NORMAL MODE OF OPERATION ASSUMES
       THE PRESENCE OF SO-CALLED MODEL WINDS AND DOES NO CONVERSIONS.
 
 
      EXAMPLE OF INPUT CARD...
 
    GGACOF   30   30    0    1    2    0
 
         0123456789012345678901234567890123456789012345678901234567890
         1         2         3         4         5         6         7
 
      EXIT CONDITIONS...
        0 NO PROBLEMS
        1 UNKNOWN TRUNCATION (KTR NOT EQUAL 0 OR 2)
        2 INPUT GRID TYPE IS NOT GAUSSIAN
        3 MORE THAN ONE SIZE IN GGFILE
        4 KIND NOT ZERO IN ZONAL CASE
        5 ERROR ABORT READING INPUT
        6 PREMATURE EOF ON GGFILE
        7 OUTPUT ARRAY IS TOO LARGE
        8 UNABLE TO ALLOCATE WORKING MEMORY
