I need help plotting this inverse Laplace Transform
Show older comments
I am trying to plot an inverse Laplace transform of a function but I keep getting the error "Error using plot. Data must be numeric, datetime, duration or an array convertible to double."
Below is my code:
m=1;
c=6;
k=6;
G = 100.*65.*9.81;
syms s pi t
f1=(1/((s^2+4*pi^2)*(m*s^2+c*s+k))); %first term
pf1=partfrac(f1,s);
f2=(1/(3*(s^2+(6*pi)^2)*(m*s^2+c*s+k))); %second term
pf2=partfrac(f2,s);
f3=(1/(5*(s^2+(10*pi)^2)*(m*s^2+c*s+k))); %third term
pf3=partfrac(f3,s);
f4=(1/(7*(s^2+(14*pi)^2)*(m*s^2+c*s+k))); %fourth term
pf4=partfrac(f4,s);
LF1=ilaplace(f1) %inverse laplace transform of first term
LF2=ilaplace(f2) %inverse laplace transform of second term
LF3=ilaplace(f3) %inverse laplace transform of third term
LF4=ilaplace(f4) %inverse laplace transform of fourth term
t = [0;0.1;10];
Xss = LF1 - LF2 + LF3 - LF4;
plot(t,Xss)
3 Comments
Xss = LF1 - LF2 + LF3 - LF4;
t_num = 0:0.1:10;
Xss_num = double(subs(Xss,t,t_num));
plot(t_num,Xss_num)
Caleb Truscott
on 12 Jan 2022
Edited: Caleb Truscott
on 12 Jan 2022
Don't use a sym variable name pi. Better is to use a sym constant, i.e., replace all uses of pi with
Pi = sym(pi);
comment out this line:
% t = 0:.1:10
Accepted Answer
More Answers (0)
Categories
Find more on Calculus in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!











