syslin определение линейной системы

## Синтаксис

                sl = syslin(dom, A, B, C)
                sl = syslin(dom, A, B, C, D)
                sl = syslin(dom, A, B, C, D, x0)
                sl = syslin(dom, N, D)
                sl = syslin(dom, H)

## Аргументы

dom

  символьная строка (`'c'`, `'d'`) или `[]` для скаляра.

A,B,C,D

  матрицы в виде пространства состояний (`D` не обязательная матрица, по умолчанию - нулевая). Для сингулярных систем `D` является матрицей многочленов.

x0

  вектор (исходное состояние; значение по умолчанию `0`)

N, D

  матрицы многочленов

H

  матрица рациональных дробей или в виде линейного пространства состояний

sl

  типизированный список (tlist) ("`syslin`" список), представляющий линейную систему

## Описание

`syslin` определяет линейную систему в виде списка и проверяет правильность данных.

`dom` определяет временную область системы и может иметь следующие значения:

`dom='c'` для систем с непрерывным временем, `dom='d'` для систем с дискретным временем, `n` для дискретных систем с периодом дискретизации `n` (в секундах).

`dom=[]`, если временная область не определена.

Представление в виде пространства состояний:

    sl = syslin(dom,A,B,C [,D [,x0] ])

представляет систему

s.X | = A.X + B.u
y | = C.X + D.u
x(0) | = x0

Выход `syslin` является списком следующей формы: `sl=tlist(['lss','A','B','C','D','X0','dt'],A,B,C,D,x0,dom)` Заметим, что `D` может быть матрицей многочленов (сингулярные системы).

Представление в виде передаточной матрицы:

    sl=syslin(dom,N,D)
    sl=syslin(dom,H)

Выход `syslin` является списком следующей формы: `sl=rlist(,N,D,dom)` или `sl=rlist(H(2),H(3),dom)`.

Линейные системы, определённые как `syslin`, могут управляться как обычные матрицы (конкатенация, извлечение, перестановка, умножение и т. д.) как в виде пространства состояний, так и в передаточном виде.

Большинство функций управления в пространстве состояний получают на входе список `syslin` вместо четырёх матриц, определяющих систему.

## Примеры

    A=[0,1;0,0];B=[1;1];C=[1,1];
    S1=syslin('c',A,B,C)   //Определение линейной системы
    S1("A")    //распечатка матрицы A
    S1("X0"), S1("dt") // распечатка X0 и временной области
    s=poly(0,'s');
    D=s;
    S2=syslin('c',A,B,C,D)
    H1=(1+2*s)/s^2, S1bis=syslin('c',H1)
    H2=(1+2*s+s^3)/s^2, S2bis=syslin('c',H2)
    S1+S2
    [S1,S2]
    ss2tf(S1)-S1bis
    S1bis+S2bis
    S1*S2bis
    size(S1)

## Смотрите также

- tlist
- lsslist
- rlist
- ssrand
- ss2tf
- tf2ss
- dscr
- abcd