Help recreating square wave from equation
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I need help recreating a square wave from the following equation:
Thanks!
0 个评论
采纳的回答
Sulaymon Eshkabilov
2021-5-24
编辑:Sulaymon Eshkabilov
2021-5-24
Hi,
IHere is the correct code:
t = ..
T = ..
n=1:2:15; % By increasing n = 1:2:25, you will get much better approximation.
U1 = sum((4/pi)*(1./n(:)).*sin(2*pi*n(:).*t/T));
figure
plot(t, U1, 'r')
Good luck.
3 个评论
Sulaymon Eshkabilov
2021-5-24
编辑:Sulaymon Eshkabilov
2021-5-24
Run this or you can increase more n end value:
n=1:2:75; % By increasing, you will get much better approximation
You can run and plot n=1 and n=1:2:75.
Note that the Gibbs phenomenon (ripples on both ends of the rectangle wave) will be present no matter how big the number of series. Study Gibbs phenomenon: https://en.wikipedia.org/wiki/Gibbs_phenomenon
Rectangle wave shown in your given mathworks source is obtained with square() builtin function that is different from this Fourier series approximation.
Good luck.
更多回答(1 个)
Sulaymon Eshkabilov
2021-5-24
Hi,
It is a quite straightforward exercise. You can create this signal using a colon operator (:), or [for .. end] or [while .. end] loop. Colon operator is the most efficient one.
Good luck.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!