Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - Русский


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 — объект Scilab'а и определение типизированного списка
  • lsslist — функция определения линейного пространства состояний
  • rlist — определение функции рационального деления Scilab
  • ssrand — генератор случайной системы
  • ss2tf — conversion from state-space to transfer function
  • tf2ss — transfer to state-space
  • dscr — discretization of linear system
  • abcd — state-space matrices
Report an issue
<< sysconv Linear System Representation syssize >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:37:07 CEST 2023