home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / fortran / library / ssp / polysptp / dcsp.for < prev    next >
Text File  |  1985-11-29  |  2KB  |  59 lines

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE DCSP
  5. C
  6. C        PURPOSE
  7. C           COMPUTE THE VALUES OF THE SHIFTED CHEBYSHEV POLYNOMIALS
  8. C           TS(N,X) FOR ARGUMENT X AND ORDERS 0 UP TO N.
  9. C
  10. C        USAGE
  11. C           CALL DCSP(Y,X,N)
  12. C
  13. C        DESCRIPTION OF PARAMETERS
  14. C           Y     - RESULT VECTOR OF DIMENSION N+1 CONTAINING THE VALUES
  15. C                   OF SHIFTED CHEBYSHEV POLYNOMIALS OF ORDER 0 UP TO N
  16. C                   FOR GIVEN ARGUMENT X.
  17. C                   DOUBLE PRECISION VECTOR.
  18. C                   VALUES ARE ORDERED FROM LOW TO HIGH ORDER
  19. C           X     - ARGUMENT OF SHIFTED CHEBYSHEV POLYNOMIAL
  20. C                   DOUBLE PRECISION VARIABLE.
  21. C           N     - ORDER OF SHIFTED CHEBYSHEV POLYNOMIAL
  22. C
  23. C        REMARKS
  24. C           N LESS THAN 0 IS TREATED AS IF N WERE 0
  25. C
  26. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  27. C           NONE
  28. C
  29. C        METHOD
  30. C           EVALUATION IS BASED ON THE RECURRENCE EQUATION FOR
  31. C           SHIFTED CHEBYSHEV POLYNOMIALS TS(N,X)
  32. C           TS(N+1,X)=(4*X-2)*TS(N,X)-TS(N-1,X),
  33. C           WHERE THE FIRST TERM IN BRACKETS IS THE ORDER,
  34. C           THE SECOND IS THE ARGUMENT.
  35. C           STARTING VALUES ARE TS(0,X)=1, TS(1,X)=2*X-1.
  36. C
  37. C     ..................................................................
  38. C
  39.       SUBROUTINE DCSP(Y,X,N)
  40. C
  41.       DIMENSION Y(1)
  42.       DOUBLE PRECISION Y,X,F
  43. C
  44. C        TEST OF ORDER
  45.       Y(1)=1.D0
  46.       IF(N)1,1,2
  47.     1 RETURN
  48. C
  49.     2 Y(2)=X+X-1.D0
  50.       IF(N-1)1,1,3
  51. C
  52. C        INITIALIZATION
  53.     3 F=Y(2)+Y(2)
  54. C
  55.       DO 4 I=2,N
  56.     4 Y(I+1)=F*Y(I)-Y(I-1)
  57.       RETURN
  58.       END
  59.