How ı plot the piecewise function
Afficher commentaires plus anciens
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
Réponses (2)
Star Strider
le 19 Déc 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 commentaires
can evkuran
le 19 Déc 2018
Star Strider
le 19 Déc 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
le 19 Déc 2018
This answer clearly works but you have defined some file as plot.m please change it or rename it
Star Strider
le 19 Déc 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
le 19 Déc 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 commentaires
can evkuran
le 19 Déc 2018
madhan ravi
le 19 Déc 2018
type ver in command window , suspect you don't have symbolic math toolbox
Catégories
En savoir plus sur Spline Postprocessing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
