C0 = 0.3;
Cw = 0.0;
kw = 1;
Q = 1;
D = 0.02;
L = linspace(0.1,20,50);
R = 0.8;
ax = Q/(pi*R^2);
C_target = 0.1;
Vs0 = 20;
ms = 1.4;
mc = 100;
N = 50;
Nr = N;
Nz = N;
tolerance = 1.0e-4;
C = zeros( Nz, Nr, N );
for ii = 1: N
deltar = R / ( Nr - 1 );
deltaz = L(ii) / ( Nz - 1 );
Cold(:,:,ii) = C(:,:,ii);
error = 1.0e+8;
nite = 0;
nitemax = 1e+5;
while ( error > tolerance ) && ( nite < nitemax )
nite = nite + 1;
for i = 1 : Nz
for j = 1 : Nr
r = deltar * ( j - 1 );
z = deltaz * ( i - 1 );
if i == 1
C( i, j, ii ) = C0;
elseif i == Nz
C( i, j , ii ) = Cold( i-1, j );
elseif j == 1
C( i, j, ii ) = Cold( i, j+1 );
elseif j == Nr
C( i, j, ii ) = ( Cold( i, j-1, ii ) + ( kw * deltar / D ) * Cw ) / ...
( 1 + ( kw * deltar / D ) );
else
Cleft = -(D/(2*r*deltar)) - (D/(deltar^2));
Cright = (D/(2*R*deltar)) - (D/(deltar^2));
Cbottom = -(ax/(2*deltaz)) - (D/(deltaz^2));
Ctop = (ax/(2*deltaz)) - (D/(deltaz^2));
Ccenter = Cbottom + Ctop + Cleft + Cright;
C( i, j, ii ) = ( Cleft * Cold( i , j-1, ii ) + ...
Cright * Cold( i , j+1, ii ) + ...
Cbottom * Cold( i-1, j, ii ) + ...
Ctop * Cold( i+1, j, ii ) + ...
0 ) / Ccenter;
end
end
end
error = norm( C(:,:,ii) - Cold(:,:,ii) );
Cold(:,:,ii) = C(:,:,ii);
end
end
C_TOP = C(N,:,:);
syms r
C_avg = zeros(50,1);
for i = 1:length(C_TOP)
C_avg(i) = ((1/(pi*R^2))*int(2*pi*r,r,0,R))*sum(C_TOP(:,:,i))/N;
end
C_avg