I need help plotting this inverse Laplace Transform
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Caleb Truscott
am 12 Jan. 2022
Bearbeitet: Caleb Truscott
am 13 Jan. 2022
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 Kommentare
Caleb Truscott
am 12 Jan. 2022
Bearbeitet: Caleb Truscott
am 12 Jan. 2022
Akzeptierte Antwort
Paul
am 12 Jan. 2022
Replace all instances of pi with Pi, defined as
Pi = sym(pi);
which is a good habit to get into regardless.
Then you can stay in the sym world if you want and use fplot()
fplot(Xss,[0 10])
1 Kommentar
Caleb Truscott
am 13 Jan. 2022
Bearbeitet: Caleb Truscott
am 13 Jan. 2022
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!












