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) создает линейную модель серого ящика идентифицируемыми параметрами, sysodefun задает пользовательскую функцию, которая связывает параметры модели, 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, idsstf , 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 имеет четыре параметра.

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

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

mG, и 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>0odefun возвращает матрицы, соответствующие системе дискретного времени. Выберите эту опцию, чтобы произвести вашу модель с помощью значений, возвращенных 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 соответствующее значение. Name должен появиться в одинарных кавычках (' 'Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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 возвратили значение odefunodefun параметрирует матрицу 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 содержит следующие поля:

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

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

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

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

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

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

    • Info — Массив структур для хранения модулей параметра и меток. Структура имеет 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- 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