# FVM Method For 1D Convection Diffusion Problem Using 5 Control volumes with spacing of 0.2

9 views (last 30 days)
Rajat Powade on 30 Aug 2021

Hello sir, I solved FVM method for 1D convection Diffusion problem with 5 Control Volumes and with a spacing of 0.2,and velocity of 0.1 but the results i am getting is not up to the mark please guide me. I am attaching problem with my code clc; clear all;

phia=1; %Boundary Conditions phib=0; %Boundary Conditions gamma=0.1 L=1; %Length of a bar nx=5; %No. of subdomains dx=L/nx; %finite volume length phi=zeros(nx+2,1); u=0.1; rho=1; D=gamma/dx; F=rho*u; tolearnce=1e-4; error=1; phi(1,1)=phia; phi(7,1)=phib; iter=0; x=0:dx:nx; p= rho*u*nx/gamma phi_exact = phia + (phib-phia).*(exp(p.*x/nx) - 1)./(exp(p) - 1); while error>tolearnce phi_old=phi; iter=iter+1; for i=2 a_E=F/2+D; a_W=0; Spa=-(2*D+F); Sua=(2*D+F)*phia; a_P=a_E+a_W-Spa; phi(i,1)=(a_E*phi(i+1) + a_W*phi(i-1)+ Sua)/a_P; end

```    for i=3:nx
a_W=D+F/2;
a_E=D-F/2;
a_P=2*D;
phi(i,1)=(a_E*phi(i+1) + a_W*phi(i-1))/a_P;
end
for i=6
a_W=D+F/2;
a_E=0;
Spb=-(2*D-F);
Sub=(2*D-F)*phib;
a_P=a_E+a_W-Spb;
phi(i,1)=(a_E*phi(i+1) + a_W*phi(i-1)+ Sub)/a_P;
end
error=max(abs(phi_old-phi));
phi_new=phi;
end
figure();
x=[0,0.05,0.15,0.25,0.35,0.45,0.5];
plot(x,phi)                                    I am attaching original problem statements with its results Pleaee Guide me```

R2021a

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!