exponenta event banner

simOptions

Набор опций для sim

Описание

пример

opt = simOptions создает набор опций по умолчанию для sim.

пример

opt = simOptions(Name,Value) создает набор опций с опциями, заданными одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

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;

Для моделирования требуются начальные условия. Значения сигнала в 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)

Figure contains 2 axes. Axes 1 with title y1 contains an object of type line. This object represents z1i. Axes 2 with title u1 contains an object of type line. This object represents 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, в форме state-space, к вектору начального состояния в X0.

Моделировать sys использование оценочных данных, но без учета исходных условий. Постройте график смоделированного выходного сигнала с измеренным выходным сигналом.

y_no_ic = sim(sys,z1i);
plot(y_no_ic,z1i)
legend('Model Response','Output Data')

Figure contains 2 axes. Axes 1 with title y1 contains 2 objects of type line. These objects represent Model Response, Output Data. Axes 2 with title u1 contains an object of type line. This object represents Output Data.

Измеренные и смоделированные выходные данные не согласуются в начале моделирования.

Включить исходное условие в simOptions набор опций.

opt = simOptions('InitialCondition',ic);
y_ic = sim(sys,z1i,opt);
plot(y_ic,z1i)
legend('Model Response','Output Data')

Figure contains 2 axes. Axes 1 with title y1 contains 2 objects of type line. These objects represent Model Response, Output Data. Axes 2 with title u1 contains an object of type line. This object represents Output Data.

Моделирование объединяет отклик модели на входной сигнал со свободным откликом на исходное условие. Измеренные и смоделированные результаты теперь лучше согласуются в начале моделирования. Это начальное условие действительно только для оценочных данных. z1i.

Входные аргументы

свернуть все

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'AddNoise',true','InputOffset',[5;0] добавляет в модель отклика белый шум Гаусса по умолчанию и задает входное смещение 5 для первого из двух входных данных модели.

Исходные условия моделирования, указанные как одно из следующих:

  • 'z' - Нулевые начальные условия.

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

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

    Используйте эту опцию для моделей пространства состояний (idss и idgrey) только.

  • initialCondition объект - initialCondition объект, представляющий модель свободной реакции системы на исходные условия. Для данных мультиэксперимента укажите 1-by-Ne массив объектов, где Ne - количество экспериментов.

    Эта опция используется только для линейных моделей. Пример см. в разделе Получение и применение расчетных начальных условий.

  • Структура со следующими полями, которые содержат исторические входные и выходные значения для временного интервала непосредственно перед начальным временем данных, используемых в моделировании:

    ОбластьОписание
    InputВходная история, заданная как матрица со столбцами Nu, где Nu - количество входных каналов. Для моделей временных рядов используйте []. Число строк должно быть больше или равно порядку модели.
    OutputИстория вывода, заданная как матрица со столбцами Ny, где Ny - количество выходных каналов. Число строк должно быть больше или равно порядку модели.

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

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

    Программное обеспечение использует data2state для сопоставления исторических данных с состояниями. Если модель отсутствует idss, idgrey, idnlgrey, или idnlarx, программное обеспечение сначала преобразует модель в ее представление состояния-пространства, а затем отображает данные в состояния. При преобразовании модели в idss невозможно, предполагаемые состояния возвращаются пустыми.

  • 'model' - Используйте этот параметр для idnlgrey только модели. Программа устанавливает начальные состояния в значения, указанные в sys.InitialStates свойство модели sys.

  • [] - Соответствует нулевым начальным условиям для всех моделей, кроме idnlgrey. Для idnlgrey модели, программное обеспечение обрабатывает [] как 'model' и определяет начальные состояния как sys.InitialStates.

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

  • Положительная определенная матрица размера Nx-by-Nx, где Nx - порядок модели.

    Для данных мультиэксперимента укажите в качестве матрицы Nx-by-Nx-by-Ne, где Ne - количество экспериментов.

  • [] - отсутствие неопределенности в начальных состояниях.

Используйте эту опцию только для моделей пространства состояний (idss и idgrey) когда 'InitialCondition' задается как вектор столбца. Эта опция используется для учета неопределенности начального условия при вычислении стандартного отклонения моделируемого отклика модели.

Смещение входного сигнала, определяемое как вектор столбца длиной Nu. Использовать [] при отсутствии входных смещений. Каждый элемент InputOffset вычитается из соответствующих входных данных перед использованием входных данных для моделирования модели.

Для многопериментных данных укажите InputOffset как:

  • Матрица Nu-by-Ne для установки смещений отдельно для каждого эксперимента.

  • Вектор столбца длиной Nu для применения одинакового смещения для всех экспериментов.

Смещение выходного сигнала, заданное как вектор столбца длиной Ny. Использовать [] при отсутствии выходных смещений. Каждый элемент OutputOffset добавляется к соответствующему моделируемому выходному отклику модели.

Для многопериментных данных укажите OutputOffset как:

  • Матрица Ny-by-Ne для установки смещений отдельно для каждого эксперимента.

  • Вектор столбца длиной Ny для применения одинакового смещения для всех экспериментов.

Переключатель добавления шума, заданный как логическое значение, указывающее, следует ли добавлять шум в модель отклика.

Данные шумового сигнала указаны как одно из следующих значений:

  • [] - гауссовский белый шум по умолчанию.

  • Матрица с строками Ns и столбцами Ny, где Ns - количество выборок входных данных, а Ny - количество выходов. Каждая запись матрицы масштабируется в соответствии с NoiseVariance свойство моделируемой модели и добавляется к соответствующей выходной точке данных. Установить NoiseData на уровне, который согласуется с моделью, используйте белый шум с нулевым средним и единичной ковариационной матрицей.

  • Массив ячеек матриц Ne, где Ne - количество экспериментов для данных мультиэксперимента. Используйте массив ячеек для установки NoiseData отдельно для каждого эксперимента, в противном случае установить один и тот же шумовой сигнал для всех экспериментов с использованием матрицы.

NoiseData - шумовой сигнал, e (t), для модели;

y (t) = Gu (t) + He (t).

Здесь G - передаточная функция от входа, u (t), к выходу, y (t), и H - передаточная функция шума.

NoiseData используется для моделирования только в том случае, если AddNoise является правдой.

Выходные аргументы

свернуть все

Набор опций для sim команда, возвращенная как simOptions набор опций.

См. также

Представлен в R2012a