Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

?pttrf

Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.

Syntax

call spttrf( n, d, e, info )

call dpttrf( n, d, e, info )

call cpttrf( n, d, e, info )

call zpttrf( n, d, e, info )

call pttrf( d, e [,info] )

Include Files

  • mkl.fi, mkl_lapack.f90

Description

The routine forms the factorization of a symmetric positive-definite or, for complex data, Hermitian positive-definite tridiagonal matrix A:

A = L*D*LT for real flavors, or

A = L*D*LH for complex flavors,

where D is diagonal and L is unit lower bidiagonal. The factorization may also be regarded as having the form A = UT*D*U for real flavors, or A = UH*D*U for complex flavors, where U is unit upper bidiagonal.

Input Parameters

n

INTEGER. The order of the matrix A; n 0.

d

REAL for spttrf, cpttrf

DOUBLE PRECISION for dpttrf, zpttrf.

Array, dimension (n). Contains the diagonal elements of A.

e

REAL for spttrf

DOUBLE PRECISION for dpttrf

COMPLEX for cpttrf

DOUBLE COMPLEX for zpttrf.

Array, dimension (n -1). Contains the subdiagonal elements of A.

Output Parameters

d

Overwritten by the n diagonal elements of the diagonal matrix D from the L*D*LT (for real flavors) or L*D*LH (for complex flavors) factorization of A.

e

Overwritten by the (n - 1) sub-diagonal elements of the unit bidiagonal factor L or U from the factorization of A.

info

INTEGER. If info = 0, the execution is successful.

If info = -i, the i-th parameter had an illegal value.

If info = i, the leading minor of order i (and therefore the matrix A itself) is not positive-definite; if i < n, the factorization could not be completed, while if i = n, the factorization was completed, but d(n) ≤ 0.

LAPACK 95 Interface Notes

Routines in Fortran 95 interface have fewer arguments in the calling sequence than their FORTRAN 77 counterparts. For general conventions applied to skip redundant or reconstructible arguments, see LAPACK 95 Interface Conventions.

Specific details for the routine pttrf interface are as follows:

d

Holds the vector of length n.

e

Holds the vector of length (n-1).