How ı plot the piecewise function
Mostra commenti meno recenti
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
Risposte (2)
Star Strider
il 19 Dic 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 Commenti
can evkuran
il 19 Dic 2018
Star Strider
il 19 Dic 2018
You have apparently written your own script file and saved it as ‘plot.m’.
Re-name it to ‘myPlot.m’, or to something that does not overshadow plot, or any other MATLAB functions.
Then my code should run without error.
madhan ravi
il 19 Dic 2018
This answer clearly works but you have defined some file as plot.m please change it or rename it
Star Strider
il 19 Dic 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
il 19 Dic 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 Commenti
can evkuran
il 19 Dic 2018
madhan ravi
il 19 Dic 2018
type ver in command window , suspect you don't have symbolic math toolbox
Categorie
Scopri di più su Spline Postprocessing in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
