Purpose
=======
DSBEV computes all the eigenvalues and, optionally, eigenvectors of
a real symmetric band matrix A.
Namespace: DotNumerics.LinearAlgebra.CSLapackAssembly: DWSIM.MathOps.DotNumerics (in DWSIM.MathOps.DotNumerics.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax public void Run(
string JOBZ,
string UPLO,
int N,
int KD,
ref double[] AB,
int offset_ab,
int LDAB,
ref double[] W,
int offset_w,
ref double[] Z,
int offset_z,
int LDZ,
ref double[] WORK,
int offset_work,
ref int INFO
)
Public Sub Run (
JOBZ As String,
UPLO As String,
N As Integer,
KD As Integer,
ByRef AB As Double(),
offset_ab As Integer,
LDAB As Integer,
ByRef W As Double(),
offset_w As Integer,
ByRef Z As Double(),
offset_z As Integer,
LDZ As Integer,
ByRef WORK As Double(),
offset_work As Integer,
ByRef INFO As Integer
)
Request Example
View SourceParameters
- JOBZ String
-
(input) CHARACTER*1
= 'N': Compute eigenvalues only;
= 'V': Compute eigenvalues and eigenvectors.
- UPLO String
-
(input) CHARACTER*1
= 'U': Upper triangle of A is stored;
= 'L': Lower triangle of A is stored.
- N Int32
-
(input) INTEGER
The order of the matrix A. N .GE. 0.
- KD Int32
-
(input) INTEGER
The number of superdiagonals of the matrix A if UPLO = 'U',
or the number of subdiagonals if UPLO = 'L'. KD .GE. 0.
- AB Double
-
(input/output) DOUBLE PRECISION array, dimension (LDAB, N)
On entry, the upper or lower triangle of the symmetric band
matrix A, stored in the first KD+1 rows of the array. The
j-th column of A is stored in the j-th column of the array AB
as follows:
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd).LE.i.LE.j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j.LE.i.LE.min(n,j+kd).
On exit, AB is overwritten by values generated during the
reduction to tridiagonal form. If UPLO = 'U', the first
superdiagonal and the diagonal of the tridiagonal matrix T
are returned in rows KD and KD+1 of AB, and if UPLO = 'L',
the diagonal and first subdiagonal of T are returned in the
first two rows of AB.
- offset_ab Int32
-
- LDAB Int32
-
(input) INTEGER
The leading dimension of the array AB. LDAB .GE. KD + 1.
- W Double
-
(output) DOUBLE PRECISION array, dimension (N)
If INFO = 0, the eigenvalues in ascending order.
- offset_w Int32
-
- Z Double
-
(output) DOUBLE PRECISION array, dimension (LDZ, N)
If JOBZ = 'V', then if INFO = 0, Z contains the orthonormal
eigenvectors of the matrix A, with the i-th column of Z
holding the eigenvector associated with W(i).
If JOBZ = 'N', then Z is not referenced.
- offset_z Int32
-
- LDZ Int32
-
(input) INTEGER
The leading dimension of the array Z. LDZ .GE. 1, and if
JOBZ = 'V', LDZ .GE. max(1,N).
- WORK Double
-
(workspace) DOUBLE PRECISION array, dimension (max(1,3*N-2))
- offset_work Int32
-
- INFO Int32
-
(output) INTEGER
= 0: successful exit
.LT. 0: if INFO = -i, the i-th argument had an illegal value
.GT. 0: if INFO = i, the algorithm failed to converge; i
off-diagonal elements of an intermediate tridiagonal
form did not converge to zero.
See Also