spoequb.f(3)

spoequb.f3

Usage

Functions/Subroutines

subroutine spoequb (n, a, lda, s, scond, amax, info)
SPOEQUB

Function/Subroutine Documentation

subroutine spoequb (integer n, real, dimension( lda, * ) a, integer lda, real, dimension( * ) s, real scond, real amax, integer info)

SPOEQUB

Purpose:

!>
!> SPOEQUB computes row and column scalings intended to equilibrate a
!> symmetric positive definite matrix A and reduce its condition number
!> (with respect to the two-norm).  S contains the scale factors,
!> S(i) = 1/sqrt(A(i,i)), chosen so that the scaled matrix B with
!> elements B(i,j) = S(i)*A(i,j)*S(j) has ones on the diagonal.  This
!> choice of S puts the condition number of B within a factor N of the
!> smallest possible condition number over all possible diagonal
!> scalings.
!>
!> This routine differs from SPOEQU by restricting the scaling factors
!> to a power of the radix.  Barring over- and underflow, scaling by
!> these factors introduces no additional rounding errors.  However, the
!> scaled diagonal entries are no longer approximately 1 but lie
!> between sqrt(radix) and 1/sqrt(radix).
!> 

Parameters

N

!>          N is INTEGER
!>          The order of the matrix A.  N >= 0.
!> 

A

!>          A is REAL array, dimension (LDA,N)
!>          The N-by-N symmetric positive definite matrix whose scaling
!>          factors are to be computed.  Only the diagonal elements of A
!>          are referenced.
!> 

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1,N).
!> 

S

!>          S is REAL array, dimension (N)
!>          If INFO = 0, S contains the scale factors for A.
!> 

SCOND

!>          SCOND is REAL
!>          If INFO = 0, S contains the ratio of the smallest S(i) to
!>          the largest S(i).  If SCOND >= 0.1 and AMAX is neither too
!>          large nor too small, it is not worth scaling by S.
!> 

AMAX

!>          AMAX is REAL
!>          Absolute value of largest matrix element.  If AMAX is very
!>          close to overflow or very close to underflow, the matrix
!>          should be scaled.
!> 

INFO

!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value
!>          > 0:  if INFO = i, the i-th diagonal element is nonpositive.
!> 

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 117 of file spoequb.f.

Releases

4 releases since Debian 7 (Wheezy); the text changed 3 times.

  1. 7
  2. 8
  3. 9
  4. Arch

Author

Generated automatically by Doxygen for LAPACK from the source code.

From lapack-doc 3.12.1-2 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.