Computes the inverse of a Hermitian indefinite matrix through
setting the leading dimension of the workspaceand calling
The routine computes the inverse
inv(of a Hermitian indefinite matrix
Ausing the factorization
sets the leading dimension of the workspacebefore calling
?hetri2xthat actually computes the inverse.
- Must beCHARACTER*1.'U'or'L'.Indicates how the input matrixAhas been factored:If, the arrayuplo='U'astores the factorization.A=U*D*UHIf, the arrayuplo='L'astores the factorization.A=L*D*LH
- The order of the matrixINTEGER.A;.n≥0
- COMPLEXforchetri2DOUBLE COMPLEXforzhetri2Arraya(sizecontains the block diagonal matrixldaby *)Dand the multipliers used to obtain the factorUorLas returned by?sytrf.The second dimension ofamust be at leastmax(1,.n)workis a workspace array of(dimension.n+nb+1)*(nb+3)
- The leading dimension ofINTEGER.a;.lda≥max(1,n)
- INTEGER.Array, size at leastmax(1,.n)Details of the interchanges and the block structure ofDas returned by?hetrf.
- The dimension of theINTEGER.workarray.lwork≥(n+nb+1)*(nb+3)wherenbis the block size parameter as returned byhetrf.If, then a workspace query is assumed; the routine only calculates the optimal size of thelwork= -1workarray, returns this value as the first entry of theworkarray, and no error message related tolworkis issued byxerbla.
- If, the inverse of the original matrix.info= 0If, the upper triangular part of the inverse is formed and the part ofuplo='U'Abelow the diagonal is not referenced.If, the lower triangular part of the inverse is formed and the part ofuplo='L'Aabove the diagonal is not referenced.