Fourier Series in matlab with for loop

6 次查看(过去 30 天)
Hello, So I need to plot
with f_0 being constant 5000hz and t ranging 0 to 4 microseconds.
I have to cut the summation off after 1,2,3,4 and 5 iterations and store each in a vector, however I cannot even get the summation to work. I'm absolutely sure I'm doing it all wrong so if anyone could help me out I would appreciate it! Thanks!

回答(1 个)

Birdman
Birdman 2018-4-16

You do not need a for loop. If you have Symbolic Toolbox, the following code should do it:

syms f(t) n
k=5; %upper limit for series
f0=5000;
f(t)=symsum((4/((2*n-1)*pi))*sin(2*pi*n*f0.*t),n,1,k)
  2 个评论
Natalie Rolf
Natalie Rolf 2018-4-16
I have to use a for loop for this assignment unfortunately.
Birdman
Birdman 2018-4-16
res=0;
k=5;f0=5000;
syms t
for i=1:k
res=res+(4/((2*i-1)*pi))*sin(2*pi*i*f0.*t);
end
res=vpa(res,3)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Mathematics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by