Change language to:
English - Français - 日本語 - Português -

Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function

balanc

matrix or pencil balancing

Syntax

```[Ab,X]=balanc(A)
[Eb,Ab,X,Y]=balanc(E,A)```

Arguments

A:

a real square matrix

X:

a real square invertible matrix

E:

a real square matrix (same dimension as `A`)

Y:

a real square invertible matrix.

Description

Balance a square matrix to improve its condition number.

`[Ab,X] = balanc(A)` finds a similarity transformation `X` such that

`Ab = inv(X)*A*X` has approximately equal row and column norms.

For matrix pencils,balancing is done for improving the generalized eigenvalue problem.

`[Eb,Ab,X,Y] = balanc(E,A)` returns left and right transformations `X` and `Y` such that `Eb=inv(X)*E*Y, Ab=inv(X)*A*Y`

Remark

Balancing is made in the functions `bdiag` and `spec`.

Examples

```A=[1/2^10,1/2^10;2^10,2^10];
[Ab,X]=balanc(A);
norm(A(1,:))/norm(A(2,:))
norm(Ab(1,:))/norm(Ab(2,:))```