      SUBROUTINE TRIGML(ILATH,SR,WR,CR,RADR,WOSQ,
     1                  SRX,WRX,CRX,RADRX,WOSQX)
C 
C     * OCT 12/93 - M. LAZARE.
C
C     * THIS ROUTINE IS BASED ON TRIGL, EXCEPT THAT THE TRIGNOMETRIC
C     * ARRAYS ARE RE-ORDERED IN S-N PAIRS, BASED ON THE SYMMETRY
C     * PROPERTIES OF THE PARTICULAR TRIGNOMETRIC FUNCTION, FOR USE
C     * IN A MULTIPLE-LATITUDE MODEL SIMULATION.
C     * THE ORDERING IS THUS: (1,ILAT,2,ILAT-1,...ILATH,ILATH+1).
C     * THIS ROUTINE IS CALLED ONLY IF NLATJ.GT.1.
C     * THE ROUTINE GAUSSG FILLS ONLY THE N HEM ORDERED N TO S AND IS
C     * CALLED IMMEDIATELY PRIOR TO THIS ROUTINE. BE AWARE THAT ITS
C     * OUTPUT FOR "RADR" DEFINES CO-LATITUDE; THIS ROUTINE CONVERTS
C     * THAT TO LATITUDE.
C
C     *      SR=SIN(LAT),  CR=COS(LAT),  RADR=LATITUDE IN RADIANS.
C     *      WR = GAUSSIAN WEIGHTS,  WOSQ = WR/(SR**2). 
C 
      IMPLICIT REAL (A-H,O-Z),
     +INTEGER (I-N)

      REAL*8 SRX(1),WRX(1),CRX(1),RADRX(1),WOSQX(1)
      REAL*8 SR (1),WR (1),CR (1),RADR (1),WOSQ (1)
C-------------------------------------------------------------------- 
      PIH=3.14159265/2. 
      ILAT=ILATH*2
C
C     * STORE HEMISPHERIC VALUES(ORDERED N-S) INTO WORKING ARRAYS.
C
      DO 100 J=1,ILATH
        SRX(J)=SR(J) 
        CRX(J)=CR(J) 
        WRX(J)=WR(J) 
        WOSQX(J)=WOSQ(J) 
        RADRX(J)=RADR(J) 
 100  CONTINUE
C
C     * NOW FILL OUPUT ARRAYS BASED ON SYMMETRY ARGUEMENTS.
C     * CR,WR,WOSQ ARE SYMMETRIC ABOUT THE EQUATOR. 
C     * SR AND RADR ARE ANTISYMMETRIC. 
C     * NOTE THAT RADR IS CONVERTED FROM CO-LATITUDE TO LATITUDE HERE!
C   
      DO 150 J=1,ILATH
        JS      = 2*J-1
        JN      = 2*J 
        SR(JS)  =-SRX(J) 
        SR(JN)  = SRX(J)
        CR(JS)  = CRX(J)
        CR(JN)  = CRX(J) 
        WR(JS)  = WRX(J)
        WR(JN)  = WRX(J)
        WOSQ(JS)= WOSQX(J)
        WOSQ(JN)= WOSQX(J)
        RADR(JN)= PIH-RADRX(J)
        RADR(JS) =-RADR(JN)
  150 CONTINUE
C 
      RETURN
      END 
