FVM Method For 1D Convection Diffusion Problem Using 5 Control volumes with spacing of 0.2
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
0 个评论
回答(0 个)
另请参阅
类别
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!