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

110 ビュー (過去 30 日間)
Fabian Wood
Fabian Wood 2018 年 4 月 24 日
コメント済み: Spencer Ignatieff 2020 年 6 月 3 日
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.

回答 (1 件)

Benjamin Großmann
Benjamin Großmann 2018 年 4 月 24 日
編集済み: Benjamin Großmann 2018 年 4 月 24 日
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);
  2 件のコメント
AAYUSH MARU
AAYUSH MARU 2020 年 4 月 3 日
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?
Spencer Ignatieff
Spencer Ignatieff 2020 年 6 月 3 日
%add anywhere after line 5
step(G)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCalculus についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by