A Computational Fluid Dynamics assignment need Matlab knowledge, only have 5 hours

profilePPPan
unsteady_heat_implicit.m

% 2D unsteady heat equation with forcing % Finite difference solution % Implicit backwards 1st order in time % Centred second order in space clear; h=0.01 kappa=.01 nh=1/h+1; resid_max=1.0e-6 T(1:nh,1:nh)=0.; rhs(1:nh,1:nh)=0.; Tn(1:nh,1:nh)=0.; omega=1.5 dt=1 for j=1:nh T(1,j)=0.; T(nh,j)=0.; end for i=1:nh T(i,1)=0.; T(i,nh)=0.; end for j=1:nh for i=1:nh x=(i-1)*h; y=(j-1)*h; x_r=(i-1)*h-0.5; y_r=(j-1)*h-0.5; r=sqrt(x_r^2+y_r^2); rhs(i,j)=exp((-r^2)/(0.01)); end end for n=1:5 t=clock; resid=1.; r_count=0; while resid > resid_max r_count=r_count+1; resid=0.; for i=2:nh-1 for j=2:nh-1 Tnew=(kappa*dt/h^2 * (Tn(i+1,j)+Tn(i-1,j)+Tn(i,j+1)+Tn(i,j-1))+dt*rhs(i,j)+T(i,j))... /(1.0+4.*kappa*dt/h^2); resid=resid+abs(Tnew-Tn(i,j)); Tn(i,j)=(Tnew-Tn(i,j))*omega+Tn(i,j); end end resid=resid/(nh-2)^2; r_count; if( round(r_count/20)*20 == r_count) r_count resid end end T=Tn; n end