naginterfaces.library.matop.real_symm_posdef_geneig(k, a, b)[source]

real_symm_posdef_geneig transforms the generalized symmetric-definite eigenproblem to the equivalent standard eigenproblem , where , and are symmetric band matrices and is positive definite. must have been decomposed by real_symm_posdef_fac().

For full information please refer to the NAG Library document for f01bv


, the change-over point in the transformations. It must be the same as the value used by real_symm_posdef_fac() in the decomposition of .

Suggested value: the optimum value is the multiple of nearest to .

afloat, array-like, shape

The upper triangle of the symmetric band matrix , with the diagonal of the matrix stored in the th row of the array, and the superdiagonals within the band stored in the first rows of the array. Each column of the matrix is stored in the corresponding column of the array. For example, if and , the storage scheme is

Elements in the top left corner of the array need not be set. The matrix elements within the band can be assigned to the correct elements of the array using the following code:

for j in range(A.shape[1]):
    for i in range(max(0, j+1-ma1), j+1):
        a[i-j+ma1-1, j] = A[i, j]
bfloat, array-like, shape

The elements of the decomposition of matrix as returned by real_symm_posdef_fac().

afloat, ndarray, shape

Is overwritten by the corresponding elements of .

bfloat, ndarray, shape

The elements of will have been permuted.

(errno )

On entry, and .

Constraint: .


No equivalent traditional C interface for this routine exists in the NAG Library.

is a symmetric band matrix of order and bandwidth . The positive definite symmetric band matrix , of order and bandwidth , must have been previously decomposed by real_symm_posdef_fac() as . real_symm_posdef_geneig applies , and to , rows at a time, restoring the band form of at each stage by plane rotations. The argument defines the change-over point in the decomposition of as used by real_symm_posdef_fac() and is also used as a change-over point in the transformations applied by this function. For maximum efficiency, should be chosen to be the multiple of nearest to . The resulting symmetric band matrix is overwritten on . The eigenvalues of , and thus of the original problem, may be found using lapackeig.dsbtrd and lapackeig.dsterf. For selected eigenvalues, use lapackeig.dsbtrd and lapackeig.dstebz.


Crawford, C R, 1973, Reduction of a band-symmetric generalized eigenvalue problem, Comm. ACM (16), 41–44