frdfun

Примените функцию к значению частотной характеристики на каждой частоте frd объект модели

Синтаксис

Описание

пример

fsys = frdfun(fun,sys) применяет функциональный fun к значению частотной характеристики на каждой частоте sys и собирает результаты в fsys.

Примеры

свернуть все

В данном примере создайте модель данных частотной характеристики путем вычисления ответа передаточной функции на сетке частот. В данном примере примите набор 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);

Входные параметры

свернуть все

Функция, которая будет применена к frd модель в виде функции MATLAB. Функциональный fun должен принять одну матрицу и возвратить скаляр, вектор или матрицу фиксированного размера через частоту.

Модель данных частотной характеристики в виде frd, genfrd, или ufrd объект модели. Когда вы задаете sys как genfrd или ufrd объект, frdfun преобразует его в frd возразите сначала прежде, чем применить функциональный fun.

Для получения дополнительной информации о моделях данных частотной характеристики смотрите frd.

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

свернуть все

Выведите модель данных частотной характеристики, возвращенную как frd объект модели. frdfun применяет функциональный fun к значению частотной характеристики на каждой частоте sys и собирает результаты в fsys.

Для получения дополнительной информации о моделях данных частотной характеристики смотрите frd.

Смотрите также

| |

Введенный в R2020a