      SUBROUTINE TSCHU(U,UMAX,ARG)
************************************************************************
* Purpose: Calculates the Tschebyscheff-Polynomials U of the second    *
*          order. The argument of the polynomials is real.             *
*                                                                      *
* Input:   INTEGER:                 maximal order of U(0:UMAX)         *
*          REAL*8:  ARG             Real argument of the T-polynomials *
*                                                                      *
* Output:  REAL*8:  T(0:TMAX)       The array contains the UMAX+1      *
*                                   polynomials of the argument arg    *
*                                                                      *
* Reference: M. Abramowitz and I. A. Stegun, Eds., Handbook of         *
*            Mathematical Functions (National Bureau of Standarts      *
*            Applied Mathematics Series 55), Washington DC:            *
*            U.S. Government Printing Office, 1970.                    *
*                                                                      *
* Date: 16:12:1996                  Author: KUNZE, MARCO               *
*                                           Marco.Kunze@univ-rennes1.fr*
************************************************************************

      IMPLICIT NONE
      INTEGER  I, UMAX
      REAL*8   U(0:UMAX), ARG

C------------------------- Executable Statements -----------------------

      U(0) = 1.D0

      IF (UMAX .EQ. 0) RETURN

      U(1) = 2.D0 * ARG

      DO 10 I = 2, UMAX, 1
         U(I) = 2.D0 * ARG * U(I-1) - U(I-2)
10    CONTINUE

      END

