# how do i plot step response of a system using fourier transform?

조회 수: 11(최근 30일)
AAYUSH MARU 3 Apr 2020
댓글: AAYUSH MARU 4 Apr 2020
how do i plot step response here?
clc;
clear all;
syms t;
t= 0:0.001:10
G = tf([1], [1 0.9 5]);
[num,den] = tfdata(G);
syms s
G_sym = poly2sym(cell2mat(num),s)/poly2sym(cell2mat(den),s)
Y_four_sym = G_sym/s; % U(s) = 1/s for the unit step
y_time_sym = ifourier(Y_four_sym);
y_n = double(y_time_sym);
subplot(2,1,1)
plot(t,y_time_sym); % i am getting error over.. here tried using ezplot etc

댓글을 달려면 로그인하십시오.

### 답변(1개)

Birdman 3 Apr 2020
편집: Birdman 3 Apr 2020
If you are dealing with s domain, you need to use ilaplace. Try this:
syms t;
G = tf([1], [1 0.9 5]);
[num,den] = tfdata(G);
syms s
G_sym = poly2sym(cell2mat(num),s)/poly2sym(cell2mat(den),s)
Y_four_sym = G_sym/s; % U(s) = 1/s for the unit step
y_time_sym(t) = ilaplace(Y_four_sym,t);
t=0:0.001:10;
plot(t,y_time_sym(t));

#### 댓글 수: 2

AAYUSH MARU 4 Apr 2020
i want the answer in fourier domain as i am dealing with fourier domain!pls help
AAYUSH MARU 4 Apr 2020
clc;
clear all;
syms t;
G = tf([1], [1 0.9 5]);
[num,den] = tfdata(G);
syms s
G_sym = poly2sym(cell2mat(num),s)/poly2sym(cell2mat(den),s)
G_sym=subs(G_sym,s,0.1*1i)
Y_four_sym = G_sym/s; % U(s) = 1/s for the unit step
y_time_sym(t) = ilaplace(Y_four_sym,t);
t=0:0.001:10;
plot(t,y_time_sym(t));
i tried using this code! but it is not working i am getting straight line as output

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by