MATLAB Answers

Deriving the time-domain response of an equation, from a tf

495 views (last 30 days)
Fabian Wood
Fabian Wood on 24 Apr 2018
Commented: AAYUSH MARU on 3 Apr 2020
So I have the code to create a transfer function, from which you can get the graph of the step response:
G = tf([1], [1 0.9 5]);
step(G);
Easy. However I can't find a way to perform an inverse Laplace transform on G, to get an actual equation.

  0 Comments

Sign in to comment.

Answers (1)

Benjamin Großmann
Benjamin Großmann on 24 Apr 2018
Edited: Benjamin Großmann on 24 Apr 2018
Try ilaplace. Before that you have to convert the tf object to sym object (from here ):
G = tf([1], [1 0.9 5]);
[num,den] = tfdata(G);
syms s
G_sym = poly2sym(cell2mat(num),s)/poly2sym(cell2mat(den),s)
You have to multiply the input in laplace domain to the transfer function to get the system response to a specific input in time domain:
Y_lap_sym = G_sym/s; % U(s) = 1/s for the unit step
y_time_sym = ilaplace(Y_lap_sym);

  1 Comment

AAYUSH MARU
AAYUSH MARU on 3 Apr 2020
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);
how to plot step response here?

Sign in to comment.

Sign in to answer this question.

Tags

Products


Translated by