matlab 组合结果有个题,想把exact solution里面循环的出来得结果组合到一起,最好形成一个类似于N*1的矩阵形式,以下是我的代码:N=6 % n cellsnsquare=25Ta=293,Tb=373a=0,b=1L=b-adeltax=L/NA=(-2-nsquare*deltax*delt
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 02:00:25
matlab 组合结果有个题,想把exact solution里面循环的出来得结果组合到一起,最好形成一个类似于N*1的矩阵形式,以下是我的代码:N=6 % n cellsnsquare=25Ta=293,Tb=373a=0,b=1L=b-adeltax=L/NA=(-2-nsquare*deltax*delt
matlab 组合结果
有个题,想把exact solution里面循环的出来得结果组合到一起,最好形成一个类似于N*1的矩阵形式,以下是我的代码:
N=6 % n cells
nsquare=25
Ta=293,Tb=373
a=0,b=1
L=b-a
deltax=L/N
A=(-2-nsquare*deltax*deltax)*eye(N);
for i=1:N-1
A(i,i+1)=1;
A(i+1,i)=1;
end
A(1,1)=-3-nsquare*deltax*deltax;
A(N,N)=-1-nsquare*deltax*deltax
B=-Ta*nsquare*deltax*deltax*ones(N,1);
B(1,1)=-Ta*nsquare*deltax*deltax-2*Tb
T=A\B
% exact solution
for x=deltax/2:deltax:L
t=sqrt(nsquare)*(L-x)
cosht=(exp(t)+exp(-t))/2
Texact=cosht*(Tb-Ta)/cosh(sqrt(nsquare)*L)+Ta
end
%
matlab 组合结果有个题,想把exact solution里面循环的出来得结果组合到一起,最好形成一个类似于N*1的矩阵形式,以下是我的代码:N=6 % n cellsnsquare=25Ta=293,Tb=373a=0,b=1L=b-adeltax=L/NA=(-2-nsquare*deltax*delt
没必要用循环,直接用向量运算就可以了:
x=deltax/2:deltax:L;t=sqrt(nsquare)*(L-x);
cosht=(exp(t)+exp(-t))/2;
Texact=cosht*(Tb-Ta)/cosh(sqrt(nsquare)*L)+Ta
得到的结果与用循环一致:
Texact =345.7424 315.9320 302.9899 297.3960 295.0358 294.1730