Plotting multiple piecewise functions onto the same graph
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Margherita Carlon
am 21 Aug. 2019
Kommentiert: Star Strider
am 22 Aug. 2019
Hi!
I'm new to the program and i've been trying to plot two piecewise functions,
y(x) = piecewise(0<x<1.85, sin(523.26*pi*x), 1.85<x<3.7, 0, 3.7<x<5.55, sin(523.26*pi*x), 5.55<x<7.4, 0, 7.4<x<9.25, sin(523.26*pi*x));
and
y2(x) = piecewise(0<x<1.63, sin(463.08*pi*x), 1.63<x<3.26, 0, 3.26<x<4.89, sin(463.08*pi*x), 4.89<x<6.52, 0, 6.52<x<8.15, sin(463.08*pi*x));
onto the same graph, but i can't get the coding right. Would anyone be able to help?
Thank you so much in advance
2 Kommentare
Akzeptierte Antwort
Star Strider
am 21 Aug. 2019
I coded and ran ‘y1’ as:
y1 = @(x) ((0<x) & (x<1.85)).*sin(523.26*pi*x) + ((1.85<x) & (x<3.7)).*0 + ((3.7<x) & (x<5.55)).*sin(523.26*pi*x) + ((5.55<x) & (x<7.4)).*0 + ((7.4<x) & (x<9.25)).*sin(523.26*pi*x);
t = linspace(-5, 20, 500);
figure
plot(t, y1(t))
grid
Do the same for ‘y2’. Choose as many points as you want for ‘t’.
4 Kommentare
Star Strider
am 22 Aug. 2019
Change the third argument in the linspace function to change the number of points it creates. (The default number is 100.) See the documentation section on Vector with Specified Number of Values.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Annotations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!