Создайте соединения определенных и неопределенных матриц и систем
sysout = sysic
sysic
требует, чтобы 3 переменные с фиксированными именами присутствовали в рабочей области вызова: systemnames
, inputvar
и outputvar
.
systemnames
является char
, содержащий имена подсистем (double, tf, zpk, ss, uss, frd, ufrd
, и т.д.), которые составляют соединение. Имена должны быть разделены пробелами без дополнительной пунктуации. Каждая именованная переменная должна существовать в рабочей области вызова.
inputvar
является char
, задавая имена внешних входных параметров к соединению. Имена разделяются точками с запятой, и целый список заключен в квадратные скобки [ ]
. Входные параметры могут быть скаляром или многомерный. Например, с 3 компонентами (x,y,z
) вход силы может быть задан с 3 отдельными именами, Fx, Fy, Fz
. Также одно имя с заданной целочисленной размерностью может быть задано, как в F{3}
. Порядок имен в inputvar
определяет порядок входных параметров в соединении.
outputvar
является char
, описывая выходные параметры соединения. Выходные параметры не имеют имен - они - просто линейные комбинации выходных параметров отдельной подсистемы и внешних входных параметров. Точки с запятой формируют рисунок отдельных компонентов соединений выходные параметры. Между точками с запятой сигналы могут быть добавлены и вычтены и умножены на скаляры. Для многомерных подсистем аргументы в круглых скобках задают, какая подсистема выходные параметры должны использоваться и в какой порядок. Например, plant(2:4,1,9:11)
задает выходные параметры 2,3,4,1,9,10,11
от подсистемы plant
. Если подсистема перечислена в outputvar
без аргументов, то все выходные параметры от той подсистемы используются.
sysic
также требует, чтобы для каждого имени подсистемы, перечисленного в systemnames
, соответствующей переменной, input_to_ListedSubSystemName
существовал в рабочей области вызова. Эта переменная подобна outputvar
– это задает входные сигналы к этой конкретной подсистеме как линейные комбинации выходных параметров отдельной подсистемы и внешних входных параметров.
sysout = sysic
выполнит соединение, описанное переменными выше, с помощью данных о подсистеме на имена, найденные в systemnames
. Получившееся соединение возвращено в выходном аргументе, упомянутом выше как sysout
.
После выполнения sysic
переменные systemnames, inputvar, outputvar
и весь input_to_ListedSubSystemName
будут существовать в рабочей области. Установка дополнительной переменной cleanupsysic
к 'yes'
заставит эти переменные быть удаленными из рабочей области после того, как sysic
сформирует соединение.
Простое системное соединение, идентичное системе, проиллюстрировано в описании iconnect
. Считайте с тремя входами, 2D выходную матрицу LTI T,
который имеет внутреннюю структуру
P = rss(3,2,2); K = rss(1,1,2); A = rss(1,1,1); W = rss(1,1,1); systemnames = 'W A K P'; inputvar = '[noise;deltemp;setpoint]'; outputvar = '[57.3*P(1);setpoint-P(2)]'; input_to_W = '[deltemp]'; input_to_A = '[K]'; input_to_K = '[P(2)+noise;setpoint]'; input_to_P = '[W;A]'; cleanupsysic = `yes'; T = sysic; exist(`inputvar')
Синтаксис sysic
ограничивается, и по большей части ограничивается тем, что показывают здесь. Соединительный объект iconnect
может также использоваться, чтобы задать комплексные соединения и имеет более гибкий синтаксис.
В sysic
стандартные программы проверки ошибок контролируют непротиворечивость и доступность подсистем и их входных параметров. Эти стандартные программы обеспечивают базовый уровень выявления ошибок, чтобы помочь пользователю в отладке.