adi

Download Adi

If you can't read please download the document

Upload: hassan-ben-touda

Post on 27-Jan-2016

4 views

Category:

Documents


1 download

DESCRIPTION

schema ADI sur matlab

TRANSCRIPT

Nx=5;Ny=5;h=1/(Nx+1);k=200;r=k/h^2;A=zeros(Nx*Ny,Nx*Ny);B=zeros(Nx*Ny,Nx*Ny);A=(1+r)*diag(ones(Nx*Ny,1))-r/2*diag(ones(Nx*Ny-1,1),1)-r/2*diag(ones(Nx*Ny-1,1),-1);for k=1:Ny-1; A(k*Nx,k*Nx+1)=0; A(k*Nx+1,k*Nx)=0;end;B=(1-r)*diag(ones(Nx*Ny,1))+r/2*diag(ones(Nx*Ny-Nx,1),Nx)+r/2*diag(ones(Nx*Ny-Nx,1),-Nx);c=zeros(Nx*Ny,1);for k=Nx*Ny-Nx+1:Nx*Ny; s=k-Nx*Ny-Nx; c(k)=sin(pi*h*s);end;D=zeros(Nx*Ny,Nx*Ny);E=zeros(Nx*Ny,Nx*Ny);D=(1+r)*diag(ones(Nx*Ny,1))-r/2*diag(ones(Nx*Ny-Nx,1),Nx)-r/2*diag(ones(Nx*Ny-Nx,1),-Nx);E=(1-r)*diag(ones(Nx*Ny,1))+r/2*diag(ones(Nx*Ny-1,1),1)+r/2*diag(ones(Nx*Ny-1,1),-1);for k=1:Ny-1; E(k*Nx,k*Nx+1)=0; E(k*Nx+1,k*Nx)=0;end;F=zeros(Nx*Ny,1);for k=Nx*Ny-Nx+1:Nx*Ny; s=k-Nx*Ny-Nx; F(k)=sin(pi*h*s);end;T=zeros(Nx*Ny,1);Told=T;it=0;r=1;epsilon=1e-5;itmax=100;while(r>epsilon)&&(it