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

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE PADDM
  5. C
  6. C        PURPOSE
  7. C           ADD COEFFICIENTS OF ONE POLYNOMIAL TO THE PRODUCT OF A
  8. C           FACTOR BY COEFFICIENTS OF ANOTHER POLYNOMIAL
  9. C
  10. C        USAGE
  11. C           CALL PADDM(Z,IDIMZ,X,IDIMX,FACT,Y,IDIMY)
  12. C
  13. C        DESCRIPTION OF PARAMETERS
  14. C           Z     - VECTOR OF RESULTANT COEFFICIENTS, ORDERED FROM
  15. C                   SMALLEST TO LARGEST POWER
  16. C           IDIMZ - DIMENSION OF Z (CALCULATED)
  17. C           X     - VECTOR OF COEFFICIENTS FOR FIRST POLYNOMIAL, ORDERED
  18. C                   FROM SMALLEST TO LARGEST POWER
  19. C           IDIMX - DIMENSION OF X (DEGREE IS IDIMX-1)
  20. C           FACT  - FACTOR TO BE MULTIPLIED BY VECTOR Y
  21. C           Y     - VECTOR OF COEFFICIENTS FOR SECOND POLYNOMIAL,
  22. C                   ORDERED FROM SMALLEST TO LARGEST POWER
  23. C           IDIMY - DIMENSION OF Y (DEGREE IS IDIMY-1)
  24. C
  25. C        REMARKS
  26. C           VECTOR Z MAY BE IN SAME LOCATION AS EITHER VECTOR X OR
  27. C           VECTOR Y ONLY IF THE DIMENSION OF THAT VECTOR IS NOT LESS
  28. C           THAN THE OTHER INPUT VECTOR
  29. C           THE RESULTANT POLYNOMIAL MAY HAVE TRAILING ZERO COEFFICIENTS
  30. C
  31. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  32. C           NONE
  33. C
  34. C        METHOD
  35. C           DIMENSION OF RESULTANT VECTOR IDIMZ IS CALCULATED AS THE
  36. C           LARGER OF THE TWO INPUT VECTOR DIMENSIONS. COEFFICIENT IN
  37. C           VECTOR X IS THEN ADDED TO COEFFICIENT IN VECTOR Y MULTIPLIED
  38. C           BY FACTOR TO FORM Z.
  39. C
  40. C     ..................................................................
  41. C
  42.       SUBROUTINE PADDM(Z,IDIMZ,X,IDIMX,FACT,Y,IDIMY)
  43.       DIMENSION Z(1),X(1),Y(1)
  44. C
  45. C     TEST DIMENSIONS OF SUMMANDS
  46. C
  47.       NDIM=IDIMX
  48.       IF(IDIMX-IDIMY) 10,20,20
  49.    10 NDIM=IDIMY
  50.    20 IF(NDIM) 90,90,30
  51.    30 DO 80 I=1,NDIM
  52.       IF(I-IDIMX) 40,40,60
  53.    40 IF(I-IDIMY) 50,50,70
  54.    50 Z(I)=FACT*Y(I)+X(I)
  55.       GO TO 80
  56.    60 Z(I)=FACT*Y(I)
  57.       GO TO 80
  58.    70 Z(I)=X(I)
  59.    80 CONTINUE
  60.    90 IDIMZ=NDIM
  61.       RETURN
  62.       END
  63.