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 как a genfrd или ufrd Объект (Robust Control Toolbox), frdfun преобразует его в frd возразите сначала прежде, чем применить функциональный fun.

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

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

свернуть все

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

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

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

| | (Robust Control Toolbox)

Введенный в R2020a