[ English | Japanese ]
ASL Basic Functions Vol.1 (for Fortran)
Chapter 1 INTRODUCTION
- 1.1
- OVERVIEW
- 1.1.1
- Introduction to The Advanced Scientific Library ASL
- 1.1.2
- Distinctive Characteristics of ASL
- 1.2
- KINDS OF LIBRARIES
- 1.3
- ORGANIZATION
- 1.3.1
- Introduction
- 1.3.2
- Organization of Subroutine Description
- 1.3.3
- Contents of Each Item
- 1.4
- SUBROUTINE NAMES
- 1.5
- NOTES
Chapter 2 STORAGE MODE CONVERSION
- 2.1
- INTRODUCTION
- 2.1.1
- Algorithms Used
- 2.1.1.1
- Real band matrix compression and restoration
- 2.1.1.2
- Real symmetric band matrix compression and restoration
- 2.1.1.3
- One-dimensional column-oriented list format storage of a sparse matrix
- 2.1.1.4
- ELLPACK format of sparse matrix
- 2.2
- STORAGE MODE CONVERSION
- 2.2.1
- DABMCS, RABMCS
Storage Mode Conversion of a Real Band Matrix: from (Two-Dimensional Array Type) to (Band Type)- 2.2.2
- DABMEL, RABMEL
Storage Mode Conversion of a Real Band Matrix: from (Band Type) to (Two-Dimensional Array Type)- 2.2.3
- DASBCS, RASBCS
Storage Mode Conversion of a Real Symmetric Band Matrix: from (Two-Dimensional Array Type) (Upper Triangular Type) to (Symmetric Band Type)- 2.2.4
- DASBEL, RASBEL
Storage Mode Conversion of a Real Symmetric Band Matrix: from (Symmetric Band Type) to (Two-Dimensional Array Type) (Upper Triangular Type)- 2.2.5
- DARSJD, RARSJD
Storage Mode Conversion of a Real Symmetric Sparse Matrix: from (Real Symmetric One-Dimensional Row-Oriented List Type) (Upper Triangular Type) to (JAD)- 2.2.6
- DARGJM, RARGJM
Storage Mode Conversion of a Sparse Matrix: from (Real One-Dimensional Row-Oriented Block List Type) to (MJAD; Multiple Jagged Diagonals Storage Type)- 2.2.7
- ZARSJD, CARSJD
Storage Mode Conversion of a Hermitian Sparse Matrix: from (Hermitian One-Dimensional Row-Oriented List Type) (Upper Triangular Type) to (JAD; Jagged Diagonals Storage Type)- 2.2.8
- ZARGJM, CARGJM
Storage Mode Conversion of a Sparse Matrix: from (Complex One-Dimensional Row-Oriented Block List Type) to (MJAD; Multiple Jagged Diagonals Storage Type)- 2.2.9
- DXA005, RXA005
Storage Mode Conversion of the Sparse Matrix : from (One-Dimensional Column-Oriented List Format) to (ELLPACK Format)Chapter 3 BASIC MATRIX ALGEBRA
- 3.1
- INTRODUCTION
- 3.1.1
- Algorithms Used
- 3.1.1.1
- Real matrix multiplication (speed priority version)
- 3.2
- BASIC CALCULATIONS
- 3.2.1
- DAM1AD, RAM1AD
Adding Real Matrices (Two-Dimensional Array Type)- 3.2.2
- DAM1SB, RAM1SB
Subtracting Real Matrices (Two-Dimensional Array Type)- 3.2.3
- DAM1MU, RAM1MU
Multiplying Real Matrices (Two-Dimensional Array Type)- 3.2.4
- DAM1MS, RAM1MS
Multiplying Real Matrices (Two-Dimensional Array Type) (Speed Priority Version)- 3.2.5
- DAMT1M, RAMT1M
Multiplying a Real Matrix (Two-Dimensional Array Type) and Its Transpose Matrix- 3.2.6
- DATM1M, RATM1M
Multiplying the Transpose Matrix of a Real Matrix (Two-Dimensional Array Type) and the Original Matrix- 3.2.7
- DAM1MM, RAM1MM
Multiplying Real Matrices (Two-Dimensional Array Type) (C=C± AB)- 3.2.8
- DAM1MT, RAM1MT
Multiplying Real Matrices (Two-Dimensional Array Type) (C=C± ABT)- 3.2.9
- DAM1TM, RAM1TM
Multiplying Real Matrices (Two-Dimensional Array Type) (C=C± ATB)- 3.2.10
- DAM1TT, RAM1TT
Multiplying Real Matrices (Two-Dimensional Array Type) (C=C± ATBT)- 3.2.11
- ZAM1MM, CAM1MM
Multiplying Complex Matrices (Two-Dimensional Array Type) (Real Argument Type) (C=C± AB)- 3.2.12
- ZAM1MH, CAM1MH
Multiplying Complex Matrices (Two-Dimensional Array Type) (Real Argument Type) (C=C± AB*)- 3.2.13
- ZAM1HM, CAM1HM
Multiplying Complex Matrices (Two-Dimensional Array Type) (Real Argument Type) (C=C± A*B)- 3.2.14
- ZAM1HH, CAM1HH
Multiplying Complex Matrices (Two-Dimensional Array Type) (Real Argument Type) (C=C± A*B*)- 3.2.15
- ZAN1MM, CAN1MM
Multiplying Complex Matrices (Two-Dimensional Array Type) (Complex Argument Type) (C=C± AB)- 3.2.16
- ZAN1MH, CAN1MH
Multiplying Complex Matrices (Two-Dimensional Array Type) (Complex Argument Type) (C=C± AB*)- 3.2.17
- ZAN1HM, CAN1HM
Multiplying Complex Matrices (Two-Dimensional Array Type) (Complex Argument Type) (C=C± A*B)- 3.2.18
- ZAN1HH, CAN1HH
Multiplying Complex Matrices (Two-Dimensional Array Type) (Complex Argument Type) (C=C± A*B*)- 3.2.19
- DAM1VM, RAM1VM
Multiplying a Real Matrix (Two-Dimensional Array Type) and a Vector- 3.2.20
- DAM3VM, RAM3VM
Multiplying a Real Band Matrix (Band Type) and a Vector- 3.2.21
- DAM4VM, RAM4VM
Multiplying a Real Symmetric Band Matrix (Symmetric Band Type) and a Vector- 3.2.22
- DAM1TP, RAM1TP
Transposing a Real Matrix (Two-Dimensional Array Type)- 3.2.23
- DAM3TP, RAM3TP
Transposing a Real Band Matrix (Band Type)- 3.2.24
- DAMVJ1, RAMVJ1
Matrix-Vector Product of a Real Random Sparse Matrix (JAD; Jagged Diagonals Storage Type) (y=βy+αAx)- 3.2.25
- DAMVJ3, RAMVJ3
Matrix-Vector Product of a Real Random Sparse Matrix (MJAD; Multiple Jagged Diagonals Storage Type: 3 x 3 Block Matrix) (y=βy+αAx)- 3.2.26
- DAMVJ4, RAMVJ4
Matrix-Vector Product of a Real Random Sparse Matrix (MJAD; Multiple Jagged Diagonals Storage Type: 4 x 4 Block Matrix) (y=βy+αAx)- 3.2.27
- ZANVJ1, CANVJ1
Matrix-Vector Product of a Complex Random Sparse Matrix (JAD; Jagged Diagonals Storage Type) (y=βy+αAx)Chapter 4 EIGENVALUES AND EIGENVECTORS
- 4.1
- INTRODUCTION
- 4.1.1
- Notes
- 4.1.2
- Algorithms Used
- 4.1.2.1
- Transforming a real matrix to a Hessenberg matrix
- 4.1.2.2
- Transforming a complex matrix to a Hessenberg matrix
- 4.1.2.3
- Balancing real and complex matrices
- 4.1.2.4
- QR method and double QR method
- 4.1.2.5
- Transforming a real symmetric matrix to a real symmetric tridiagonal matrix
- 4.1.2.6
- Transforming a Hermitian matrix to a real symmetric tridiagonal matrix
- 4.1.2.7
- The Householder transformation by block algorithm
- 4.1.2.8
- Transforming a real symmetric band matrix to a real symmetric tridiagonal matrix
- 4.1.2.9
- QR method
- 4.1.2.10
- Root-free QR method
- 4.1.2.11
- Bisection method
- 4.1.2.12
- Accumulation of similarity (unitary) transformation by block algorithm
- 4.1.2.13
- Inverse iteration method
- 4.1.2.14
- Generalized eigenvalue problem
- 4.1.2.15
- QZ method and the combination shift QZ method
- 4.1.2.16
- Subspace method
- 4.1.2.17
- Sturm sequence check
- 4.1.2.18
- Jacobi-Davidson method
- 4.1.2.19
- Preconditioning for Jacobi-Davidson method
- 4.1.3
- Reference Bibliography
- 4.2
- REAL MATRIX (TWO-DIMENSIONAL ARRAY TYPE)
(REAL ARGUMENT TYPE)- 4.3
- REAL MATRIX (TWO-DIMENSIONAL ARRAY TYPE)
(COMPLEX ARGUMENT TYPE)- 4.4
- COMPLEX MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (REAL ARGUMENT TYPE)
- 4.5
- COMPLEX MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (COMPLEX ARGUMENT TYPE)
- 4.6
- REAL SYMMETRIC MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE)
- 4.6.1
- DCSMAA, RCSMAA
All Eigenvalues and All Eigenvectors of a Real Symmetric Matrix- 4.6.2
- DCSMAN, RCSMAN
All Eigenvalues of a Real Symmetric Matrix- 4.6.3
- DCSMSS, RCSMSS
Eigenvalues and Eigenvectors of a Real Symmetric Matrix- 4.6.4
- DCSMSN, RCSMSN
Eigenvalues of a Real Symmetric Matrix- 4.6.5
- DCSMEE, RCSMEE
Eigenvalues in an Interval and Their Eigenvectors of a Real Symmetric Matrix (Interval Specified)- 4.6.6
- DCSMEN, RCSMEN
Eigenvalues in an Interval of a Real Symmetric Matrix (Interval Specified)- 4.7
- HERMITIAN MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (REAL ARGUMENT TYPE)
- 4.7.1
- ZCHRAA, CCHRAA
All Eigenvalues and All Eigenvectors of a Hermitian Matrix- 4.7.2
- ZCHRAN, CCHRAN
All Eigenvalues of a Hermitian Matrix- 4.7.3
- ZCHRSS, CCHRSS
Eigenvalues and Eigenvectors of a Hermitian Matrix- 4.7.4
- ZCHRSN, CCHRSN
Eigenvalues of a Hermitian Matrix- 4.7.5
- ZCHREE, CCHREE
Eigenvalues in an Interval and Their Eigenvectors of a Hermitian Matrix (Interval Specified)- 4.7.6
- ZCHREN, CCHREN
Eigenvalues in an Interval of a Hermitian Matrix (Interval Specified)- 4.8
- HERMITIAN MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (COMPLEX ARGUMENT TYPE)
- 4.8.1
- ZCHEAA, CCHEAA
All Eigenvalues and All Eigenvectors of a Hermitian Matrix- 4.8.2
- ZCHEAN, CCHEAN
All Eigenvalues of a Hermitian Matrix- 4.8.3
- ZCHESS, CCHESS
Eigenvalues and Eigenvectors of a Hermitian Matrix- 4.8.4
- ZCHESN, CCHESN
Eigenvalues of a Hermitian Matrix- 4.8.5
- ZCHEEE, CCHEEE
Eigenvalues in an Interval and their Eigenvectors of a Hermitian Matrix (Interval Specified)- 4.8.6
- ZCHEEN, CCHEEN
Eigenvalues in an Interval of a Hermitian Matrix (Interval Specified)- 4.9
- REAL SYMMETRIC BAND MATRIX (SYMMETRIC BAND TYPE)
- 4.9.1
- DCSBAA, RCSBAA
All Eigenvalues and All Eigenvectors of a Real Symmetric Band Matrix- 4.9.2
- DCSBAN, RCSBAN
All Eigenvalues of a Real Symmetric Band Matrix- 4.9.3
- DCSBSS, RCSBSS
Eigenvalues and Eigenvectors of a Real Symmetric Band Matrix- 4.9.4
- DCSBSN, RCSBSN
Eigenvalues of a Real Symmetric Band Matrix- 4.9.5
- DCSBFF, RCSBFF
Eigenvalues and Eigenvectors of a Real Symmetric Band Matrix- 4.10
- REAL SYMMETRIC TRIDIAGONAL MATRIX (VECTOR TYPE)
- 4.10.1
- DCSTAA, RCSTAA
All Eigenvalues and All Eigenvectors Real Symmetric Tridiagonal Matrix- 4.10.2
- DCSTAN, RCSTAN
All Eigenvalues of a Real Symmetric Tridiagonal Matrix- 4.10.3
- DCSTSS, RCSTSS
Eigenvalues and Eigenvectors of a Real Symmetric Tridiagonal Matrix- 4.10.4
- DCSTSN, RCSTSN
Eigenvalues of a Real Symmetric Tridiagonal Matrix- 4.10.5
- DCSTEE, RCSTEE
Eigenvalues in an Interval and Their Eigenvectors of a Real Symmetric Tridiagonal Matrix (Interval Specified)- 4.10.6
- DCSTEN, RCSTEN
Eigenvalues in an Interval of a Real Symmetric Tridiagonal Matrix (Interval Specified)- 4.11
- REAL SYMMETRIC RANDOM SPARSE MATRIX
- 4.12
- COMPLEX HERMITIAN RANDOM SPARSE MATRIX
- 4.13
- GENERALIZED EIGENVALUE PROBLEM FOR A REAL MATRIX (TWO-DIMENSIONAL ARRAY TYPE)
- 4.14
- GENERALIZED EIGENVALUE PROBLEM (Ax = λBx) FOR A REAL SYMMETRIC MATRIX (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE)
- 4.14.1
- DCGSAA, RCGSAA
All Eigenvalues and All Eigenvectors of a Real Symmetric Matrix
(Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.14.2
- DCGSAN, RCGSAN
All Eigenvalues of a Real Symmetric Matrix
(Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.14.3
- DCGSSS, RCGSSS
Eigenvalues and Eigenvectors of a Real Symmetric Matrix
(Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.14.4
- DCGSSN, RCGSSN
Eigenvalues of a Real Symmetric Matrix
(Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.14.5
- DCGSEE, RCGSEE
Eigenvalues in an Interval and Their Eigenvectors of a Real Symmetric Matrix (Interval Specified) (Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.14.6
- DCGSEN, RCGSEN
Eigenvalues in an Interval of a Real Symmetric Matrix
(Interval Specified) (Generalized Eigenvalue Problem Ax = λBx, B: Positive)- 4.15
- GENERALIZED EIGENVALUE PROBLEM (ABx = λx) FOR REAL SYMMETRIC MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE)
- 4.16
- GENERALIZED EIGENVALUE PROBLEM (BAx = λx) FOR REAL SYMMETRIC MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE)
- 4.17
- GENERALIZED EIGENVALUE PROBLEM (Az = λBz) FOR HERMITIAN MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (REAL ARGUMENT TYPE)
- 4.18
- GENERALIZED EIGENVALUE PROBLEM (Az = λBz) FOR HERMITIAN MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (COMPLEX ARGUMENT TYPE)
- 4.19
- GENERALIZED EIGENVALUE PROBLEM (ABz = λz) FOR HERMITIAN MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (REAL ARGUMENT TYPE)
- 4.20
- GENERALIZED EIGENVALUE PROBLEM (BAz = λz) FOR HERMITIAN MATRICES (TWO-DIMENSIONAL ARRAY TYPE) (UPPER TRIANGULAR TYPE) (REAL ARGUMENT TYPE)
- 4.21
- GENERALIZED EIGENVALUE PROBLEM FOR A REAL SYMMETRIC BAND MATRIX (SYMMETRIC BAND TYPE)
Appendix
- Appendix A
- GLOSSARY
- Appendix B
- METHODS OF HANDLING ARRAY DATA
- B.1
- Methods of handling array data corresponding to matrix
- B.2
- Data storage modes
- B.2.1
- Real matrix (two-dimensional array type)
- B.2.2
- Complex matrix
- B.2.3
- Real symmetric matrix and positive symmetric matrix
- B.2.4
- Hermitian matrix
- B.2.5
- Real band matrix
- B.2.6
- Real symmetric band matrix and positive symmetric matrix (symmetric band type)
- B.2.7
- Real symmetric tridiagonal matrix and positive symmetric tridiagonal matrix (vector type)
- B.2.8
- Triangular matrix
- B.2.9
- Random sparse matrix (For symmetric matrix only)
- B.2.10
- Random sparse matrix
- B.2.11
- Hermitian sparse matrix (Hermitian one-dimensional row-oriented list type) (upper triangular type)
- Appendix C
- MACHINE CONSTANTS USED IN ASL
- C.1
- Units for Determining Error
- C.2
- Maximum and Minimum Values of Floating Point Data