diffrent plots if I add the command assume (0<=t) why ?

3 views (last 30 days)
so I want to get laplace transform of f(t)=cos(12t)*exp(-0.4t). the strange this is that if add the command : assume (0<=t) I get the right laplace transform but the plot of f(t) is not starting from zero ,but insted start from -20 . hot to fix this problem ?
clc;clear all;
syms t
assume(0<=t);
f_t3 = piecewise(0<=t,cos(12*t)*exp(-0.4*t));
f_s3=laplace(f_t3);
pretty(f_s3)
fplot(f_t3,[-20 20]);
but if I write the same code but with out assume(0<=t) I get the right plot but not the right laplce transform of f(t) .
clc;clear all;
syms t
f_t3 = piecewise(t<0,0,0<=t,cos(12*t)*exp(-0.4*t));
f_s3=laplace(f_t3);
pretty(f_s3)
fplot(f_t3,[-20 20]);

Answers (2)

Walter Roberson
Walter Roberson on 23 Jul 2022
assume(0<=t);
You solemnly swear that t will never be complex or negative
fplot(f_t3,[-20 20]);
but you make t negative down to -20 anyhow.
  2 Comments

Sign in to comment.


Paul
Paul on 23 Jul 2022
I suggest getting in the habit of using heaviside for problems like this
syms t
f_t3 = cos(12*t)*exp(-0.4*t)*heaviside(t);
f_s3=laplace(f_t3)
f_s3 = 
fplot(f_t3,[-20 20]);

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!