Набор опций для sim
opt = simOptions;
Создайте набор опций для sim установка следующих опций.
Нулевые начальные условия
Входное смещение 5 для второго входа модели с двумя входами
opt = simOptions('InitialCondition','z','InputOffset',[0; 5]);
Создайте данные шума для симуляции с 500 входные данные и два выхода.
noiseData = randn(500,2);
Создайте набор опций по умолчанию.
opt = simOptions;
Измените набор опций, чтобы добавить данные о шуме.
opt.AddNoise = true; opt.NoiseData = noiseData;
Используйте исторические данные ввода-вывода в качестве прокси для начальных условий при симуляции модели.
Загрузите набор данных с двумя входами и одним выходом.
load iddata7 z7
Идентифицируйте модель пространства состояний пятого порядка с помощью данных.
sys = n4sid(z7, 5);
Разделите набор данных на две части.
zA = z7(1:15); zB = z7(16:end);
Симулируйте модель с помощью входного сигнала в zB.
uSim = zB;
Симуляция требует начальных условий. The значений сигналов in zA являются ли историческими данными, то есть они являются входными и выходными значениями за время, непосредственно предшествующее данным в zB. Использование zA в качестве прокси для необходимых начальных условий.
IO = struct('Input',zA.InputData,'Output',zA.OutputData); opt = simOptions('InitialCondition',IO);
Симулируйте модель.
ysim = sim(sys,uSim,opt);
Чтобы понять, как прошлые данные отображаются в начальные состояния модели, см. «Понимание использования исторических данных для симуляции модели».
Загрузите и постройте график данных.
load iddata1ic z1i plot(z1i)

Исследуйте начальное значение выходных данных y(1).
ystart = z1i.y(1)
ystart = -3.0491
Измеренный выход не начинается с 0.
Оцените передаточную функцию второго порядка sys и верните предполагаемое начальное условие ic.
[sys,ic] = tfest(z1i,2,1); ic
ic =
initialCondition with properties:
A: [2x2 double]
X0: [2x1 double]
C: [0.2957 5.2441]
Ts: 0
ic является initialCondition объект, который инкапсулирует свободный ответ sys, в форме пространство состояний, в вектор начального состояния в X0.
Моделируйте sys использование данных оценки, но без включения начальных условий. Постройте график моделируемого выхода с измеренным выходом.
y_no_ic = sim(sys,z1i); plot(y_no_ic,z1i) legend('Model Response','Output Data')

Измеренные и моделируемые выходы не согласуются в начале симуляции.
Включите начальное условие в simOptions набор опций.
opt = simOptions('InitialCondition',ic); y_ic = sim(sys,z1i,opt); plot(y_ic,z1i) legend('Model Response','Output Data')

Симуляция объединяет реакцию модели на входной сигнал со свободной реакцией на начальное условие. Измеренные и моделируемые выходы теперь лучше согласуются в начале симуляции. Это начальное условие действительно только для данных оценки z1i.
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
'AddNoise',true','InputOffset',[5;0] добавляет к модели отклика Гауссов белый шум по умолчанию и задает вход смещение 5 для первого из двух входов модели.'InitialCondition' - Начальные условия симуляции[] (по умолчанию) | вектор-столбец | матрица | initialCondition возразите | объектный массив | структура | массив структур | 'model'Начальные условия симуляции, заданные как одно из следующего:
'z' - Нулевые начальные условия.
Численный вектор-столбец начальных состояний с длиной, равной порядку модели.
Для мультиэксперентных данных задайте матрицу с Ne столбцами, где Ne - количество экспериментов, чтобы сконфигурировать начальные условия отдельно для каждого эксперимента. В противном случае используйте вектор-столбец, чтобы задать одинаковые начальные условия для всех экспериментов.
Используйте эту опцию для моделей пространства состояний (idss и idgrey) только.
initialCondition объект - initialCondition объект, который представляет модель свободной реакции системы на начальные условия. Для мультиэксперентных данных задайте 1-байт- Ne массив объектов, где Ne количество экспериментов.
Используйте эту опцию только для линейных моделей. Для получения примера смотрите Получение и применение предполагаемых начальных условий.
Структура со следующими полями, которые содержат исторические входные и выходные значения для временного интервала непосредственно перед временем запуска данных, используемых в симуляции:
| Область | Описание |
|---|---|
Input | История входов, заданная как матрица с Nu столбцами, где Nu - количество входных каналов. Для моделей timeseries используйте []. Количество строк должно быть больше или равно порядку модели. |
Output | Выход, заданная как матрица с Ny столбцами, где Ny - количество выходных каналов. Количество строк должно быть больше или равно порядку модели. |
Для получения примера смотрите Использование исторических данных для определения начальных условий для симуляции модели.
Для мультиэксперентных данных сконфигурируйте начальные условия отдельно для каждого эксперимента, задав InitialCondition как массив структур с Ne элементами. Чтобы задать одинаковые начальные условия для всех экспериментов, используйте одну структуру.
Программное обеспечение использует data2state для сопоставления исторических данных с состояниями. Если ваша модель не idss, idgrey, idnlgrey, или idnlarxпрограммное обеспечение сначала преобразует модель в представление пространства состояний, а затем преобразует данные в состояния. Если преобразование вашей модели в idss невозможно, предполагаемые состояния возвращаются пустыми.
'model' - Используйте эту опцию для idnlgrey только модели. Программа устанавливает начальные состояния на значения, заданные в sys.InitialStates свойство модели sys.
[] - Соответствует нулевым начальным условиям для всех моделей, кроме idnlgrey. Для idnlgrey модели, программное обеспечение обрабатывает [] как 'model' и задает начальные состояния следующим sys.InitialStates.
'X0Covariance' - Ковариация вектора начальных состояний[] (по умолчанию) | матрицаКовариация вектора начальных состояний, заданная как одно из следующего:
Положительно определенная матрица размера Nx -by - Nx, где Nx - порядок модели.
Для мультиэксперентных данных задайте как Nx -by- Nx -by- Ne матрицу, где Ne - количество экспериментов.
[] - Отсутствие неопределенности в начальных состояниях.
Используйте эту опцию только для моделей пространства состояний (idss и idgrey) когда 'InitialCondition' задается как вектор-столбец. Используйте эту опцию для расчета неопределенности начального условия при вычислении стандартного отклонения симулированного отклика модели.
'InputOffset' - Смещение входного сигнала[] (по умолчанию) | вектор-столбец | матрицаСмещение входного сигнала, заданное как вектор-столбец длины Nu. Использование [] если нет входных смещений. Каждый элемент InputOffset вычитается из соответствующих входных данных перед использованием входов для симуляции модели.
Для мультиэксперентных данных задайте InputOffset как:
Матрица Nu -by Ne, чтобы задать смещения отдельно для каждого эксперимента.
Для применения того же смещения ко всем экспериментам Nu вектора-столбца длины.
'OutputOffset' - Смещение выходного сигнала[] (по умолчанию) | вектор-столбец | матрицаСмещение выходного сигнала, заданное как вектор-столбец длины Ny. Использование [] если нет выходных смещений. Каждый элемент OutputOffset добавляется к соответствующему моделируемому выходному отклику модели.
Для мультиэксперентных данных задайте OutputOffset как:
Матрица Ny -by Ne, чтобы задать смещения отдельно для каждого эксперимента.
Для применения того же смещения ко всем экспериментам Ny вектора-столбца длины.
'AddNoise' - Переключатель сложения шумаfalse (по умолчанию) | trueСложение шума, заданный как логическое значение, указывающее, добавлять ли шум в модель отклика.
'NoiseData' - Данные о сигнале шума[] (по умолчанию) | матрица | массив ячеек матрицДанные о сигнале шума, заданные как одно из следующего:
[] - Гауссов белый шум по умолчанию.
Матрица с Ns строками и Ny столбцами, где Ns - количество выборок входных данных, и Ny - количество выходов. Каждая матричная запись масштабируется согласно NoiseVariance свойство моделируемой модели и добавлено к соответствующей выходной точке данных. Как задать NoiseData на уровне, который согласован с моделью, используйте белый шум с нулем среднего и матрицей модуля ковариации.
Массив ячеек из Ne матриц, где Ne - количество экспериментов для мультиэксперенциальных данных. Используйте массив ячеек, чтобы задать NoiseData отдельно для каждого эксперимента, в противном случае установите один и тот же сигнал шума для всех экспериментов с помощью матрицы.
NoiseData - сигнал шума, e (t), для модели
Здесь G передаточная функция от входа, u (t), до выхода, y (t), и H является передаточной функцией шума.
NoiseData используется для симуляции только тогда, когда AddNoise является true.
opt - Набор опций для sim командаsimOptions набор опцийНабор опций для sim команда, возвращенная как simOptions набор опций.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.