Skip to content

Commit

Permalink
docs(matrices): fix references and add DOIs
Browse files Browse the repository at this point in the history
  • Loading branch information
mfasi committed Sep 19, 2024
1 parent f38f02a commit 3e123f8
Show file tree
Hide file tree
Showing 37 changed files with 116 additions and 84 deletions.
5 changes: 3 additions & 2 deletions src/matrices/binomial.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@ The matrix is a multiple of an involutory matrix.
- dim: the dimension of the matrix.
# References
**G. Boyd, C.A. Micchelli, G. Strang and D.X. Zhou**,
Binomial matrices, Adv. in Comput. Math., 14 (2001), pp 379-391.
**G. Boyd, C. A. Micchelli, G. Strang and D. X. Zhou**,
Binomial matrices, Adv. Comput. Math., 14 (2001), pp. 379-391,
https://doi.org/10.1023/A:1012207124894.
"""
struct Binomial{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
5 changes: 3 additions & 2 deletions src/matrices/cauchy.jl
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@ Given two vectors `x` and `y`, the `(i,j)` entry of the Cauchy matrix is
# References
**N. J. Higham**, Accuracy and Stability of Numerical Algorithms,
second edition, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA,
2002; sec. 28.1
second edition, Society for Industrial and Applied Mathematics,
Philadelphia, PA, USA, 2002, https://doi.org/10.1137/1.9780898718027.
See sect. 28.1.
"""
struct Cauchy{T<:Number,X<:AbstractVector,Y<:AbstractVector} <: AbstractMatrix{T}
x::X
Expand Down
3 changes: 2 additions & 1 deletion src/matrices/chebspec.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ If `k = 0`,the generated matrix is nilpotent and a vector with
# References
**L. N. Trefethen and M. R. Trummer**, An instability
phenomenon in spectral methods, SIAM J. Numer. Anal., 24 (1987), pp. 1008-1023.
phenomenon in spectral methods, SIAM J. Numer. Anal., 24 (1987),
pp. 1008-1023, https://doi.org/10.1137/0724066.
"""
struct ChebSpec{T<:Number} <: AbstractMatrix{T}
n::Int
Expand Down
3 changes: 2 additions & 1 deletion src/matrices/chow.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ The Chow matrix is a singular Toeplitz lower Hessenberg matrix.
# References
**T. S. Chow**, A class of Hessenberg matrices with known
eigenvalues and inverses, SIAM Review, 11 (1969), pp. 391-395.
eigenvalues and inverses, SIAM Rev., 11 (1969), pp. 391-395,
https://doi.org/10.1137/1011065.
"""
struct Chow{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
5 changes: 3 additions & 2 deletions src/matrices/clement.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ The Clement matrix is a tridiagonal matrix with zero
- dim: `k = 0`.
# References
**P. A. Clement**, A class of triple-diagonal
matrices for test purposes, SIAM Review, 1 (1959), pp. 50-52.
**P. A. Clement**, A class of triple-diagonal matrices
for test purposes, SIAM Rev., 1 (1959), pp. 50-52,
https://doi.org/10.1137/1001006.
"""
abstract type Clement{T<:Number} <: AbstractMatrix{T} end

Expand Down
7 changes: 6 additions & 1 deletion src/matrices/companion.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,12 @@ The companion matrix to a monic polynomial
# Input Options
- vec: `vec` is a vector of coefficients.
- dim: `vec = [1:dim;]`. `dim` is the dimension of the matrix.
- polynomial: `polynomial` is a polynomial. vector will be appropriate values from coefficients.
- polynomial: `polynomial` is a polynomial. Last column will contain
its coefficients.
# References
**N. J. Higham**, What Is the Companion Matrix?,
https://nhigham.com/2021/03/23/what-is-a-companion-matrix/
"""
struct Companion{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 4 additions & 0 deletions src/matrices/comparison.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ The comparison matrix for another matrix.
`k = 0`: each element is absolute value of `B`, except each diagonal element is negative absolute value.
`k = 1`: each diagonal element is absolute value of `B`, except each off-diagonal element is negative largest absolute value in the same row.
- B: `B` is a matrix and `k = 1`.
**N. J. Higham**, Efficient algorithms for computing the condition number
of a tridiagonal matrix, SIAM J. Sci. Stat. Comput., 7 (1986), pp. 150-165,
https://doi.org/10.1137/0907011.
"""
struct Comparison{T<:Number} <: AbstractMatrix{T}
A::AbstractMatrix{T}
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/dingdong.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ The eigenvalues cluster around `π/2` and `-π/2`.
- dim: the dimension of the matrix.
# References
**J. C. Nash**, Compact Numerical Methods for
Computers: Linear Algebra and Function Minimisation,
second edition, Adam Hilger, Bristol, 1990 (Appendix 1).
**J. C. Nash**, Compact Numerical Methods for Computers:
Linear Algebra and Function Minimisation, second edition,
Adam Hilger, Bristol, 1990 (Appendix 1).
"""
struct DingDong{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/fiedler.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ The Fiedler matrix is symmetric matrix with a dominant
- dim: `dim` is the dimension of the matrix. `vec=[1:dim;]`.
# References
**G. Szego**, Solution to problem 3705, Amer. Math.
Monthly, 43 (1936), pp. 246-259.
**A. C. Schaeffer and G. Szegö**, Solution to problem 3705, Amer. Math. Monthly,
43 (1936), pp. 246-259, https://doi.org/10.1090/S0002-9947-1941-0005164-7.
**J. Todd**, Basic Numerical Mathematics, Vol. 2: Numerical Algebra,
Birkhauser, Basel, and Academic Press, New York, 1977, p. 159.
Birkhauser, Basel, and Academic Press, New York, 1977, p. 159.
"""
struct Fiedler{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
7 changes: 4 additions & 3 deletions src/matrices/frank.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,10 @@ very ill conditioned.
- dim: the dimension of the matrix.
# References
**W. L. Frank**, Computing eigenvalues of complex matrices
by determinant evaluation and by methods of Danilewski and Wielandt,
J. Soc. Indust. Appl. Math., 6 (1958), pp. 378-392 (see pp. 385, 388).
**W. L. Frank**, Computing eigenvalues of complex matrices by determinant
evaluation and by methods of Danilewski and Wielandt, J. Soc. Indust.
Appl. Math., 6 (1958), pp. 378-392, https://doi.org/10.1137/0106026.
See pp. 385 and 388.
"""
struct Frank{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
5 changes: 5 additions & 0 deletions src/matrices/gearmat.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ other elements are 0.
# Input Options
- dim: the dimension of the matrix. `i = n` and `j = -n` by default.
- dim, i, j: the dimension of the matrix and the position of the 1's.
# References
**C. W. Gear**, A simple set of test matrices for eigenvalue programs,
Math. Comp., 23 (1969), pp. 119-125,
https://doi.org/10.1090/S0025-5718-1969-0238477-8.
"""
struct GearMat{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/golub.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ Golub matrix is the product of two random unit lower and upper
- dim: the dimension of the matrix.
# References
**D. Viswanath and N. Trefethen**. Condition Numbers of
Random Triangular Matrices, SIAM J. Matrix Anal. Appl. 19, 564-581,
1998.
**D. Viswanath and N. Trefethen**. Condition numbers of random
triangular matrices, SIAM J. Matrix Anal. Appl., 19 (1998), 564-581,
https://doi.org/10.1137/S0895479896312869.
"""
struct Golub{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/grcar.jl
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ eigenvalues.
- dim: the dimension of the matrix.
# References
**J. F. Grcar**, Operator coefficient methods
for linear equations, Report SAND89-8691, Sandia National
Laboratories, Albuquerque, New Mexico, 1989 (Appendix 2).
**J. F. Grcar**, Operator coefficient methods for linear equations,
Report SAND89-8691, Sandia National Laboratories, Albuquerque,
New Mexico, 1989 (Appendix 2).
"""
struct Grcar{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
5 changes: 3 additions & 2 deletions src/matrices/hadamard.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ a Hadamard matrix are orthogonal.
- dim: the dimension of the matrix, `dim` is a power of 2.
# References
**S. W. Golomb and L. D. Baumert**, The search for
Hadamard matrices, Amer. Math. Monthly, 70 (1963) pp. 12-17
**S. W. Golomb and L. D. Baumert**, The search for Hadamard
matrices, Amer. Math. Monthly, 70 (1963) pp. 12-17,
https://doi.org/10.1080/00029890.1963.11990035.
"""
struct Hadamard{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
5 changes: 3 additions & 2 deletions src/matrices/hilbert.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@ See also [`InverseHilbert`](@ref).
# References
**M. D. Choi**, Tricks or treats with the Hilbert matrix,
Amer. Math. Monthly, 90 (1983), pp. 301-312.
Amer. Math. Monthly, 90 (1983), pp. 301-312,
https://doi.org/10.1080/00029890.1983.11971218.
**N. J. Higham**, Accuracy and Stability of Numerical Algorithms,
second edition, Society for Industrial and Applied Mathematics,
Philadelphia, PA, USA, 2002; sec. 28.1.
Philadelphia, PA, USA, 2002. See sect. 28.1.
"""
struct Hilbert{T<:Number} <: AbstractMatrix{T}
m::Integer
Expand Down
7 changes: 4 additions & 3 deletions src/matrices/inversehilbert.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@ See also [`Hilbert`](@ref).
# References
**M. D. Choi**, Tricks or treats with the Hilbert matrix,
Amer. Math. Monthly, 90 (1983), pp. 301-312.
Amer. Math. Monthly, 90 (1983), pp. 301-312,
https://doi.org/10.1080/00029890.1983.11971218.
**N. J. Higham**, Accuracy and Stability of Numerical Algorithms, second
edition, Society for Industrial and Applied Mathematics, Philadelphia, PA,
USA, 2002; sec. 28.1.
edition, Society for Industrial and Applied Mathematics, Philadelphia, PA,
USA, 2002. See sect. 28.1.
"""
struct InverseHilbert{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/involutory.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ An involutory matrix is a matrix that is its own inverse.
- dim: `dim` is the dimension of the matrix.
# References
**A. S. Householder and J. A. Carpenter**, The
singular values of involutory and of idempotent matrices,
Numer. Math. 5 (1963), pp. 234-237.
**A. S. Householder and J. A. Carpenter**, The singular values
of involutory and of idempotent matrices, Numer. Math. 5 (1963),
pp. 234-237, https://doi.org/10.1007/BF01385894.
"""
struct Involutory{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 2 additions & 2 deletions src/matrices/kahan.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ The Kahan matrix is an upper trapezoidal matrix, i.e., the
- dim: `θ = 1.2`, `pert = 25`.
# References
**W. Kahan**, Numerical linear algebra, Canadian Math.
Bulletin, 9 (1966), pp. 757-801.
**W. Kahan**, Numerical linear algebra, Canadian Math. Bulletin,
9 (1966), pp. 757-801, https://doi.org/10.4153/CMB-1966-083-2.
"""
struct Kahan{T<:Number} <: AbstractMatrix{T}
m::Integer
Expand Down
9 changes: 6 additions & 3 deletions src/matrices/kms.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,12 @@ Kac-Murdock-Szego Toeplitz matrix
- dim: `rho = 0.5`.
# References
**W. F. Trench**, Numerical solution of the eigenvalue
problem for Hermitian Toeplitz matrices, SIAM J. Matrix Analysis
and Appl., 10 (1989), pp. 135-146 (and see the references therein).
**W. F. Trench**, Numerical solution of the eigenvalue problem for Hermitian
Toeplitz matrices, SIAM J. Matrix Anal. Appl., 10 (1989), pp. 135-146,
https://doi.org/10.1137/0610010.
**N. J. Higham**, What Is the Kac-Murdock-Szegö Matrix?,
https://nhigham.com/2021/07/06/what-is-the-kac-murdock-szego-matrix/
"""
struct KMS{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
13 changes: 8 additions & 5 deletions src/matrices/lehmer.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,14 @@ The Lehmer matrix is a symmetric positive definite matrix.
- dim: the dimension of the matrix.
# References
**M. Newman and J. Todd**, The evaluation of
matrix inversion programs, J. Soc. Indust. Appl. Math.,
6 (1958), pp. 466-476.
Solutions to problem E710 (proposed by D.H. Lehmer): The inverse
of a matrix, Amer. Math. Monthly, 53 (1946), pp. 534-535.
**M. Newman and J. Todd**, The evaluation of matrix inversion programs,
J. Soc. Indust. Appl. Math., 6 (1958), pp. 466-476, https://doi.org/10.1137/0106030.
**D. H. Lehmer**, Problem E710: The inverse of a matrix,
Amer. Math. Monthly, 53 (1946), p. 97, https://doi.org/10.2307/2305463.
Solutions by D. M. Smiley and M. F. Smiley, and by John Williamson.
Amer. Math. Monthly, 53 (1946), pp. 534-535, https://doi.org/10.2307/2305078.
"""
struct Lehmer{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
3 changes: 2 additions & 1 deletion src/matrices/lotkin.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ The Lotkin matrix is the Hilbert matrix with its first row
- dim: `dim` is the dimension of the matrix.
# References
**M. Lotkin**, A set of test matrices, MTAC, 9 (1955), pp. 153-161.
**M. Lotkin**, A set of test matrices, Math. Tables Aid Comput.,
9 (1955), pp. 153-161, https://doi.org/10.2307/2002051.
"""
struct Lotkin{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/minij.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ A matrix with `(i,j)` entry `min(i,j)`. It is a symmetric positive
- dim: the dimension of the matrix.
# References
**J. Fortiana and C. M. Cuadras**, A family of matrices,
the discretized Brownian bridge, and distance-based regression,
Linear Algebra Appl., 264 (1997), 173-188. (For the eigensystem of A.)
**J. Fortiana and C. M. Cuadras**, A family of matrices, the discretized
Brownian bridge, and distance-based regression, Linear Algebra Appl.,
264 (1997), pp. 173-188, https://doi.org/10.1016/S0024-3795(97)00051-7.
"""
struct Minij{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 2 additions & 2 deletions src/matrices/moler.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ It has one small eigenvalue.
# References
**J.C. Nash**, Compact Numerical Methods for Computers:
Linear Algebra and Function Minimisation, second edition,
Adam Hilger, Bristol, 1990 (Appendix 1).
Linear Algebra and Function Minimisation, second edition,
Adam Hilger, Bristol, 1990 (Appendix 1).
"""
struct Moler{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 2 additions & 2 deletions src/matrices/neumann.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ A singular matrix from the discrete Neumann problem.
- dim: the dimension of the matrix, must be a perfect square integer.
# References
**R. J. Plemmons**, Regular splittings and the
discrete Neumann problem, Numer. Math., 25 (1976), pp. 153-161.
**R. J. Plemmons**, Regular splittings and the discrete Neumann problem,
Numer. Math., 25 (1976), pp. 153-161, https://doi.org/10.1007/BF01462269.
"""
struct Neumann{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
6 changes: 3 additions & 3 deletions src/matrices/oscillate.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ A matrix `A` is called oscillating if `A` is totally
- dim: `mode = 1`.
# References
**Per Christian Hansen**, Test matrices for
regularization methods. SIAM J. SCI. COMPUT Vol 16,
No2, pp 506-512 (1995).
**P. C. Hansen**, Test matrices for regularization methods, SIAM J.
Sci. Comput., 16 (1995), pp. 506-512, https://doi.org/10.1137/0916032.
.
"""
struct Oscillate{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
9 changes: 5 additions & 4 deletions src/matrices/parter.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@ The Parter matrix is a Toeplitz and Cauchy matrix
- dim: the dimension of the matrix.
# References
The MathWorks Newsletter, Volume 1, Issue 1,
March 1986, page 2. S. V. Parter, On the distribution of the
singular values of Toeplitz matrices, Linear Algebra and
Appl., 80 (1986), pp. 115-130.
The MathWorks Newsletter, Volume 1, Issue 1, March 1986, page 2.
**S. V. Parter**, On the distribution of the singular values of
Toeplitz matrices, Linear Algebra Appl., 80 (1986), pp. 115-130,
https://doi.org/10.1016/0024-3795(86)90280-6.
"""
struct Parter{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
2 changes: 1 addition & 1 deletion src/matrices/pascal.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ The Pascal matrix’s anti-diagonals form the Pascal’s triangle.
**N. J. Higham**, Accuracy and Stability of Numerical Algorithms,
second edition, Society for Industrial and Applied Mathematics, Philadelphia, PA,
USA, 2002; sec. 28.4.
USA, 2002. See sect. 28.4.
"""
struct Pascal{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
2 changes: 1 addition & 1 deletion src/matrices/pei.jl
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The Pei matrix is a symmetric matrix with known inversion.
# References
**M. L. Pei**, A test matrix for inversion procedures,
Comm. ACM, 5 (1962), p. 508.
Comm. ACM, 5 (1962), p. 508, https://doi.org/10.1145/368959.368975.
"""
struct Pei{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 2 additions & 2 deletions src/matrices/poisson.jl
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ A block tridiagonal matrix from Poisson’s equation.
# References
**G. H. Golub and C. F. Van Loan**, Matrix Computations,
second edition, Johns Hopkins University Press, Baltimore,
Maryland, 1989 (Section 4.5.4).
second edition, Johns Hopkins University Press, Baltimore,
Maryland, 1989. See sect. 4.5.4.
"""
struct Poisson{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
4 changes: 2 additions & 2 deletions src/matrices/prolate.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ A prolate matrix is a symmetirc, ill-conditioned Toeplitz matrix.
- dim: the case when `w = 0.25`.
# References
**J. M. Varah**. The Prolate Matrix. Linear Algebra and Appl.
187:267--278, 1993.
**J. M. Varah**. The Prolate matrix. Linear Algebra Appl., 187 (1993),
pp. 267-278, https://doi.org/10.1016/0024-3795(93)90142-B.
"""
struct Prolate{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
2 changes: 1 addition & 1 deletion src/matrices/randsvd.jl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Random Matrix with Pre-assigned Singular Values
# References
**N. J. Higham**, Accuracy and Stability of Numerical
Algorithms, second edition, Society for Industrial and Applied Mathematics,
Philadelphia, PA, USA, 2002; sec. 28.3.
Philadelphia, PA, USA, 2002. See sect. 28.3.
"""
struct RandSVD{T<:Number} <: AbstractMatrix{T}
m::Integer
Expand Down
5 changes: 3 additions & 2 deletions src/matrices/rohess.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@ The matrix is constructed via a product of Givens rotations.
- dim: the dimension of the matrix.
# References
**W. B. Gragg**, The QR algorithm for unitary
Hessenberg matrices, J. Comp. Appl. Math., 16 (1986), pp. 1-8.
**W. B. Gragg**, The QR algorithm for unitary Hessenberg matrices,
J. Comp. Appl. Math., 16 (1986), pp. 1-8,
https://doi.org/10.1016/0377-0427(86)90169-X.
"""
struct Rohess{T<:Number} <: AbstractMatrix{T}
n::Integer
Expand Down
Loading

0 comments on commit 3e123f8

Please sign in to comment.