Возможности работы в режиме командной строки 


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



ЗНАЕТЕ ЛИ ВЫ?

Возможности работы в режиме командной строки



11акет System Identification располагает большим набором функций (команд), исполняемых из командной строки MATLAB и позволяю­щих, в принципе, решать задачи идентификации, не используя рас­смотренную программу графического интерфейса. Все функции (ко­манды) делятся на следующие группы:

• графического интерфейса;

• обработки и преобразования данных;

• отображения модели;

• непараметрического оценивания;

• параметрического оценивания;

 

• итерационного параметрического оценивания;

• задания структуры модели;

• изменения и уточнения структуры модели;

• выбора структуры модели;

• преобразования модели;

• извлечения информации о модели;

• проверки адекватности модели;

• прочие;

• демонстрации возможностей пакета.


Команды графического интерфейса

Данная группа содержит две команды: ident и midprefs.

Команда ident — команда открытия рассмотренного выше графиче­ского интерфейса пользователя. Она записывается в виде:

ident

ident(session, directory)

Команда открывает окно графического интерфейса. При второй фор­ме записи открытие интерфейса сопровождается загрузкой сессии из файла с именем session, находящегося в директории directory. При­меры:

ident('iddata1, sid')

ident(‘mydata,sid', '\matlab\data\cdplayer\')

Команда midprefs задает (изменяег) директорию для файла midprefs.mat, хранящего информацию о начальных параметрах графического ин­терфейса пользователя при его открытии. Пример:

midprefs('/home/l jung/mat1ab/')

Функции обработки и преобразования данных

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

Функция detrend

Функция detrend удаляет тренд из набора данных. Она используется в виде:

zd - detrend(z)

zd - detrend(z,o,brkp)

Ее аргументы: z — матрица исходных данных, в которой столбцы со­ответствуют векторам данных; o (по умолчанию 0) — параметр, оп­ределяющий порядок тренда (нулевой или первый); если аргумент brkp не определен, из вектора данных вычитается линейная функция, соответствующая тренду; если данный аргумент определен, из исход­ныхданных вычитается «ломаная линия» с точками разрыва произ­водной при элементах, номера которых содержатся в brkp (только для линейных трендов). Возвращаемая величина: zd — матрица преобра­зованных данных.

В следующем примере:

 

zd(:,1) = detrend(z(:,1),1,119);

zd(:,2) = detrend(z(:,2));

 

удаляется V-образный тренд из данных первого столбца с пиком на 119-м элементе и тренд нулевого порядка (постоянная составляю­щая) — для элементов второго столбца матрицы исходных данных.

 

Функция idfilt

 

zf = idfilt(z,ord,Wn)

[zf, thf] = idfilt(z,ord,Wn,hs)

 

возвращает данные, фильтрованные с помощью фильтра Баттерворта. Эта функция создает фильтр Баттерворта порядка ord и осуществляет фильтрацию данных (по столбцам) матрицы данных z = [у u]. Если аргумент hs не задан и Wn содержит только один элемент, создается фильтр низких частот (ФНЧ) с частотой среза Wn.

Если hs -'high', создается фильтр верхних частот (ФВЧ) с частотой среза Wn.

Если Wn - [Wnl Wnh], то есть является двухэлементным вектором, и аргумент hs не определен, создается полосовой фильтр (ПФ) с полосой пропускания от Wnl до Wnh. Если же в этом случае задан аргумент hs = 'stop', создается заграждающий полосовой фильтр. Порядок фильтра в этих случаях — 2*ord.

Отметим, что частоты Wnl и Wnh задаются в относительных единицах, в долях от так называемой частоты Найквиста, определяемой как ω= π/Т (или f = 1/2T), где Т — выбранный интервал дискретизации.

Возвращаемые величины: zf — матрица отфильтрованных данных, thf — описание созданного фильтра в так называемом тета-формате (см. ниже).

 

Функция idinput

Функция idinput в формах

u = idinput(N)

u =idinput(N,type,band,levels),

u = idinput(N,'sine',band,levels,auxvar)

генерирует входной идентифицирующий сигнал. Она создает несколько разновидностей входного сигнала, наиболее часто используемых в задачах идентификации при возможности организации активного эксперимента. Аргумент N задает количество значений сигнала. Строковая переменная type задает тип сигнала и может принимать значения (по умолчанию — 'rbs'):

• type = 'rs' — задание случайного гауссова сигнала;

• type - 'rbs' — задание случайного бинарного (двоичного) сигнала;

• type = ‘prbs' — задание псевдослучайного двоичного сигнала (ПСДС);

• type * 'sine' — задание полигармонического сигнала (в виде сум­мы синусоид).

Двухэлементный вектор-строка band * [wlow, whigh] задает диапазон частот сигнала (для сигналов типа 'rs', *rbs' и 'sine'), при этом wlow — нижняя частота, a whigh — верхняя частота (частоты задаются в долях от частоты Найквиста — см. выше). Белый шум, таким обра­зом, характеризуется значением band = [0, 1], которое является и значением по умолчанию.

Для сигнала типа ПСДС ('prbs') используется значение band = [twologp, М], при этом 1/М — длительность интервала постоянства сигнала, а значение 2^twologp-1 определяет период ПСДС. Макси­мальное значение периода соответствует twologp=18 (или twologp=0); в этом случае по умолчанию band = [0, 1].

Двухэлементный вектор levels - [minu. maxu] задает минимальный и максимальный уровни для сигналов типа 'rs1, 'rbs' и 'sine'. Для сигнала типа 'rs' величина minu имеет значение, равное математическому ожиданию минус среднее квадратическое (или стандартное) отклонение, a maxu — математическому ожиданию плюс среднее квадратическое отклонение.

Для сигнала типа 'sine' возможно задание четвертого аргумента — auxvar = [no_of_sinusoids, no_of_trials], где no_of_sinusoids — число гармоник, образующих сигнал, a no_of_trials определяет, сколько итераций должно быть сделано, чтобы минимизировать амплитуду си­нала путем задания различным синусоидам произвольных начальных фаз. Значение но умолчанию — auxvar = [10, 10].

Возвращаемая величина — N-элементный вектор и.

Функция idresamp

Функция idresamp, записываемая в формах

zr = idresamp(z,R)

[zr,R_act] = idresamp(z,R,filter_order,tol)

выполняет преобразование сигнала путем изменения интервала его дискретизации.

Аргументы: z — матрица исходных данных (каждый столбец соответствует вектору данных), R — коэффициент изменения интервала дискретизации; при R>1 происходит прореживание исходного сигна­ла, при R<1 — его интерполяция. Допустимо любое положительное значение R, но оно будет заменено достигнутым приближением R_ act.


• filterorder — порядок фильтра, который будет использован для предварительной фильтрации исходного сигнала (по умолча­нию — 8);

• tol — допустимое относительное отклонение R_act от R. По умолчанию — 0.1.

Возвращаемые величины — матрица преобразованных сигналов тс и достигнутое значение R_act.

Функции отображения модели

 

Эта группа образована шестью функциями.

Функция bodeplot

bodeplot — функция отображения логарифмических частотных ха­рактеристик (диаграмма Боде):

hodeplot(g)

bodeplot(g1 g2... gn])

bodeplot(g,sd,C,mode)

Она имеет следующие аргументы:

• g, gl, g2,..., gn — имена оценок частотных характеристик;

• sd — при sd>0 к графикам добавляются соответствующие доверительные коридоры (по умолчанию sd=O);

• аргумент С задает выводимые характеристики:
o С = 'А' — выводится только график АЧХ;
o С = 'Р — выводится только график ФЧХ;
o С = 'В' — выводятся оба графика;

• для получения всех графиков на одной и той же диаграмме зада­ется mode = 'same'.

Возвращаются графики частотных характеристик с логарифмиче­скими масштабами для АЧХ и оси частот.

Функция ffplot

Функция ffplot имеет такое же назначение, как предыдущая. Запи­сывается в виде:

ffpiot(g)

ffplot([gl g2... gn])

ffplot(g,sd,C,mode)

Аргументы — как у предыдущей функции. Возвращаются графики частотных характеристик с логарифмическим масштабом для АЧХ, но линейным для оси частот (единицы частоты — Гц).


Функция idplot

 

Функция idplot графически отображает входные и выходные данные:

idplot(z)

idplot(z,int,T,ny,pc)

Аргументы функции:

• z =[у х] — матрица данных; первые столбцы соответствуют выхо­дам, последние — входам объекта;

• ny — количество выходов, по умолчанию nу =1;

• int — вектор-строка, задающий количество точек графика. По умолчанию выводятся все исходные данные;

• Т — интервал дискретизации (для задания правильного масштаба времени);

• рс — строковая переменная, определяющая вид представления входного сигнала (входных сигналов). При рс = 'рс' (значение по умолчанию) данный сигнал полагается кусочно-постоянным между моментами дискретизации, при рс = '11' — линейно изменяю­щимся.

Функция nyqplot

Функция nyqplot осуществляет построение годографа (диаграммы Найквиста):

nyqplot(g)

nyqplot([gl g2... gn])

nyqplot(g,sd,mode)

Аргументы g, gl, g2,..., gn, sd, mode — такие же, как у функции bodeplot.

Возвращается график АФХ (годограф).

Функция present

Функция present возвращает информацию о модели (представленной в так называемом тета-формате):

present(th)

Здесь th — имя (идентификатор) параметрической модели. Возвра­щаются коэффициенты полиномов модели вместе с их стандартны­ми отклонениями, значения функции потерь и критерия конечной ошибки прогноза, а также сообщение о методе оценивания модели.

Функция zpplot

Функция zpplot возвращает графическое изображение нулей и по­люсов моделей объекта:

zpplot(zepo)

zpplot(zpform(zepo1,zepo2,...,zepon))

zpplot (zepo, sd, mode, axis)

Аргументы этой функции:

• zepo — матрица, содержащая информацию о нулях и полюсах модели объекта и получаемая с помощью функции th2zp (см. ниже);

• zpform(zepol,zepo2,.-, zepon) — функция объединения информа­ции о нулях и полюсах нескольких моделей одного и того же объ­екта с одними и теми же входами;

• при sd>0 к нулям и полюсам добавляются соответствующие дове­рительные области (по умолчанию sd=0);

• нули и полюсы разных моделей представляются на одном и том же графике; для дискретных моделей на графике также изображается единичная окружность;

• Когда в zepo содержится информация о нескольких входах, характер отображения определяется строковой переменной mode. При mode = 'sub' открываются одновременно графики, относящиеся ко всем входам; при mode = 'same' информация представляется в од­
ном графическом окне, при этом переход от изображения нулей и полюсов для одного входа к изображению нулей и полюсов для другого входа производится при нажатии клавиши Enter; mode = ’sep' — то же, но предыдущий график убирается до обработки сле­дующего входа. По умолчанию mode = 'sub';

• axis = [xl x2 yl y2] — задает масштабы осей. Задание axis = m — то же самое, что и axis = [-m m -m m].



Поделиться:


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

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