Примените функцию к значению частотной характеристики на каждой частоте frd
объект модели
В данном примере создайте модель данных частотной характеристики путем вычисления ответа передаточной функции на сетке частот. В данном примере примите набор 10 частот.
H = tf([-1.2,-2.4,-1.5],[1,20,9.1]); w = logspace(-2,3,10); sys = frd(H,w)
sys = Frequency(rad/s) Response ---------------- -------- 0.0100 -0.1648 + 9.847e-04i 0.0359 -0.1644 + 3.508e-03i 0.1292 -0.1597 + 1.130e-02i 0.4642 -0.1294 + 9.857e-03i 1.6681 -0.1058 - 7.515e-02i 5.9948 -0.1883 - 3.050e-01i 21.5443 -0.7004 - 5.495e-01i 77.4264 -1.1337 - 2.623e-01i 278.2559 -1.1946 - 7.725e-02i 1000.0000 -1.1996 - 2.159e-02i Continuous-time frequency response.
sys
данные о частотной характеристике SISO (frd
) модель, содержащая частотную характеристику на 10 частотах.
Используйте frdfun
команда, чтобы применить функциональный imag
на frd
модель sys
получить мнимые части частотной характеристики в зависимости от частоты.
sysImag = frdfun(@imag,sys)
sysImag = Frequency(rad/s) Response ---------------- -------- 0.0100 9.847e-04 0.0359 3.508e-03 0.1292 1.130e-02 0.4642 9.857e-03 1.6681 -7.515e-02 5.9948 -3.050e-01 21.5443 -5.495e-01 77.4264 -2.623e-01 278.2559 -7.725e-02 1000.0000 -2.159e-02 Continuous-time frequency response.
Можно также получить величину частотной характеристики sys
с abs
функция.
sysMag = frdfun(@abs,sys)
sysMag = Frequency(rad/s) Response ---------------- -------- 0.0100 0.1648 0.0359 0.1644 0.1292 0.1601 0.4642 0.1298 1.6681 0.1298 5.9948 0.3585 21.5443 0.8902 77.4264 1.1637 278.2559 1.1971 1000.0000 1.1998 Continuous-time frequency response.
В данном примере рассмотрите 2x2 модель sys
частотной характеристики MIMO это содержит 100 тестовых частот для каждой пары ввода-вывода.
Загрузите frd
объект sys
из MAT-файла frdModelMIMO.mat
.
load('frdModelMIMO.mat','sys') size(sys)
FRD model with 2 outputs, 2 inputs, and 100 frequency points.
Задайте функцию, чтобы вычислить величину частотной характеристики второй пары ввода-вывода в sys
.
fun = @(h) abs(h(2,2));
Используйте frdfun
команда, чтобы применить функциональный fun
к определенной паре ввода-вывода в sys
.
fsys = frdfun(fun,sys);
fun
— Функция, которая будет применена к frd
модельФункция, которая будет применена к frd
модель в виде функции MATLAB. Функциональный fun
должен принять одну матрицу и возвратить скаляр, вектор или матрицу фиксированного размера через частоту.
sys
— Модель данных частотной характеристикиfrd
объект модели | genfrd
объект модели | ufrd
объект моделиМодель данных частотной характеристики в виде frd
, genfrd
, или ufrd
объект модели. Когда вы задаете sys
как a genfrd
или ufrd
Объект (Robust Control Toolbox), frdfun
преобразует его в frd
возразите сначала прежде, чем применить функциональный fun
.
Для получения дополнительной информации о моделях данных частотной характеристики смотрите frd
.
fsys
— Выведите модель данных частотной характеристикиfrd
объект моделиВыведите модель данных частотной характеристики, возвращенную как frd
объект модели. frdfun
применяет функциональный fun
к значению частотной характеристики на каждой частоте sys
и собирает результаты в fsys
.
Для получения дополнительной информации о моделях данных частотной характеристики смотрите frd
.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.