MATLAB: Use the for or while looping to the series S=4*[sin(theata)/1 +sin(3thea​ta)/3+sin(​5theata)/5​+…..] ,,in the range 0

homework

S=4*[sin(theata)/1 +sin(3theata)/3+sin(5theata)/5+…..]

Best Answer

Try this version :
% theta=0:pi/30:pi;
theta=0:0.01:2*pi;
S=0;
tolerance=1e-6;
n=1;
r=6; % random
counter=1;
while r>tolerance
N1=norm(S);
S=S+sin(n*theta)/n;
N2=norm(S);
r=abs(N2-N1);
n=n+2;
counter=counter+1;
end
plot(theta,S);
axis([0 4 0 1])
grid on
Now it approximates well the rectangle, the number of iterations is saved in the variable 'counter', finish the code with the desired prints .
To conclude you work, there a special name of the infinitesimal waves nears the edges , that phenomenon has a special name , it starts with G.....