Computes the factorization of a real/complex symmetric indefinite matrix, using the diagonal pivoting method (unblocked algorithm).
?sytf2computes the factorization of a real/complex symmetric matrix
Ausing the Bunch-Kaufman diagonal pivoting method:
L) is a product of permutation and unit upper (lower) triangular matrices, and
Dis symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
This is the unblocked version of the algorithm, calling BLAS Level 2 Routines.
- CHARACTER*1.Specifies whether the upper or lower triangular part of the symmetric matrixAis stored='U': upper triangular='L': lower triangular
- INTEGER. The order of the matrixA..n≥0
- REALforssytf2DOUBLE PRECISIONfordsytf2COMPLEXforcsytf2DOUBLE COMPLEXforzsytf2.Array,DIMENSION(lda,n).On entry, the symmetric matrixA.If, the leadinguplo='U'n-by-nupper triangular part ofacontains the upper triangular part of the matrixA, and the strictly lower triangular part ofais not referenced.If, the leadinguplo='L'n-by-nlower triangular part ofacontains the lower triangular part of the matrixA, and the strictly upper triangular part ofais not referenced.
- INTEGER.The leading dimension of the arraya..lda≥max(1,n)
- On exit, the block diagonal matrixDand the multipliers used to obtain the factorUorL.
- INTEGER.Array,DIMENSION(n).Details of the interchanges and the block structure ofDIf, then rows and columnsipiv(k) > 0kandipiv(k) are interchanged andD(k,k) is a 1-by-1 diagonal block.Ifanduplo='U', then rows and columnsipiv(k) =ipiv(k-1) < 0k-1 and -ipiv(k) are interchanged andD(k- 1:k,k- 1:k) is a 2-by-2 diagonal block.Ifanduplo='L', then rows and columnsipiv(k) =ipiv(k+1)< 0k+1 and -ipiv(k) were interchanged andD(k:k+ 1,k:k+ 1) is a 2-by-2 diagonal block.
- INTEGER.= 0: successful exit< 0: ifinfo= -k, thek-th argument has an illegal value> 0: ifinfo=k,