idgrey

Линейное ОДУ (модель серого поля) с идентифицируемыми параметрами

Синтаксис

sys = idgrey(odefun,parameters,fcn_type)
sys = idgrey(odefun,parameters,fcn_type,optional_args)
sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts)
sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts,Name,Value)

Описание

sys = idgrey(odefun,parameters,fcn_type) создает линейную модель серого поля с идентифицируемыми параметрами, sys. odefun задает пользовательскую функцию, которая связывает параметры модели, parameters, к его представлению пространства состояний.

sys = idgrey(odefun,parameters,fcn_type,optional_args) создает линейную модель серого поля с идентифицируемыми параметрами с помощью дополнительных аргументов, требуемых odefun.

sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts) создает линейную модель серого поля с идентифицируемыми параметрами с заданным шагом расчета, Ts.

sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts,Name,Value) создает линейную модель серого поля с идентифицируемыми параметрами с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

Описание объекта

Модель idgrey представляет систему как модель в пространстве состояний непрерывно-разового или дискретного времени с идентифицируемыми (допускающими оценку) коэффициентами.

Модель в пространстве состояний системы с входным вектором, u, выходным вектором, y, и воздействием, e, принимает следующую форму в непрерывное время:

x˙(t)=Ax(t)+Bu(t)+Ke(t)y(t)=Cx(t)+Du(t)+e(t)

В дискретное время модель в пространстве состояний принимает форму:

x[k+1]=Ax[k]+Bu[k]+Ke[k]y[k]=Cx[k]+Du[k]+e[k]

Для моделей idgrey матриц пространства состояний A, B, C и D выражаются как функция пользовательских параметров с помощью функции MATLAB®. Вы получаете доступ к оцененным параметрам с помощью sys.Structures.Parameters, где sys является моделью idgrey.

Используйте модель idgrey, когда вы будете знать систему уравнений, управляющую системной динамикой явным образом. Необходимо смочь выразить эти движущие силы в форме обыкновенных дифференциальных уравнений или разностных уравнений. Вы задаете комплексные отношения и ограничения среди параметров, которые не могут быть сделаны через структурированные модели в пространстве состояний (idss).

Можно создать модель idgrey с помощью команды idgrey. Для этого запишите функцию MATLAB, которая возвращает A, B, C и матрицы D для данных значений допускающих оценку параметров и шага расчета. Функция MATLAB может также возвратить матрицу K и принять дополнительные входные параметры. Возвращенные матрицы могут представлять модель непрерывно-разового или дискретного времени, как обозначено шагом расчета.

Используйте функции оценки pem или greyest, чтобы получить ориентировочные стоимости для неизвестных параметров модели idgrey.

Можно преобразовать модель idgrey в другие динамические системы, такие как idpoly, idss, tf, ss и т.д. Вы не можете преобразовать динамическую систему в модель idgrey.

Примеры

свернуть все

Создайте модель idgrey, чтобы представлять двигатель постоянного тока. Задайте двигатель, постоянный во времени как допускающий оценку параметр и что функция ОДУ может возвратиться непрерывный - или матрицы пространства состояний дискретного времени.

Создайте модель idgrey.

odefun = 'motorDynamics';
parameters = 1;
fcn_type = 'cd';
optional_args = 0.25; 
Ts = 0;
sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts);

sys является моделью idgrey, которая сконфигурирована, чтобы использовать поставленный файл motorDynamics.m, чтобы возвратиться A, B, C, D, и K матрицы. motorDynamics.m также возвращает начальные условия, X0. Моторная константа, τ, задан в motorDynamics.m как допускающий оценку параметр, и parameters = 1 задает свое начальное значение как 1.

Можно использовать pem или greyest, чтобы совершенствовать оценку для τ.

Задайте известные параметры модели серого поля, как зафиксировано для оценки. Также задайте минимум, направляющийся в допускающий оценку параметр.

Создайте файл ОДУ, который связывает коэффициенты модели маятника с его представлением пространства состояний. Сохраните эту функцию как LinearPendulum.m, таким образом, что это находится на пути поиска файлов MATLAB®.

function [A,B,C,D] = LinearPendulum(m,g,l,b,Ts)
A = [0 1; -g/l, -b/m/l^2];
B = zeros(2,0);
C = [1 0];
D = zeros(1,0);
end 

В этой функции:

  • m является массой маятника.

  • g является гравитационным ускорением.

  • l является длиной маятника.

  • b является вязким коэффициентом трения.

  • Ts является образцовым шагом расчета.

Создайте линейную модель серого поля, сопоставленную с функцией ОДУ.

odefun = 'LinearPendulum';

m = 1;
g = 9.81;
l = 1;
b = 0.2;
parameters = {'mass',m;'gravity',g;'length',l;'friction',b};

fcn_type = 'c';

sys = idgrey(odefun,parameters,fcn_type);

sys имеет четыре параметра.

Задайте известные параметры, m, g и l, как зафиксировано для оценки.

sys.Structure.Parameters(1).Free = false;
sys.Structure.Parameters(2).Free = false;
sys.Structure.Parameters(3).Free = false;

m, g и l являются первыми тремя параметрами sys.

Задайте нулевую нижнюю границу для b, четвертого параметра sys.

sys.Structure.Parameters(4).Minimum = 0;

Точно так же, чтобы задать верхнюю границу для допускающего оценку параметра, используйте поле Maximum параметра.

Создайте модель серого поля с идентифицируемыми параметрами. Назовите каналы ввода и вывода модели и задайте секунды для образцовых единиц измерения времени.

Используйте аргументы пары Name,Value, чтобы задать дополнительные образцовые свойства на образцовом создании.

odefun = 'motorDynamics';
parameters = 1;
fcn_type = 'cd';
optional_args = 0.25; 
Ts = 0;
sys = idgrey(odefun,parameters,fcn_type,optional_args,Ts,'InputName','Voltage',...
            'OutputName',{'Angular Position','Angular Velocity'});

Чтобы изменить или задать больше атрибутов существующей модели, можно использовать запись через точку. Например:

sys.TimeUnit = 'seconds';

Используйте команду stack, чтобы создать массив линейных моделей серого поля.

odefun1 = @motorDynamics;
parameters1 = [1 2];
fcn_type = 'cd';
optional_args1 = 1;
sys1 = idgrey(odefun1,parameters1,fcn_type,optional_args1);

odefun2 = 'motorDynamics';
parameters2 = {[1 2]};
optional_args2 = 0.5;
sys2 = idgrey(odefun2,parameters2,fcn_type,optional_args2);

sysarr = stack(1,sys1,sys2);

stack создает 2 1 массив моделей idgrey, sysarr.

Входные параметры

odefun

Функция MATLAB, которая связывает параметры модели с ее представлением пространства состояний.

odefun задает имя функции MATLAB (.m.p, указатель на функцию или .mex* файл). Эта функция устанавливает отношение между параметрами модели, parameters и его представлением пространства состояний. Функция может опционально связать параметры модели с матрицей воздействия и начальными состояниями.

Если функция не находится на пути MATLAB, то задайте полное имя файла, включая путь.

Синтаксис для odefun должен быть следующие:

[A,B,C,D] = odefun(par1,par2,...,parN,Ts,optional_arg1,optional_arg2,...)

Функциональные выходные параметры описывают модель в следующей линейной инновационной форме пространства состояний:

xn(t)=Ax(t)+Bu(t)+Ke(t);x(0)=x0y(t)=Cx(t)+Du(t)+e(t)

В дискретное время xn (t) =x (t +Ts) и в непрерывное время, xn(t)=x˙(t).

par1,par2,...,parN является параметрами модели. Каждая запись может быть скаляром, вектором или матрицей.

Ts является шагом расчета.

optional_arg1,optional_arg2,... является дополнительными входными параметрами, которых может потребовать odefun. Значения дополнительных входных параметров неизменны посредством процесса оценки. Однако значения par1,par2,...,parN обновляются во время оценки, чтобы соответствовать данным. Используйте дополнительные входные параметры, чтобы отличаться константы и коэффициенты, используемые вашей моделью, не редактируя odefun.

Матрица воздействия, K, и значения начального состояния, x0, не параметризована. Вместо этого эти значения определяются отдельно, с помощью DisturbanceModel и опций оценки InitialState, соответственно. Для получения дополнительной информации относительно опций оценки, смотрите greyestOptions.

Хороший выбор для достижения лучших результатов симуляции состоит в том, чтобы установить опцию DisturbanceModel на 'none', который фиксирует K, чтобы обнулить.

(Необязательно) Параметризация Воздействия: odefun может также возвратить компонент воздействия, K, с помощью синтаксиса:

[A,B,C,D,K] = odefun(par1,par2,...,parN,Ts,optional_arg1,optional_arg2,...)

Если odefun возвращает значение для K, который содержит значения NaN, то функция оценки принимает, что K не параметризован. В этом случае значение опции оценки DisturbanceModel определяет, как K обработан.

(Необязательно) Параметризация Значений начального состояния: Чтобы сделать образцовые начальные состояния, X0, зависящий от параметров модели, использует следующий синтаксис для odefun:

[A,B,C,D,K,X0] = odefun(par1,par2,...,parN,Ts,optional_arg1,optional_arg2,...)

Если odefun возвращает значение для X0, который содержит значения NaN, то функция оценки принимает, что X0 не параметризован. В этом случае X0 может быть зафиксирован, чтобы обнулить или оценен отдельно, с помощью опции оценки InitialStates.

parameters

Начальные значения параметров требуются odefun.

Задайте parameters как массив ячеек, содержащий начальные значения параметра. Если ваша модель требует только одного параметра, который может самостоятельно быть вектором или матрицей, можно задать parameters как матрицу.

Можно также задать названия параметра с помощью N-by-2 массив ячеек, где N является количеством параметров. Первый столбец задает имена, и второй столбец задает значения параметров.

Например:

parameters = {'mass',par1;'stiffness',par2;'damping',par3}

fcn_type

Указывает, параметризована ли модель в непрерывно-разовое, дискретное время или обоих.

fcn_type требует одного из следующих значений:

  • C odefun возвращает матрицы, соответствующие непрерывно-разовой системе, независимо от значения Ts.

  • D odefun возвращает матрицы, соответствующие системе дискретного времени, значения которой могут или не могут зависеть от значения Ts.

  • CD odefun возвращает матрицы, соответствующие непрерывно-разовой системе, если Ts=0.

    В противном случае, если Ts>0, odefun возвращает матрицы, соответствующие системе дискретного времени. Выберите эту опцию, чтобы выбрать вашу модель с помощью значений, возвращенных odefun, вместо того, чтобы использовать внутренние подпрограммы преобразования шага расчета программного обеспечения.

optional_args

Дополнительные входные параметры требуются odefun.

Задайте optional_args как массив ячеек.

Если odefun не требует дополнительных входных параметров, задайте optional_args как {}.

Ts

Образцовый шаг расчета.

Если Ts не задан, он принят, чтобы быть:

  • -1 — Если fcn_type является 'd' или 'cd'.

    Ts = -1 указывает на модель дискретного времени с неизвестным шагом расчета.

  • 0 — Если fcn_type является 'c'.

    Ts = 0 указывает на непрерывно-разовую модель.

Name,Value

Задайте дополнительные пары, разделенные запятой аргументов Name,Value, где Name является именем аргумента, и Value является соответствующим значением. Имя должно находиться внутри одинарных кавычек (' '). Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Используйте аргументы Name,Value, чтобы задать дополнительные свойства моделей idgrey во время образцового создания. Например, idgrey(odefun,parameters,fcn_type,'InputName','Voltage') создает модель idgrey с набором свойств InputName к Voltage.

Свойства

Свойства объектов idgrey включают:

A,B,C,D

Значения матриц пространства состояний.

  • A Матричный A состояния, Nx-by-Nx матрица, как возвращено функцией ОДУ, сопоставленной с моделью idgrey. Nx является количеством состояний.

  • B Матрица входа к состоянию B, Nx-by-Nu матрица, как возвращено функцией ОДУ, сопоставленной с моделью idgrey. Nu является количеством входных параметров, и Nx является количеством состояний.

  • C Состояние к выходной матрице C, Ny-by-Nx матрица, как возвращено функцией ОДУ, сопоставленной с моделью idgrey. Nx является количеством состояний, и Ny является количеством выходных параметров.

  • D Проходной матричный D, Ny-by-Nu матрица, как возвращено функцией ОДУ, сопоставленной с моделью idgrey. Ny является количеством выходных параметров, и Nu является количеством входных параметров.

Значения A,B,C,D возвращены функцией ОДУ, сопоставленной с моделью idgrey. Таким образом можно только считать эти матрицы; вы не можете установить их значения.

K

Значение матрицы воздействия состояния, K

K является Nx-by-Ny матрица, где Nx является количеством состояний, и Ny является количеством выходных параметров.

  • Если odefun параметризовал матрицу K, то K возвратил значение odefun. odefun параметризовал матрицу K, если это возвращает по крайней мере пять выходных параметров, и значение пятого вывода не содержит значения NaN.

  • Если odefun не параметризовал матрицу K, то K является нулевой матрицей размера Nx-by-Ny. Nx является количеством состояний, и Ny является количеством выходных параметров. Значение обработано как фиксированное значение матрицы K во время оценки. Чтобы сделать значение допускающим оценку, используйте опцию оценки DisturbanceModel.

  • Независимо от того, параметризована ли матрица K odefun или нет, можно установить значение свойства K явным образом как Nx-by-Ny матрица. Nx является количеством состояний, и Ny является количеством выходных параметров. Заданное значение обработано как фиксированное значение матрицы K во время оценки. Чтобы сделать значение допускающим оценку, используйте опцию оценки DisturbanceModel.

Чтобы создать набор опции оценки для моделей idgrey, используйте greyestOptions.

StateName

Имена состояния, заданные как одно из следующего:

  • Вектор символов — Для моделей первого порядка, например, 'velocity'.

  • Массив ячеек из символьных векторов Модели For с двумя или больше состояниями

  • '' — Для состояний без имени.

Значение по умолчанию: '' для всех состояний

StateUnit

Модули состояния, заданные как одно из следующего:

  • Вектор символов — Для моделей первого порядка, например, 'velocity'

  • Массив ячеек из символьных векторов Модели For с двумя или больше состояниями

  • '' — Для состояний без заданных модулей

Используйте StateUnit, чтобы отслеживать модули, в которых выражается каждое состояние. StateUnit не имеет никакого эффекта на поведение системы.

Значение по умолчанию: '' для всех состояний

Structure

Информация о допускающих оценку параметрах модели idgrey.

Structure хранит информацию относительно функции MATLAB, которая параметризовала модель idgrey.

  • Structure.Function — Имя или указатель на функцию функции MATLAB раньше создавали модель idgrey.

  • Structure.FunctionType — Указывает, параметризована ли модель в непрерывно-разовое, дискретное время или обоих.

  • Structure.Parameters — Информация о предполагаемых параметрах. Structure.Parameters содержит следующие поля:

    • Значение Значения параметров. Например, sys.Structure.Parameters(2).Value содержит начальные значения или ориентировочные стоимости второго параметра.

      NaN представляет неизвестные значения параметров.

    • Minimum — Минимальное значение, которое параметр может принять во время оценки. Например, sys.Structure.Parameters(1).Minimum = 0 ограничивает первый параметр быть больше, чем или равным нулю.

    • Maximum — Максимальное значение, которое параметр может принять во время оценки.

    • Free — Булево значение, задающее, является ли параметр допускающим оценку. Если вы хотите зафиксировать значение параметра во время оценки, установите Free = false для соответствующей записи.

    • Шкала Шкала значения параметра. Scale не используется по оценке.

    • Информация Массив структур для хранения модулей параметра и меток. Структура имеет поля Label и Unit.

      Задайте модули параметра и метки как векторы символов. Например, 'Time'.

  • Structure.ExtraArguments — Дополнительные входные параметры требуются функцией ОДУ.

  • Structure.StateName — Имена образцовых состояний.

  • Structure.StateUnit — Модули образцовых состояний.

NoiseVariance

Отклонение (ковариационная матрица) образцовых инноваций, e.

Идентифицированная модель включает белый, Гауссов шумовой компонент, e (t). NoiseVariance является отклонением этого шумового компонента. Как правило, образцовая функция оценки (такой как самая серая или pem) определяет это отклонение.

Для моделей SISO NoiseVariance является скаляром. Для моделей MIMO NoiseVariance является Ny-by-Ny матрица, где Ny является количеством выходных параметров в системе.

Report

Сводный отчет, который содержит информацию об опциях оценки и результатах, когда модель серого поля получена с помощью команды оценки greyest. Используйте Report, чтобы запросить модель для того, как он был оценен, включая:

  • Метод оценки

  • Опции оценки

  • Поисковые условия завершения

  • Совпадение данных оценки и другие метрики качества

Содержимое Report не важно, если модель была создана конструкцией.

odefun = 'motorDynamics';
m = idgrey(odefun,1,'cd',0.25,0);
m.Report.OptionsUsed
ans =

     []

Если вы получаете модель серого поля использование команд оценки, поля Report содержат информацию о данных об оценке, опциях и результатах.

load(fullfile(matlabroot,'toolbox','ident','iddemos','data','dcmotordata'));
data = iddata(y,u,0.1,'Name','DC-motor');
odefun = 'motorDynamics';
init_sys = idgrey('motorDynamics',1,'cd',0.25,0);
m = greyest(data,init_sys);
m.Report.OptionsUsed
InitialState: 'auto'
    DisturbanceModel: 'auto'
               Focus: 'prediction'
  EstimateCovariance: 1
             Display: 'off'
         InputOffset: []
        OutputOffset: []
      Regularization: [1x1 struct]
        OutputWeight: []
        SearchMethod: 'auto'
       SearchOptions: [1x1 idoptions.search.identsolver]
            Advanced: [1x1 struct]

Report является свойством только для чтения.

Для получения дополнительной информации об этом свойстве и как использовать его, смотрите раздел Output Arguments соответствующей страницы с описанием команды оценки и Отчета Оценки.

InputDelay

Введите задержку каждого входного канала, заданного как скалярное значение или числовой вектор. Для непрерывно-разовых систем задайте входные задержки единицы измерения времени, сохраненной в свойстве TimeUnit. Для систем дискретного времени задайте входные задержки целочисленных множителей шага расчета Ts. Например, InputDelay = 3 означает задержку трех шагов расчета.

Для системы с входными параметрами Nu, набор InputDelay к Nu-by-1 вектор. Каждая запись этого вектора является численным значением, которое представляет входную задержку соответствующего входного канала.

Можно также установить InputDelay на скалярное значение применять ту же задержку со всеми каналами.

Значение по умолчанию: 0

OutputDelay

Выведите задержки.

Для идентифицированных систем, как idgrey, OutputDelay фиксируется, чтобы обнулить.

Ts

'SampleTime' .

Для непрерывно-разовых моделей, Ts = 0. Для моделей дискретного времени Ts является положительной скалярной величиной, представляющей шаг расчета, выраженный в модуле, заданном свойством TimeUnit модели. Чтобы обозначить модель дискретного времени с незаданным шагом расчета, установите Ts = -1.

Изменение этого свойства не дискретизирует или передискретизирует модель.

Для моделей idgrey нет никакого уникального значения по умолчанию для Ts. Ts зависит от значения fcn_type.

TimeUnit

Модули для переменной времени, шаг расчета Ts и любые задержки модели, заданной как одно из следующих значений:

  • 'nanoseconds'

  • 'microseconds'

  • 'milliseconds'

  • 'seconds'

  • 'minutes'

  • 'hours'

  • 'days'

  • 'weeks'

  • 'months'

  • 'years'

Изменение этого свойства не имеет никакого эффекта на другие свойства, и поэтому изменяет полное поведение системы. Используйте chgTimeUnit, чтобы преобразовать между единицами измерения времени, не изменяя поведение системы.

Значение по умолчанию: 'seconds'

InputName

Введите названия канала, заданные как одно из следующего:

  • Вектор символов — Для моделей одно входа, например, 'controls'.

  • Массив ячеек из символьных векторов Модели мультивхода For.

Также используйте автоматическое векторное расширение, чтобы присвоить входные имена для мультивходных моделей. Например, если sys является 2D входной моделью, введите:

sys.InputName = 'controls';

Входные имена автоматически расширяются до {'controls(1)';'controls(2)'}.

Когда вы оцениваете модель с помощью объекта iddata, data, программное обеспечение автоматически устанавливает InputName на data.InputName.

Можно использовать краткое обозначение u, чтобы относиться к свойству InputName. Например, sys.u эквивалентен sys.InputName.

Входные названия канала имеют несколько использования, включая:

  • Идентификация каналов на образцовом отображении и графиках

  • Извлечение подсистем систем MIMO

  • Определение точек контакта, когда взаимосвязанные модели

Значение по умолчанию: '' для всех входных каналов

InputUnit

Введите модули канала, заданные как одно из следующего:

  • Вектор символов — Для моделей одно входа, например, 'seconds'.

  • Массив ячеек из символьных векторов Модели мультивхода For.

Используйте InputUnit, чтобы отслеживать модули входного сигнала. InputUnit не имеет никакого эффекта на поведение системы.

Значение по умолчанию: '' для всех входных каналов

InputGroup

Введите группы канала. Свойство InputGroup позволяет вам присвоить входные каналы систем MIMO в группы и обратиться к каждой группе по наименованию. Задайте входные группы как структуру. В этой структуре имена полей являются названиями группы, и значения полей являются входными каналами, принадлежащими каждой группе. Например:

sys.InputGroup.controls = [1 2];
sys.InputGroup.noise = [3 5];

создает входные группы под названием controls и noise, которые включают входные каналы 1, 2 и 3, 5, соответственно. Можно затем извлечь подсистему от входных параметров controls до всего выходного использования:

sys(:,'controls')

Значение по умолчанию: Struct без полей

OutputName

Выведите названия канала, заданные как одно из следующего:

  • Вектор символов — Для моделей одно вывода. Например, 'measurements'.

  • Массив ячеек из символьных векторов For модели мультивывода.

Также используйте автоматическое векторное расширение, чтобы присвоить выходные имена для мультивыходных моделей. Например, если sys является 2D выходной моделью, введите:

sys.OutputName = 'measurements';

Выходные имена автоматически расширяются до {'measurements(1)';'measurements(2)'}.

Когда вы оцениваете модель с помощью объекта iddata, data, программное обеспечение автоматически устанавливает OutputName на data.OutputName.

Можно использовать краткое обозначение y, чтобы относиться к свойству OutputName. Например, sys.y эквивалентен sys.OutputName.

Выходные названия канала имеют несколько использования, включая:

  • Идентификация каналов на образцовом отображении и графиках

  • Извлечение подсистем систем MIMO

  • Определение точек контакта, когда взаимосвязанные модели

Значение по умолчанию: '' для всех выходных каналов

OutputUnit

Выведите модули канала, заданные как одно из следующего:

  • Вектор символов — Для моделей одно вывода. Например, 'seconds'.

  • Массив ячеек из символьных векторов For модели мультивывода.

Используйте OutputUnit, чтобы отслеживать модули выходного сигнала. OutputUnit не имеет никакого эффекта на поведение системы.

Значение по умолчанию: '' для всех выходных каналов

OutputGroup

Выведите группы канала. Свойство OutputGroup позволяет вам присвоить выходные каналы систем MIMO в группы и обратиться к каждой группе по наименованию. Задайте выходные группы как структуру. В этой структуре имена полей являются названиями группы, и значения полей являются выходными каналами, принадлежащими каждой группе. Например:

sys.OutputGroup.temperature = [1];
sys.InputGroup.measurement = [3 5];

создает выходные группы под названием temperature и measurement, которые включают выходные каналы 1, и 3, 5, соответственно. Можно затем извлечь подсистему от всех входных параметров до measurement использование выходных параметров:

sys('measurement',:)

Значение по умолчанию: Struct без полей

Name

Имя системы, заданное как вектор символов. Например, 'system_1'.

Значение по умолчанию: ''

Notes

Любой текст, который вы хотите сопоставить с системой, сохраненной как строка или массив ячеек из символьных векторов. Свойство хранит, какой бы ни тип данных вы обеспечиваете. Например, если sys1 и sys2 являются моделями динамической системы, можно установить их свойства Notes можно следующим образом:

sys1.Notes = "sys1 has a string.";
sys2.Notes = 'sys2 has a character vector.';
sys1.Notes
sys2.Notes
ans = 

    "sys1 has a string."


ans =

    'sys2 has a character vector.'

Значение по умолчанию: [0×1 string]

UserData

Любой тип данных вы хотите сопоставить с системой, заданной как любой тип данных MATLAB.

Значение по умолчанию: []

SamplingGrid

Выборка сетки для образцовых массивов, заданных как структура данных.

Для массивов идентифицированных линейных моделей (IDLTI), которые выведены путем выборки одной или нескольких независимых переменных, это дорожки свойства значения переменных, сопоставленные с каждой моделью. Эта информация появляется, когда вы отображаете или строите образцовый массив. Используйте эту информацию, чтобы проследить результаты до независимых переменных.

Установите имена полей структуры данных к именам переменных выборки. Установите значения полей к выбранным значениям переменных, сопоставленным с каждой моделью в массиве. Все переменные выборки должны быть числовыми и скаляр, оцененный, и все массивы выбранных значений должны совпадать с размерностями образцового массива.

Например, если вы собираете данные в различных рабочих точках системы, можно идентифицировать модель для каждой рабочей точки отдельно и затем сложить результаты вместе в массив единой системы. Можно пометить отдельные модели в массиве с информацией относительно рабочей точки:

nominal_engine_rpm = [1000 5000 10000];
sys.SamplingGrid = struct('rpm', nominal_engine_rpm)

где sys является массивом, содержащим три идентифицированных модели, полученные в rpms 1000, 5000 и 10000, соответственно.

Для образцовых массивов, сгенерированных путем линеаризации модели Simulink® в нескольких значениях параметров или рабочих точках, программное обеспечение заполняет SamplingGrid автоматически со значениями переменных, которые соответствуют каждой записи в массиве. Например, команды Simulink Control Design™ linearize и slLinearizer заполняют SamplingGrid таким образом.

Значение по умолчанию: []

Представлено до R2006a