nx=180; x=[0:1/nx:1]; dx=x(2)-x(1); x=[x 1+dx]; nx=size(x,2); f(:,1)=(sin(2*pi*x)); time(1)=0; dt=0.5*dx; nt=floor(1/dt+1); coef=dt/2/dx; for it=2:nt f(2:nx-1,it)=f(2:nx-1,it-1)-coef*(f(3:nx,it-1)-f(1:nx-2,it-1)); f(1,it)=f(nx-1,it);f(nx,it)=f(2,it); time(it)=time(it-1)+dt; endfor plot(x,f(:,1),"linewidth",2,x,f(:,nt),"-o","linewidth",2); xlabel ("x"); ylabel ("f"); axis ([0 1 -2 2]); legend ("exata","numerica");