/home/abui...RC/zsysv.f(3)
π zsysv.f(3) β Library Functions Manual π
This is the page for zsysv.f, bestie β manual name: Library Functions Manual. Itβs a LAPACK routine page, and yes, itβs giving βlinear algebra but make it dramatic.β π
NAME
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zsysv.f
SYNOPSIS
Functions/Subroutines
subroutine ZSYSV (uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork,
info)
ZSYSV computes the solution to system of linear equations A * X = B
for SY matrices
Function/Subroutine Documentation
subroutine ZSYSV (character uplo, integer n, integer nrhs, complex*16,
dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv,
complex*16, dimension( ldb, * ) b, integer ldb, complex*16, dimension( *
) work, integer lwork, integer info)
ZSYSV computes the solution to system of linear equations A * X = B for SY matrices. Slay. β¨
Purpose
Okay so hereβs the whole vibe: ZSYSV computes the solution to a complex system of linear equations
A * X = B,
where A is an N-by-N symmetric matrix and X and B are N-by-NRHS matrices.
The diagonal pivoting method is used to factor A as
A = U * D * U**T, if UPLO = 'U', or
A = L * D * L**T, if UPLO = 'L',
where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B. Iconic behavior, no notes. π₯
Parameters
UPLOβUPLOisCHARACTER*1.= 'U': upper triangle ofAis stored.= 'L': lower triangle ofAis stored.
NβNisINTEGER. Itβs the number of linear equations, aka the order of the matrixA.N >= 0.NRHSβNRHSisINTEGER. Itβs the number of right hand sides, aka the number of columns of the matrixB.NRHS >= 0.AβAisCOMPLEX*16array, dimension(LDA,N).- On entry, this is the symmetric matrix
A. IfUPLO = 'U', the leading N-by-N upper triangular part ofAcontains the upper triangular part of the matrixA, and the strictly lower triangular part ofAis not referenced. IfUPLO = 'L', the leading N-by-N lower triangular part ofAcontains the lower triangular part of the matrixA, and the strictly upper triangular part ofAis not referenced. - On exit, if
INFO = 0, this holds the block diagonal matrixDand the multipliers used to obtain the factorUorLfrom the factorizationA = U*D*U**TorA = L*D*L**Tas computed byZSYTRF.
- On entry, this is the symmetric matrix
LDAβLDAisINTEGER. This is the leading dimension of the arrayA.LDA >= max(1,N).IPIVβIPIVisINTEGERarray, dimension(N). It holds details of the interchanges and the block structure ofD, as determined byZSYTRF. IfIPIV(k) > 0, then rows and columnskandIPIV(k)were interchanged, andD(k,k)is a 1-by-1 diagonal block. IfUPLO = 'U'andIPIV(k) = IPIV(k-1) < 0, then rows and columnsk-1and-IPIV(k)were interchanged andD(k-1:k,k-1:k)is a 2-by-2 diagonal block. IfUPLO = 'L'andIPIV(k) = IPIV(k+1) < 0, then rows and columnsk+1and-IPIV(k)were interchanged andD(k:k+1,k:k+1)is a 2-by-2 diagonal block.BβBisCOMPLEX*16array, dimension(LDB,NRHS).- On entry, this is the N-by-NRHS right hand side matrix
B. - On exit, if
INFO = 0, this is the N-by-NRHS solution matrixX.
- On entry, this is the N-by-NRHS right hand side matrix
LDBβLDBisINTEGER. This is the leading dimension of the arrayB.LDB >= max(1,N).WORKβWORKisCOMPLEX*16array, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK. π«ΆLWORKβLWORKisINTEGER. This is the length ofWORK.LWORK >= 1, and for best performanceLWORK >= max(1,N*NB), whereNBis the optimal blocksize forZSYTRF.- for
LWORK < N, TRS will be done with Level BLAS 2 - for
LWORK >= N, TRS will be done with Level BLAS 3
- for
If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA.
INFOβINFOisINTEGER.= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value> 0: ifINFO = i,D(i,i)is exactly zero. The factorization has been completed, but the block diagonal matrixDis exactly singular, so the solution could not be computed.
Important vibe check: ifINFO > 0, the factorization finished butDis singular, so the solution could not be computed. Thatβs not a cute little warning β thatβs the whole solve being unavailable. π
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 169 of file zsysv.f.
Author
This page was generated automatically by Doxygen for LAPACK from the source code. β¨
Sign-off, bestie: source/version is LAPACK Version 3.12.0, and the page is /home/abui...RC/zsysv.f(3). No date line is printed in this footer, so thatβs the whole footer tea. πππ¦
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms