Набор опций для sim
opt = simOptions;
Создайте набор опции для sim
определение следующих опций.
Нулевые начальные условия
Введите смещение 5 для второго входа 2D входной модели
opt = simOptions('InitialCondition','z','InputOffset',[0; 5]);
Создайте шумовые данные для симуляции с 500
выборки входных данных и два выходных параметров.
noiseData = randn(500,2);
Создайте набор опции по умолчанию.
opt = simOptions;
Измените набор опции, чтобы добавить шумовые данные.
opt.AddNoise = true; opt.NoiseData = noiseData;
Используйте исторические данные ввода - вывода в качестве прокси для начальных условий при симуляции модели.
Загрузите 2D вход, набор данных с одним выходом.
load iddata7 z7
Идентифицируйте модель в пространстве состояний пятого порядка с помощью данных.
sys = n4sid(z7, 5);
Разделите набор данных в две части.
zA = z7(1:15); zB = z7(16:end);
Симулируйте модель с помощью входного сигнала в zB
.
uSim = zB;
Симуляция требует начальных условий. Значения сигналов в 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
верно.
opt
Набор опций для sim
командаsimOptions
опция установленаНабор опции для sim
команда, возвращенная как a simOptions
опция установлена.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.