Hello! while solving an exercise the if cycle is not working. Is anything wrong? Thanks
L=1; xfinal=L;u=[];x_inicial=0; dx=xfinal/20;x=x_inicial:dx:xfinal;t=0; dt=0.0001; t_max=1.1;c=zeros(1,length(x));c(((xfinal/dx)/2+1))=1;while t<t_max t=t+dt; for w=2:(length(x)-1) c(w)=c(w)+dt*((c(w+1)+c(w-1)-2*c(w))/(dx^2)); c(1)=0; c(length(x))=0; end if t==0.01||t==0.1||t==1 figure() plot(x,c) title(sprintf('L=%d and t_f=%1.1f',xfinal,t)) endend
Best Answer