Plotting multiple piecewise functions onto the same graph
14 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Star Strider
2019-8-21
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 个评论
Star Strider
2019-8-22
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!