二维导热物体温度场的数值模拟

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

金属凝固过程计算机模拟题目:二维导热物体温度场的数值模拟

Solidworks十字接头的传热分析

作者:张杰

学号:S2*******

学院:北京有色金属研究总院

专业:材料科学与工程

成绩:

2015 年12 月

二维导热物体温度场的数值模拟

图1 二维均质物体的网格划分

用有限差分法模拟二维导热物体的温度场,首先将二维物体划分为如图1所示的网格,x ∆与y ∆可以是不变的常量,即等步长,也可以是变量(即在区域内的不同处是不同的),即变步长。如果区域内各点处的温度梯度相差很大,则在温度变化剧烈处,网格布得密些,在温度变化不剧烈处,网格布得疏些。至于网格多少,步长取多少为宜,要根据计算精度与计算工作量等因素而定。

在有限的区域内,将二维不稳定导热方程式应用于节点

,)i j (可写成: ,2222 ,i j

P

P

p i j T T T C x y ρλτ⎛⎫∂∂∂=+ ⎪∂∂∂⎝⎭

,1 , ,()i j

P P P

i j i j

T T T οτττ+-∂⎛⎫=

+∆ ⎪∂∆⎝⎭ ()

, 1 , , 1 ,22

2()i j P P P P

i j i j i j T T T T x x x ο+--+∂⎛⎫

=+∆ ⎪∂⎝⎭∆ () , ,1 , ,122

2()i j

P

P P P

i j i j i j T T T T y y y ο+--+⎛⎫∂=+∆ ⎪∂∆⎝⎭τ∆、x ∆、y ∆ 当τ∆、x ∆、y ∆较小时,忽略()οτ∆、2()x ο∆、2

()y ο∆项。当x y ∆=∆时,

即x 、y 方向网格划分步长相等。最后得到节点

,)i j (的差分方程: ()1 , ,0 1 , 1 , ,1 ,1 ,4P P P P P P P

i j i j i j i j i j i j i j T T F T T T T T ++-+-=++++-

式中:()

02

p F C x λτ

ρ∆=

∆。

假设边界为对流和辐射边界,对流用以下公式计算:

()()

,1 , ,0 1 , ,1 ,1 ,24P

c f i j P P P P P P i j i j i j i j i j i j p a T T T T F T T T T C x

τρ+-+-∆-=+++-+

MATLAB 编程模拟

clc; clear;

format long %% 参数输入

moni_canshu=xlsread('模拟参数输入.xlsx',1,'B2:B11'); %读取excel 中的模拟参数 s=moni_canshu(1); %几何尺寸,m t0=moni_canshu(2); %初始温度,℃

tf=moni_canshu(3); %辐射(空气)边界,℃ rou=moni_canshu(4); %密度,kg/m3

lamda=moni_canshu(5); %导热系数,w/(m ℃) Cp=moni_canshu(6); %比热,J/(kg ℃)

n=moni_canshu(7); %工件节点数,个<1000 dt=60*moni_canshu(8); %时间步长,min to s m=moni_canshu(9); %时间步数,个<100 dx=s/(n-1);%计算dx

f0=lamda*dt/(rou*Cp*dx*dx);%计算f0 %% 初始参数矩阵,初始温度 for iii=1:n for jjj=1:n

Told(iii,jjj)=t0; end end

Told(1,:)=tf; Told(n,:)=tf; Told(:,1)=tf;

Told(:,n)=tf;

%% 写文件表头

xlswrite('data.xlsx',{['坐标位置']},'sheet1','A1');

asc=97;

for ii=1:n

biaotou1={['第' num2str(ii) '点']};

asc=asc+1;

xlswrite('data.xlsx',biaotou1,'sheet1',[char(asc) '1']);

xlswrite('data.xlsx',biaotou1,'sheet1',['A' num2str(ii+1)]);

end

%% 模拟运算

for jj=1:2

copyfile('data.xlsx','data1.xlsx')

Tnew(1,1:n)=tf;

Tnew(n,1:n)=tf;

Tnew(1:n,1)=tf;

Tnew(1:n,n)=tf;

for i=2:n-1

for j=2:n-1

Tnew(i,j)=Told(i,j)+f0*(Told(i-1,j)-4*Told(i,j)+Told(i+1,j)+Told(i,j-1)+Told(i,j+1)); end

end

Told=Tnew;

pcolor(Told);%绘图

shading interp

colormap(jet)

pause(0.1)

saveas(gcf,['第' num2str(jj*0.1) 's温度图像.jpg']);

xlswrite('data1.xlsx',Told,'sheet1','B2');

copyfile('data1.xlsx',['第' num2str(jj*0.1) 's数据.xlsx'])

delete('data1.xlsx');

end

相关文档
最新文档