lasyf_rook Interface

public interface lasyf_rook

LASYF_ROOK computes a partial factorization of a complex symmetric matrix A using the bounded Bunch-Kaufman ("rook") diagonal pivoting method. The partial factorization has the form: A = ( I U12 ) ( A11 0 ) ( I 0 ) if UPLO = 'U', or: ( 0 U22 ) ( 0 D ) ( U12T U22T ) A = ( L11 0 ) ( D 0 ) ( L11T L21T ) if UPLO = 'L' ( L21 I ) ( 0 A22 ) ( 0 I ) where the order of D is at most NB. The actual order is returned in the argument KB, and is either NB or NB-1, or N if N <= NB. LASYF_ROOK is an auxiliary routine called by CSYTRF_ROOK. It uses blocked code (calling Level 3 BLAS) to update the submatrix A11 (if UPLO = 'U') or A22 (if UPLO = 'L').


Subroutines

public pure subroutine clasyf_rook(uplo, n, nb, kb, a, lda, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
complex(kind=sp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
integer(kind=ilp), intent(out) :: ipiv(*)
complex(kind=sp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

public pure subroutine dlasyf_rook(uplo, n, nb, kb, a, lda, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
real(kind=dp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
integer(kind=ilp), intent(out) :: ipiv(*)
real(kind=dp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

public pure subroutine slasyf_rook(uplo, n, nb, kb, a, lda, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
real(kind=sp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
integer(kind=ilp), intent(out) :: ipiv(*)
real(kind=sp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

public pure subroutine zlasyf_rook(uplo, n, nb, kb, a, lda, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
complex(kind=dp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
integer(kind=ilp), intent(out) :: ipiv(*)
complex(kind=dp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

Module Procedures

public interface stdlib_clasyf_rook()

Arguments

None

public interface stdlib_dlasyf_rook()

Arguments

None

public interface stdlib_slasyf_rook()

Arguments

None

public interface stdlib_zlasyf_rook()

Arguments

None