Функции извлечения информации о модели 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Функции извлечения информации о модели



В данную группу входят следующие 6 функций:

• getmfth— возвращает имя m-файла, созданного функцией mf2th;

• getneap — возвращает количество данных эксперимента, использованных для оценивания модели;

• getff — возвращает значения АЧХ и ФЧХ для заданных частотного диапазона и модели в частотном формате;

• gett - возвращает значение интервала дискретизации, заданного для модели;

• getzp — возвращает значения нулей и полюсов модели из матрицы zepo-формата, созданной с применением функции th2zp;

• th2par — возвращает параметры модели исходя из ее тета-представления.

Для примера создадим ARX-модель 3-го порядка и выведем числовые значения ее нулей и полюсов:

» load dryer2 %3агрузка данных

» z = [y2 u2];

» th = arx(z,[3 2 1]); %Оценивание модели

» [zepo,k] = th2zp(th); %Формирование матрицы нулей и полюсов

» [ze,po] = getzp(zepo) %Вывод исловых значений

ze =

-16.1043

ро =

-0.8574

0.5719 + 0.3084i

0.5719 - 0.3084i

В выведенном результате ze — обозначение нуля, ро — полюсов.

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

Функции проверки адекватности модели

В данную группу входят следующие 5 функций.

Функция compare

Функция compare позволяет сравнить выходы модели и объекта:

compare(z,th);

[yh,fit] = compare(z,th,k,sampnr,leveladj)

Здесь используются следующие аргументы:

• z — матрица данных;

• th — имя модели в тета-формате;

• к — количество предыдущих значений выхода объекта y(t - k), используемых для прогноза по модели (по умолчанию не используются);

• sampnr — вектор-строка, элементы которого задают моменты времени, для которых будет строиться график;

• если leveladj = 'yes' то выходы как модели, так и объекта будут начинаться из нуля.

Возвращаемые величины:

• при использовании первой формы записи функции выводятся paфики выходов объекта и построенной модели;

• при второй форме записи выводятся числовые значения прогноза модели yh и оценка адекватности модели fit, рассчитываемая по формуле

fit = norm(yh - y)/sqrt(length(y)),

где norm — в данном случае обозначение нормы вектора, length — количество элементов вектора, sqrt — обозначение операции из­влечения квадратного корня.

 

Рассмотрим пример:

» load dryer2 %3aгрузка данных

» z = [y2 u2];

» ze = z(1:250,:); %Формирование выборки для оценивания модели

» zv = z(251:500,:); %Формирование выборки для проверки модели

» th=armax(ze,[2 3 10]); %Оценивание ARX

» compare(zv,th,6); %Сравнение выходов модели и объекта

Здесь в качестве выхода объекта, с которым производится сравнение выхода модели, использована часть исходных данных — zv. Результат сравнения отображает рис.


 


Функция idsim

Функция idsim возвращает выход модели тета-формата:

у = idsim([u e],th)

[у, ysd] = idsim(u,th)

Здесь:

• u — вектор значений входного сигнала (матрица входных сигналов в случае многомерного объекта);

• е — вектор значений шума (если не задан, принимается равным нулю);

• th — модель в тета-формате. Возвращаемые величины:


• y — выход модели при зданном входе;

• ysd — соответствующие стандартные отклонения.

Функция ре

Функция ре прогнозирует ошибку модели при заданном входе и из­вестном выходе объекта:

е = pe(z,th)

Здесь:

• z — матрица данных формата z = [у и];

• th — модель тета-формата;

• е — возвращаемый вектор значений ошибки, вычисляемых по формуле

e(t) = H-1(z)[y(t) - W(z)u(t)]

Функция predict

Функция predict осуществляет прогноз выхода объекта по его тета-модели и с учетом информации о предыдущих фактических значе­ниях выхода (рекомендована для расчета прогноза значений времен­ной последовательности):

ур = predict(z,th)

[yp,thpred] = predict(z,th,k)

Аргументы z и th здесь те же, что и для предыдущей функции, к — количество используемых при прогнозе предшествующих фактических значений выхода, по умолчанию к=1.

Возвращаемые величины:

• ур — прогнозируемые значения;

• thpred — прогнозирующее звено в тета-формате.

Функция resid

Функция resid вычисляет остаточную ошибку для заданной модели и соответствующие корреляционные функции:

[е,г] = resid(z,th)

[е,г] = resid(z,th,M,maxsize)

resid(r)

Аргументы z, th, maxsize описаны ранее. Аргумент М задает число значений аргумента при расчете корреляционных функций.

Возвращаемые величины: е — вектор остаточных ошибок модели, r— матрица значений АКФ процесса e(t) и значений ВКФ между остаточными ошибками и входами вместе с соответствующими 99%-ми доверительными интервалами. Кроме возврата указанных значений выводятся графики данных функций. График может быть выведен повторно вызовом функции в форме resid(r).

Для примера проведем оценивание ARX-модели 3-го порядка с последующим использованием рассматриваемой функции:

» load dryer2 %3aгрузка данных

» z = [y2 u2];

» th = arx(z,[3 2 1]); %Оценивание ARX-модели

» [e,r] = resid(z,th) %Расчет остаточной ошибки и вывод графиков АКФ и ВКФ

е =

0.1374

-0.1775

0.0344

0.0152

....

Здесь из соображений экономии приведены только несколько первых рассчитанных значений остаточных ошибок модели. Графики соответствующих АКФ и ВКФ представлены на рис.

Прочие функции

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

• Функция auxvar возвращает информацию о вспомогательных переменных iterjinfo, lim, maxiter, maxsize, tol и Т. Для получения более подробной информации используйте команду

help auxvar

• Функция freqfunc возвращает информацию об описании модели в частотном формате. Для получения более подробной информации используйте команду

help freqfunc

• Функция idsimsd иллюстрирует неопределенность в моделировании выхода тета-модели:

idsimsd(u,th)

idsimsd(u,th,N,noise)

Функция возвращает график выходов N моделей (N по умолчанию равно 10) при заданных входе u и тета-модели th. Коэффициенты отмеченных моделей задаются случайно в соответствии с матрицей ковариаций тета-модели. Если noise='noise', то в модель вводится моделируемый шум наблюдений. При noise = 'nonoise' шум отсутствует.

• Функция nuderst задает шаг численного дифференцирования, используемый, в частности, в функциях th2ff и th2zp:

nds = nuderst(pars)

где:

о pars — коэффициенты, вектор-строка;

o nds: - вектор-строка, k-й элемент которого представляет собой за­даваемый шаг вариации k -го коэффициента.

• Функция theta возвращает информацию о тета-формате модели

Для получения более подробной информации используйте команду

help theta



Поделиться:


Последнее изменение этой страницы: 2017-02-10; просмотров: 88; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.116.159 (0.015 с.)