% programita para la serie de senos y cosenos de f(x) = x % -L \le x \le L close all L = 2; letra=18; a0 = 0; margen = 0.1; for N = [1 3 5 10 25] n=[1:N]; a = zeros(size(n)); b = -(-1).^n .* (2*L) ./ (n*pi); x = [-L:0.01:L]; npix = pi*(n'*x)/L; fap = a0/2 + a * cos(npix) + b * sin(npix); f = x; M = max([f fap]); m = min([f fap]); plot(x,f,'r','LineWidth',2) hold on plot(x,fap,'m','LineWidth',2) plot([-L L],[0 0],'b',[0 0],[m M],'b') %title(sprintf('N = %d error = %.8f',N,max(abs(f-fap)))) axis([-L-margen L+margen m-margen M+margen]) set(gca,'FontSize', letra) filename=sprintf('fourier-x-N=%02d',N); print('-dpng',filename) print('-depsc2',filename) hold off pause end pause plot(x,f,'r',x,f,'m','LineWidth',2) hold on plot([-L L], [0 0], 'mo', 'MarkerEdgeColor','m','MarkerFaceColor','m', ... 'MarkerSize', 10) plot([-L L],[0 0],'b', [0 0],[m M],'b'); axis([-L-margen L+margen m-margen M+margen]) set(gca,'FontSize', letra) filename=sprintf('fourier-x-N=inf',N); print('-dpng',filename) print('-depsc2',filename) hold off pause ff = f; xx = x; for N = [25] n=[1:N]; a = zeros(size(n)); b = -(-1).^n .* (2*L) ./ (n*pi); x = [-3*L:0.01:3*L]; npix = pi*(n'*x)/L; fap = a0/2 + a * cos(npix) + b * sin(npix); f = x; M = max([f fap]); m = min([f fap]); plot(x,f,'r','LineWidth',2) hold on plot(x,fap,'m','LineWidth',2) plot([-3*L 3*L],[0 0],'b',[0 0],[m M],'b') % ejes set(gca,'FontSize', letra) filename=sprintf('fourier-x-N=%02d-3L',N); print('-dpng',filename) print('-depsc2',filename) hold off pause end pause plot(xx-2*L,ff,'m','LineWidth',2) hold on plot(xx,ff,'m','LineWidth',2) plot(xx+2*L,ff,'m','LineWidth',2) plot([-3*L:2*L:3*L], [0 0 0 0], 'mo', 'MarkerEdgeColor','m','MarkerFaceColor','m', ... 'MarkerSize', 10) plot([-3*L 3*L],[0 0],'b',[0 0],[m M],'b') % ejes axis([-3*L-margen 3*L+margen m-margen M+margen]) set(gca,'FontSize', letra) filename=sprintf('fourier-x-N=inf-3L'); print('-dpng',filename) print('-depsc2',filename)