# naginterfaces.library.linsys.real_​blkdiag_​fac_​solve¶

naginterfaces.library.linsys.real_blkdiag_fac_solve(trans, blkstr, a, pivot, b)[source]

real_blkdiag_fac_solve calculates the approximate solution of a set of real linear equations with multiple right-hand sides, or , where is an almost block-diagonal matrix which has been factorized by matop.real_gen_blkdiag_lu.

For full information please refer to the NAG Library document for f04lh

https://www.nag.com/numeric/nl/nagdoc_28.7/flhtml/f04/f04lhf.html

Parameters
transstr, length 1

Specifies the equations to be solved.

Solve .

Solve .

blkstrint, array-like, shape

Information which describes the block structure of , as supplied to real_blkdiag_fac_solve.

afloat, array-like, shape

The elements in the factorization of , as returned by real_blkdiag_fac_solve.

pivotint, array-like, shape

Details of the interchanges in the factorization, as returned by real_blkdiag_fac_solve.

bfloat, array-like, shape

The right-hand side matrix .

Returns
bfloat, ndarray, shape

is overwritten by the solution matrix .

Raises
NagValueError
(errno )

On entry, is too small. . Minimum possible dimension: .

(errno )

On entry, the following equality does not hold: .

(errno )

On entry, the following equality does not hold: .

(errno )

On entry, , , and .

Constraint: .

(errno )

On entry, the following inequality was not satisfied for: . .

(errno )

On entry, , , and .

Constraint: .

(errno )

On entry, , and .

Constraint: .

(errno )

On entry, and .

Constraint: .

(errno )

On entry, and .

Constraint: .

(errno )

On entry, and .

Constraint: .

(errno )

On entry, and .

Constraint: .

(errno )

On entry, .

Constraint: .

(errno )

On entry, .

Constraint: .

(errno )

On entry, .

Constraint: .

(errno )

On entry, or : .

Notes

No equivalent traditional C interface for this routine exists in the NAG Library.

real_blkdiag_fac_solve solves a set of real linear equations or , where is almost block-diagonal. must first be factorized by matop.real_gen_blkdiag_lu. real_blkdiag_fac_solve then computes by forward and backward substitution over the blocks.

References

Diaz, J C, Fairweather, G and Keast, P, 1983, Fortran packages for solving certain almost block diagonal linear systems by modified alternate row and column elimination, ACM Trans. Math. Software (9), 358–375