home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / DOOG / PCSSP1.ZIP / NUMQUAD.ZIP / DQHSG.FOR < prev    next >
Text File  |  1985-11-29  |  2KB  |  58 lines

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE DQHSG
  5. C
  6. C        PURPOSE
  7. C           TO COMPUTE THE VECTOR OF INTEGRAL VALUES FOR A GIVEN
  8. C           GENERAL TABLE OF ARGUMENT, FUNCTION, FIRST DERIVATIVE,
  9. C           AND SECOND DERIVATIVE VALUES.
  10. C
  11. C        USAGE
  12. C           CALL DQHSG (X,Y,FDY,SDY,Z,NDIM)
  13. C
  14. C        DESCRIPTION OF PARAMETERS
  15. C           X      - DOUBLE PRECISION INPUT VECTOR OF ARGUMENT VALUES.
  16. C           Y      - DOUBLE PRECISION INPUT VECTOR OF FUNCTION VALUES.
  17. C           FDY    - DOUBLE PRECISION INPUT VECTOR OF FIRST DERIVATIVE.
  18. C           SDY    - DOUBLE PRECISION INPUT VECTOR OF SECOND DERIVATIVE.
  19. C           Z      - RESULTING DOUBLE PRECISION VECTOR OF INTEGRAL
  20. C                    VALUES. Z MAY BE IDENTICAL WITH X, Y, FDY OR SDY.
  21. C           NDIM   - THE DIMENSION OF VECTORS X,Y,FDY,SDY,Z.
  22. C
  23. C        REMARKS
  24. C           NO ACTION IN CASE NDIM LESS THAN 1.
  25. C
  26. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  27. C           NONE
  28. C
  29. C        METHOD
  30. C           BEGINNING WITH Z(1)=0, EVALUATION OF VECTOR Z IS DONE BY
  31. C           MEANS OF HERMITEAN SIXTH ORDER INTEGRATION FORMULA.
  32. C           FOR REFERENCE, SEE
  33. C           R.ZURMUEHL, PRAKTISCHE MATHEMATIK FUER INGENIEURE UND
  34. C           PHYSIKER, SPRINGER, BERLIN/GOETTINGEN/HEIDELBERG, 1963,
  35. C           PP.227-230.
  36. C
  37. C     ..................................................................
  38. C
  39.       SUBROUTINE DQHSG(X,Y,FDY,SDY,Z,NDIM)
  40. C
  41. C
  42.       DIMENSION X(1),Y(1),FDY(1),SDY(1),Z(1)
  43.       DOUBLE PRECISION X,Y,FDY,SDY,Z,SUM1,SUM2
  44. C
  45.       SUM2=0.D0
  46.       IF(NDIM-1)4,3,1
  47. C
  48. C     INTEGRATION LOOP
  49.     1 DO 2 I=2,NDIM
  50.       SUM1=SUM2
  51.       SUM2=.5D0*(X(I)-X(I-1))
  52.      0SUM2=SUM1+SUM2*((Y(I-1)+Y(I))+.4D0*SUM2*((FDY(I-1)-FDY(I))+
  53.      1     .16666666666666667D0*SUM2*(SDY(I-1)+SDY(I))))
  54.     2 Z(I-1)=SUM1
  55.     3 Z(NDIM)=SUM2
  56.     4 RETURN
  57.       END
  58.