How ı plot the piecewise function
1 view (last 30 days)
Show older comments
Hi my main problem is i have a function f(t)=A , t1<t<t2
f(t)=0 , otherwise
t1=2 t2=6 A=2 how can ı plot this function
0 Comments
Answers (2)
Star Strider
on 19 Dec 2018
Try this:
A = 2;
f = @(t, t1, t2) A.*((t1 < t) & (t < t2)); % Use ‘Logical Indexing’
t = linspace(0, 10);
t1 = 2;
t2 = 6;
figure
plot(t, f(t, t1, t2))
grid
4 Comments
madhan ravi
on 19 Dec 2018
This answer clearly works but you have defined some file as plot.m please change it or rename it
Star Strider
on 19 Dec 2018
As a work-around (until you re-name your script), try this:
A = 2;
f = @(t, t1, t2) A.*((t1 < t) & (t < t2)); % Use ‘Logical Indexing’
t1 = 2;
t2 = 6;
figure
fplot(@(t) f(t, t1, t2), [0 10])
grid
That should run without error.
madhan ravi
on 19 Dec 2018
Another possible approach:
A = 2;
t1=2;
t2=6;
syms t
f = piecewise(t>t1 & t<t2,A,0) ;
fplot(f,[0 10]) % 0 to 10 represent the domain of the function
2 Comments
madhan ravi
on 19 Dec 2018
type ver in command window , suspect you don't have symbolic math toolbox
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!