利用有限差分法处理二阶导数,并用高斯赛德尔求出平板各点温度

img

你好同学,就是设置一个误差然后计算四个点的温度值,代码供参考:

clc;clear
% 四个点的初始温度
T12 = 0;
T22 = 0;
T11 = 0;
T21 = 0;
T = [T12,T22,T11,T21];
err = 1; % 设置初始误差
% 开始高斯赛德尔迭代
while err>1e-8 % 当误差大于10的-8次方继续迭代
    T12 =  (25+100+T22+T11)/4;
    T22 =  (25+0+T21+T12)/4;
    T11 =  (75+100+T12+T21)/4;
    T21 =  (75+0+T11+T22)/4;
    err = norm([T12,T22,T11,T21]-T);%计算每次相对误差
    T = [T12,T22,T11,T21];
end
fprintf('T12=%f℃,T22=%f℃, T11=%f℃, T21=%f℃\n',T12,T22,T11,T21)

计算结果:
T12=56.250000℃,T22=31.250000℃, T11=68.750000℃, T21=43.750000℃