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

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE DCPY
  5. C
  6. C        PURPOSE
  7. C           COPY DIAGONAL ELEMENTS OF A MATRIX INTO A VECTOR
  8. C
  9. C        USAGE
  10. C           CALL DCPY (A,R,N,MS)
  11. C
  12. C        DESCRIPTION OF PARAMETERS
  13. C           A - NAME OF INPUT MATRIX
  14. C           R - NAME OF OUTPUT VECTOR OF LENGTH N
  15. C           N - NUMBER OF ROWS AND COLUMNS IN MATRIX A
  16. C           MS  - ONE DIGIT NUMBER FOR STORAGE MODE OF MATRIX A
  17. C                  0 - GENERAL
  18. C                  1 - SYMMETRIC
  19. C                  2 - DIAGONAL
  20. C
  21. C        REMARKS
  22. C           INPUT MATRIX MUST BE A SQUARE MATRIX
  23. C
  24. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  25. C           LOC
  26. C
  27. C        METHOD
  28. C           ELEMENTS ON DIAGONAL OF MATRIX ARE MOVED TO CORRESPONDING
  29. C           POSITIONS OF VECTOR R
  30. C
  31. C     ..................................................................
  32. C
  33.       SUBROUTINE DCPY(A,R,N,MS)
  34.       DIMENSION A(1),R(1)
  35. C
  36.       DO 3 J=1,N
  37. C
  38. C        LOCATE DIAGONAL ELEMENT FOR ANY MATRIX STORAGE MODE
  39. C
  40.       CALL LOC(J,J,IJ,N,N,MS)
  41. C
  42. C        MOVE DIAGONAL ELEMENT TO VECTOR R
  43. C
  44.     3 R(J)=A(IJ)
  45.       RETURN
  46.       END
  47.