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

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE QHFG
  5. C
  6. C        PURPOSE
  7. C           TO COMPUTE THE VECTOR OF INTEGRAL VALUES FOR A GIVEN
  8. C           GENERAL TABLE OF ARGUMENT, FUNCTION, AND DERIVATIVE VALUES.
  9. C
  10. C        USAGE
  11. C           CALL QHFG (X,Y,DERY,Z,NDIM)
  12. C
  13. C        DESCRIPTION OF PARAMETERS
  14. C           X      - THE INPUT VECTOR OF ARGUMENT VALUES.
  15. C           Y      - THE INPUT VECTOR OF FUNCTION VALUES.
  16. C           DERY   - THE INPUT VECTOR OF DERIVATIVE VALUES.
  17. C           Z      - THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE
  18. C                    IDENTICAL WITH X,Y OR DERY.
  19. C           NDIM   - THE DIMENSION OF VECTORS X,Y,DERY,Z.
  20. C
  21. C        REMARKS
  22. C           NO ACTION IN CASE NDIM LESS THAN 1.
  23. C
  24. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  25. C           NONE
  26. C
  27. C        METHOD
  28. C           BEGINNING WITH Z(1)=0, EVALUATION OF VECTOR Z IS DONE BY
  29. C           MEANS OF HERMITEAN FOURTH ORDER INTEGRATION FORMULA.
  30. C           FOR REFERENCE, SEE
  31. C           (1) F.B.HILDEBRAND, INTRODUCTION TO NUMERICAL ANALYSIS,
  32. C               MCGRAW-HILL, NEW YORK/TORONTO/LONDON, 1956, PP.314-319.
  33. C           (2) 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 QHFG(X,Y,DERY,Z,NDIM)
  40. C
  41. C
  42.       DIMENSION X(1),Y(1),DERY(1),Z(1)
  43. C
  44.       SUM2=0.
  45.       IF(NDIM-1)4,3,1
  46. C
  47. C     INTEGRATION LOOP
  48.     1 DO 2 I=2,NDIM
  49.       SUM1=SUM2
  50.       SUM2=.5*(X(I)-X(I-1))
  51.       SUM2=SUM1+SUM2*((Y(I)+Y(I-1))+.3333333*SUM2*(DERY(I-1)-DERY(I)))
  52.     2 Z(I-1)=SUM1
  53.     3 Z(NDIM)=SUM2
  54.     4 RETURN
  55.       END
  56.