数值传热学答案
习题4-12.matlab程序
clear
%******************三对角阵算法(TDMA算法)********************** %************《数值传热学》P100,一般情况的Thomas算法************* %定义A B C T变量
m1=10;%定义10个节点
x=linspace(1,3,m1);%生成 A、C、B、T 数据的初值;
A=cos(x);%TDMA 的主对角元素
B=cos(x)+exp(x);%TDMA 的下对角线元素
C=sin(x); %TDMA 的上对角线元素
第一文库网T=exp(x).*cos(x); %温度数据
%求解方程的`通式AiTi=CiTi+1+BiTi-1+Di
C(1)=0;
B(10)=0;
D(1)=A(1)*T(1)-B(1)*T(2);
D(10)=A(10)*T(10)-C(10)*T(9);
for i=2:9
D(i)=A(i)*T(i)-B(i)*T(i+1)-C(i)*T(i-1);
end
%递归算法的系数通项公式
P(1)=B(1)/A(1);
Q(1)=D(1)/A(1);
for i=2:10
P(i)=B(i)/(A(i)-C(i)*P(i-1));
Q(i)=(D(i)+C(i)*Q(i-1))/(A(i)-C(i)*P(i-1));
end
T(10)=Q(10);
for i=9:-1:1
T(i)=P(i)*T(i+1)+Q(i);
end
%输出Ti的值
fprintf('T(i)的值是:%f',T(i))
%绘图比较给定 T 值和计算 T 值
plot(T,'r*')
hold on
T=exp(x).*cos(x)
plot(T)
title('给定的T值和计算T值得比较')
运行结果:
>> T(i)的值是:1.468694
T = Columns 1 through 9
1.4687 1.1595 0.5342 -0.5068 -2.0679
-15.0305 -4.2477 -7.1233 -10.7295
Column 10
-19.8845
【数值传热学答案】相关文章:
数值05-20
工程热力学与传热学02-09
数值的英文02-18
Abel变换的数值反演11-29
湍流射流的数值模拟07-29
关于安全工程传热学课程教学的思考的论文06-19
时滞logistic微分方程Hopf分支参数值的数值逼近07-03
数值策划个人简历02-08
水下爆炸数值仿真研究10-03