syequb Interface

public interface syequb

SYEQUB computes row and column scalings intended to equilibrate a symmetric matrix A (with respect to the Euclidean norm) and reduce its condition number. The scale factors S are computed by the BIN algorithm (see references) so that the scaled matrix B with elements B(i,j) = S(i)A(i,j)S(j) has a condition number within a factor N of the smallest possible condition number over all possible diagonal scalings.


Subroutines

public pure subroutine csyequb(uplo, n, a, lda, s, scond, amax, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
complex(kind=sp), intent(in) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
real(kind=sp), intent(out) :: s(*)
real(kind=sp), intent(out) :: scond
real(kind=sp), intent(out) :: amax
complex(kind=sp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

public pure subroutine dsyequb(uplo, n, a, lda, s, scond, amax, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
real(kind=dp), intent(in) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
real(kind=dp), intent(out) :: s(*)
real(kind=dp), intent(out) :: scond
real(kind=dp), intent(out) :: amax
real(kind=dp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

public pure subroutine ssyequb(uplo, n, a, lda, s, scond, amax, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
real(kind=sp), intent(in) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
real(kind=sp), intent(out) :: s(*)
real(kind=sp), intent(out) :: scond
real(kind=sp), intent(out) :: amax
real(kind=sp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

public pure subroutine zsyequb(uplo, n, a, lda, s, scond, amax, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
complex(kind=dp), intent(in) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
real(kind=dp), intent(out) :: s(*)
real(kind=dp), intent(out) :: scond
real(kind=dp), intent(out) :: amax
complex(kind=dp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

Module Procedures

public interface stdlib_csyequb()

Arguments

None

public interface stdlib_dsyequb()

Arguments

None

public interface stdlib_ssyequb()

Arguments

None

public interface stdlib_zsyequb()

Arguments

None