Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.

However, this page did not exist in the previous stable version.

# stabil

stabilization

### Syntax

F=stabil(A,B,alfa) K=stabil(Sys,alfa,beta)

### Arguments

- A
square real matrix (

`nx x nx`

)- B
real matrix (

`nx x nu`

)- alfa, beta
real or complex vector (in conjugate pairs) or real number.

- F
real matrix (

`nx x nu`

)- Sys
linear system (

`syslin`

list) (`m`

inputs,`p`

outputs).- K
linear system (

`p`

inputs,`m`

outputs)

### Description

`F=stabil(A,B,alfa)`

returns a gain matrix `F`

such that
`A+B*F`

is stable if pair `(A,B)`

is stabilizable.
Assignable poles are set to `alfa(1),alfa(2),...`

.
If `(A,B)`

is not stabilizable a warning is given
and assignable poles are set to `alfa(1),alfa(2),...`

.
If `alfa`

is a number all eigenvalues are set to this
`alfa`

(default value is `alfa=-1`

).

`K=stabil(Sys,alfa,beta)`

returns `K`

, a compensator for `Sys`

such that `(A,B)`

-controllable eigenvalues are set to
`alfa`

and `(C,A)`

-observable eigenvalues are set to `beta`

.

All assignable closed loop poles (which are given by the
eigenvalues of `Aclosed=h_cl(Sys,K)`

are set to `alfa(i)`

's
and `beta(j)`

's.

### Examples

// Gain: Sys=ssrand(0,2,5,list('st',2,3,3)); A=Sys('A');B=Sys('B');F=stabil(A,B); spec(A) //2 controllable modes 2 unstable uncontrollable modes //and one stable uncontrollable mode spec(A+B*F) //the two controllable modes are set to -1. // Compensator: Sys=ssrand(3,2,5,list('st',2,3,3)); //3 outputs, 2 inputs, 5 states //2 controllables modes, 3 controllable or stabilizable modes. K=stabil(Sys,-2,-3); //Compensator for Sys. spec(Sys('A')) spec(h_cl(Sys,K)) //K Stabilizes what can be stabilized.

## Comments

Add a comment:Please login to comment this page.