larmm#

Functions

f32 slarmm(
    const f32 anorm,
    const f32 bnorm,
    const f32 cnorm
);
f32 slarmm(const f32 anorm, const f32 bnorm, const f32 cnorm)#

SLARMM returns a factor s in (0, 1] such that the linear updates.

(s * C) - A * (s * B) and (s * C) - (s * A) * B

cannot overflow, where A, B, and C are matrices of conforming dimensions.

This is an auxiliary routine so there is no argument checking.

Reference: C. C. Kjelgaard Mikkelsen and L. Karlsson, Blocked Algorithms for Robust Solution of Triangular Linear Systems. In: International Conference on Parallel Processing and Applied Mathematics, pages 68—78. Springer, 2017.

Parameters

in
anorm

The infinity norm of A. anorm >= 0.

in
bnorm

The infinity norm of B. bnorm >= 0.

in
cnorm

The infinity norm of C. cnorm >= 0.

Functions

f64 dlarmm(
    const f64 anorm,
    const f64 bnorm,
    const f64 cnorm
);
f64 dlarmm(const f64 anorm, const f64 bnorm, const f64 cnorm)#

DLARMM returns a factor s in (0, 1] such that the linear updates.

(s * C) - A * (s * B) and (s * C) - (s * A) * B

cannot overflow, where A, B, and C are matrices of conforming dimensions.

This is an auxiliary routine so there is no argument checking.

Reference: C. C. Kjelgaard Mikkelsen and L. Karlsson, Blocked Algorithms for Robust Solution of Triangular Linear Systems. In: International Conference on Parallel Processing and Applied Mathematics, pages 68—78. Springer, 2017.

Parameters

in
anorm

The infinity norm of A. anorm >= 0.

in
bnorm

The infinity norm of B. bnorm >= 0.

in
cnorm

The infinity norm of C. cnorm >= 0.