Я пытаюсь построить величину сложной функции в MATLAB.

Это мой код до сих пор:

sigma = -8:0.1:0;
omega = -10:0.1:10;

[x,y] = meshgrid(sigma, omega);

s = x + y*j;

zz = (5^2)./(s.^2 + 2*0.4*5.*s + 5^2);
xx = real(s);
yy = imag(s);
surf(xx,yy,zz);

Я получаю сообщение об ошибке, что не могу использовать сложную переменную в функции surf. Я знаю, что проблема в переменной zz, но я не знаю, как найти величину сложной функции. Вот именно то, что я пытаюсь сделать: http://i.imgur.com/Y6Rw8y6.png


person Josh    schedule 10.04.2014    source источник


Ответы (1)


Используйте abs, чтобы получить модуль комплексного числа.

zz = (5^2)./(s.^2 + 2*0.4*5.*s + 5^2);
xx = real(s);
yy =imag(s);
surf(xx,yy,abs(zz));
person David    schedule 10.04.2014