laqsb#

Functions

void slaqsb(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          f32*  restrict AB,
    const INT            ldab,
    const f32*  restrict S,
    const f32            scond,
    const f32            amax,
          char*          equed
);
void slaqsb(const char *uplo, const INT n, const INT kd, f32 *restrict AB, const INT ldab, const f32 *restrict S, const f32 scond, const f32 amax, char *equed)#

SLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S.

Parameters

in
uplo

  • 'U': Upper triangular

  • 'L': Lower triangular

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

inout
AB

Array of dimension (ldab, n). On entry, the upper or lower triangle of the symmetric band matrix A, stored in the first kd+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = A(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = A(i,j) for j<=i<=min(n-1,j+kd). On exit, the scaled matrix if equed='Y'.

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
S

Array of dimension n. The scale factors for A.

in
scond

Ratio of the smallest S(i) to the largest S(i).

in
amax

Absolute value of largest matrix entry.

out
equed

  • 'N': No equilibration

  • 'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S)

Functions

void dlaqsb(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          f64*  restrict AB,
    const INT            ldab,
    const f64*  restrict S,
    const f64            scond,
    const f64            amax,
          char*          equed
);
void dlaqsb(const char *uplo, const INT n, const INT kd, f64 *restrict AB, const INT ldab, const f64 *restrict S, const f64 scond, const f64 amax, char *equed)#

DLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S.

Parameters

in
uplo

  • 'U': Upper triangular

  • 'L': Lower triangular

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

inout
AB

Array of dimension (ldab, n). On entry, the upper or lower triangle of the symmetric band matrix A, stored in the first kd+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = A(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = A(i,j) for j<=i<=min(n-1,j+kd). On exit, the scaled matrix if equed='Y'.

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
S

Array of dimension n. The scale factors for A.

in
scond

Ratio of the smallest S(i) to the largest S(i).

in
amax

Absolute value of largest matrix entry.

out
equed

  • 'N': No equilibration

  • 'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S)

Functions

void claqsb(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          c64*  restrict AB,
    const INT            ldab,
    const f32*  restrict S,
    const f32            scond,
    const f32            amax,
          char*          equed
);
void claqsb(const char *uplo, const INT n, const INT kd, c64 *restrict AB, const INT ldab, const f32 *restrict S, const f32 scond, const f32 amax, char *equed)#

CLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S.

Parameters

in
uplo

  • 'U': Upper triangular

  • 'L': Lower triangular

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

inout
AB

Array of dimension (ldab, n). On entry, the upper or lower triangle of the symmetric band matrix A, stored in the first kd+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = A(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = A(i,j) for j<=i<=min(n-1,j+kd). On exit, the scaled matrix if equed='Y'.

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
S

Array of dimension n. The scale factors for A.

in
scond

Ratio of the smallest S(i) to the largest S(i).

in
amax

Absolute value of largest matrix entry.

out
equed

  • 'N': No equilibration

  • 'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S)

Functions

void zlaqsb(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          c128* restrict AB,
    const INT            ldab,
    const f64*  restrict S,
    const f64            scond,
    const f64            amax,
          char*          equed
);
void zlaqsb(const char *uplo, const INT n, const INT kd, c128 *restrict AB, const INT ldab, const f64 *restrict S, const f64 scond, const f64 amax, char *equed)#

ZLAQSB equilibrates a symmetric band matrix A using the scaling factors in the vector S.

Parameters

in
uplo

  • 'U': Upper triangular

  • 'L': Lower triangular

in
n

The order of the matrix A. n>=0.

in
kd

The number of superdiagonals of the matrix A if uplo='U', or the number of subdiagonals if uplo='L'. kd>=0.

inout
AB

Array of dimension (ldab, n). On entry, the upper or lower triangle of the symmetric band matrix A, stored in the first kd+1 rows of the array. The j-th column of A is stored in the j-th column of the array AB as follows: if uplo='U', AB[kd+i-j + j*ldab] = A(i,j) for max(0,j-kd)<=i<=j; if uplo='L', AB[i-j + j*ldab] = A(i,j) for j<=i<=min(n-1,j+kd). On exit, the scaled matrix if equed='Y'.

in
ldab

The leading dimension of the array AB. ldab>=kd+1.

in
S

Array of dimension n. The scale factors for A.

in
scond

Ratio of the smallest S(i) to the largest S(i).

in
amax

Absolute value of largest matrix entry.

out
equed

  • 'N': No equilibration

  • 'Y': Equilibration was done, i.e., A has been replaced by diag(S) * A * diag(S)