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

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE QHSE
  5. C
  6. C        PURPOSE
  7. C           TO COMPUTE THE VECTOR OF INTEGRAL VALUES FOR A GIVEN
  8. C           EQUIDISTANT TABLE OF FUNCTION, FIRST DERIVATIVE,
  9. C           AND SECOND DERIVATIVE VALUES.
  10. C
  11. C        USAGE
  12. C           CALL QHSE (H,Y,FDY,SDY,Z,NDIM)
  13. C
  14. C        DESCRIPTION OF PARAMETERS
  15. C           H      - THE INCREMENT OF ARGUMENT VALUES.
  16. C           Y      - THE INPUT VECTOR OF FUNCTION VALUES.
  17. C           FDY    - THE INPUT VECTOR OF FIRST DERIVATIVE.
  18. C           SDY    - THE INPUT VECTOR OF SECOND DERIVATIVE.
  19. C           Z      - THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE
  20. C                    IDENTICAL WITH Y,FDY OR SDY.
  21. C           NDIM   - THE DIMENSION OF VECTORS 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 QHSE(H,Y,FDY,SDY,Z,NDIM)
  40. C
  41. C
  42.       DIMENSION Y(1),FDY(1),SDY(1),Z(1)
  43. C
  44.       SUM2=0.
  45.       IF(NDIM-1)4,3,1
  46.     1 HH=.5*H
  47.       HF=.2*H
  48.       HT=.08333333*H
  49. C
  50. C     INTEGRATION LOOP
  51.       DO 2 I=2,NDIM
  52.       SUM1=SUM2
  53.      0SUM2=SUM2+HH*((Y(I-1)+Y(I))+HF*((FDY(I-1)-FDY(I))+
  54.      1              HT*(SDY(I-1)+SDY(I))))
  55.     2 Z(I-1)=SUM1
  56.     3 Z(NDIM)=SUM2
  57.     4 RETURN
  58.       END
  59.