五种离散格式.docx
《五种离散格式.docx》由会员分享,可在线阅读,更多相关《五种离散格式.docx(21页珍藏版)》请在冰点文库上搜索。
计算传热学课程大作业报告
储运与建筑工程学院能源与动力工程系
计算传热学课程大作业报告
作业题目:
五种对流离散项的对比研究
学生姓名:
宋龙
学号:
6030221
专业班级:
能动-班
专业写全称,仿宋GB-2312,三号字体。
专业写全称,仿宋GB-2312,三号字体。
2017年11月3日
目录
1计算题目 1
2数学物理模型 2
3计算区域及方程离散 3
3.1区域离散 3
3.2方程离散 3
3.2.1中心差分格式 3
3.2.1迎风差分格式 4
3.2.3混合格式 4
3.2.4指数格式 5
3.2.5指数格式 6
3.2.6五种格式格式系数aEDe的表达式 6
4数值方法及程序流程 7
5计算结果验证及网格独立性考核 8
5.1计算结果验证 8
5.1网格独立性考核 11
6结果分析与讨论 14
7参考资料 15
附录 16
附录A:
计算环境及源程序 16
1计算题目
对于有源项的一维稳态空气对流-扩散传热方程:
ddxρuT=ddxλcdTdx+S
设源项S=0.5-100x,利用中心差分格式,一阶迎风格式,混合格式,指数格式,乘方格式求解在不同流速情况下,温度T的一维分布。
2数学物理模型
物理模型:
一维,稳态,有内热源,常物性
控制方程:
ddxρuT=ddxλcdTdx+Sλc=Γ
物理条件:
ρ,Γ=consts=0.5-100x
边界条件:
x=0T=300K;
x=1T=500K
由于在常物性均分网格的情况下网格贝克勒数与流速成正比,所以在流速不同的情况下求温度场即在网格贝克勒数不同的情况下求温度场。
3计算区域及方程离散
3.1区域离散
3.2方程离散
3.2.1中心差分格式
由控制方程:
ddxρuT=ddxΓdTdx+S
对一维模型方程在P控制容积内做积分,取分段线性型线,经整理可得:
(ρuT)e-ρuTw=ΓdTdxe-ΓdTdxw+SPΔxP
(ρu)eTE+TP2-ρuwTP+TW2=ΓeδxeTE-TP-ΓwδxwTP-TW+SPΔxP
整理可得:
aPTP=aETE+aWTW+SPΔxP
其中:
aE=De-12Fe=De(1-12P∆e)De=ΓeδxeFe=(ρu)e
aW=Dw+12Fw=Dw(1+12P∆w)Dw=ΓwδxwFw=(ρu)w
aP=aE+aW+Fe-Fw
为保证代数方程迭代求解的收敛性,我们要求计算中质量守恒一定要满足,于是:
Fe-Fw=0aP=aE+aW
3.2.1迎风差分格式
控制容积法定义:
界面上未知函数永远取上游节点之值
紧凑形式:
(ρuT)e=TP[Fe,0]-TE[-Fe,0]
(ρuT)w=TW[Fw,0]-TP[-Fw,0]
带入控制方程,化简得:
aPTP=aETE+aWTW+SPΔxP
其中:
aE=De+-Fe,0=De(1+-P∆e,0)
aW=Dw+Fw,0=Dw(1+P∆w,0)
aP=aE+aW+Fe,0+-Fw,0--Fe,0-Fw,0=aE+aW+Fe-Fw
为保证代数方程迭代求解的收敛性,我们要求计算中质量守恒一定要满足,于是:
Fe-Fw=0aP=aE+aW
3.2.3混合格式
紧凑定义:
aEDe=[-P∆e,1-12P∆e,0]
aWDw=[0,1+12P∆w,P∆w]
3.2.4指数格式
含义:
根据一维模型的精确解相对应的离散方程构成的一种格式。
导出方法:
将精确解表示成三点变量间的代数方程。
T-T0TL-T0=expρuxΓ-1expρuLΓ-1=expPexL-1expPe-1
对流扩散总通量密度:
ddxρuT=ddxΓdTdx+S
定义:
J=ρuT-ΓdTdxJ=const对控制容积P:
Je=Jw
将对流扩散方程的精确解带入J的定义式,化简得:
J=F(T0+T0-TLexpPe-1)
对于e,w界面写出总通量密度的解析表达式:
Je=FeT0+TP-TEexpPΔe-1Jw=Fw(T0+TW-TPexpPΔw-1)
带入Je=Jw,整理得:
aPTP=aETE+aWTW+SPΔxP
aE=FeexpPΔe-1aW=FWexpPΔwexpPΔw-1
aP=aE+aW
3.2.5指数格式
3.2.6五种格式格式系数aEDe的表达式
4数值方法及程序流程
初始化变量:
x=0,T=300K;x=1,T=500K
网格划分:
外界点法,取Δx=0.05
确定方程系数:
根据不同情况设网格贝克勒数,求出ae/D,上一点的ae与下一点aw间相差一个网格贝克勒数
求解方程:
高斯赛德尔迭代
5计算结果验证及网格独立性考核
5.1计算结果验证
图1pe=0.7时温度分布图
xCDFUDHBSEXPPL
0.00300.00300.00300.00300.00300.00
0.05348.14299.63299.82299.80299.80
0.10364.97299.37299.65299.61299.60
0.15376.30298.99299.36299.29299.29
0.20383.91298.44298.91298.82298.81
0.25388.99297.71298.27298.15298.14
0.30392.35296.75297.41297.26297.25
0.35394.54295.56296.30296.10296.09
0.40395.92294.13294.89294.66294.64
0.45396.75292.48293.18292.90292.89
0.50397.20290.66291.14290.84290.82
0.55397.36288.80288.80288.48288.47
0.60397.34287.12286.22285.92285.92
0.65397.16286.03283.57283.37283.39
0.70396.88286.27281.29281.29281.34
0.75396.50289.08280.25280.64280.75
0.80396.06296.64282.36283.41283.60
0.85395.56312.65291.61293.61293.93
0.90395.00343.43316.31319.38319.83
0.95426.89399.76373.78377.15377.60
1.00500.00500.00500.00500.00500.00
图1pe=0.7时的温度图线
表2pe=7.8时温度分布表
xFUDHBSEXPPL
0.00300.00300.00300.00300.00
0.05300.00300.00300.00300.00
0.10299.99299.99299.99299.99
0.15299.98299.98299.98299.98
0.20299.95299.96299.95299.95
0.25299.91299.92299.91299.91
0.30299.85299.86299.86299.86
0.35299.77299.78299.78299.78
0.40299.67299.68299.68299.68
0.45299.54299.56299.55299.55
0.50299.38299.40299.39299.39
0.55299.18299.21299.19299.19
0.60298.95298.98298.96298.96
0.65298.68298.72298.69298.69
0.70298.36298.41298.38298.38
0.75298.00298.05298.02298.02
0.80297.62297.65297.61297.61
0.85297.42297.19297.14297.14
0.90299.24296.68296.63296.63
0.95319.27296.10296.13296.06
1.00500.00500.00500.00500.00
表3pe=50时温度分布表
xFUDHBSEXPPL
0.00300.00300.00300.00300.00
0.05300.00300.00300.00300.00
0.10300.00300.00300.00300.00
0.15300.00300.00300.00300.00
0.20299.99299.99299.99299.99
0.25299.99299.99299.99299.99
0.30299.98299.98299.98299.98
0.35299.97299.97299.97299.97
0.40299.95299.95299.95299.95
0.45299.93299.93299.93299.93
0.50299.91299.91299.90299.90
0.55299.88299.88299.87299.87
0.60299.84299.84299.84299.84
0.65299.80299.80299.80299.80
0.70299.75299.75299.75299.75
0.75299.69299.70299.69299.69
0.80299.63299.63299.63299.63
0.85299.56299.56299.55299.55
0.90299.56299.48299.47299.47
0.95303.33299.39299.38299.38
1.00500.00500.00500.00500.00
5.1网格独立性考核
取dx=0.01,pe=0.7为例
xCDFUDHBSEXPPL
0.00300.00300.00300.00300.00300.00
0.02348.15299.98299.99299.99299.99
0.04365.00299.96299.98299.98299.98
0.06376.37299.94299.96299.96299.96
0.08384.04299.90299.94299.93299.93
0.10389.22299.86299.90299.88299.88
0.12392.71299.79299.84299.83299.83
0.14395.06299.71299.77299.75299.75
0.16396.64299.61299.69299.66299.66
0.18397.70299.49299.58299.54299.54
0.20398.41299.34299.44299.40299.40
0.22398.88299.17299.29299.24299.23
0.24399.19298.97299.10299.04299.04
0.26399.39298.73298.89298.82298.81
0.28399.51298.47298.64298.56298.56
0.30399.58298.16298.35298.26298.26
0.32399.62297.82298.03297.93297.93
0.34399.63297.44297.68297.56297.56
0.36399.62297.02297.27297.15297.14
0.38399.61296.55296.83296.69296.69
0.40399.58296.03296.34296.18296.18
0.42399.54295.47295.80295.63295.63
0.44399.50294.85295.21295.03295.02
0.46399.46294.18294.57294.37294.36
0.48399.41293.45293.87293.65293.64
0.50399.36292.66293.11292.88292.87
0.52399.30291.81292.30292.04292.04
0.54399.24290.90291.42291.15291.14
0.56399.18289.93290.48290.18290.18
0.58399.12288.88289.47289.16289.15
0.60399.05287.77288.39288.06288.05
0.62398.98286.59287.24286.89286.88
0.64398.91285.33286.02285.64285.63
0.66398.83284.01284.72284.32284.31
0.68398.76282.61283.35282.92282.91
0.70398.68281.15281.89281.44281.43
0.72398.60279.62280.36279.89279.87
0.74398.51278.06278.75278.25278.24
0.76398.43276.48277.05276.54276.53
0.78398.34274.93275.29274.77274.76
0.80398.25273.51273.49272.96272.95
0.82398.15272.35271.68271.18271.18
0.84398.06271.71269.97269.53269.54
0.86397.96272.01268.57268.27268.30
0.88397.85273.99267.91267.85267.92
0.90397.75278.88268.90269.27269.39
0.92397.64288.79273.40274.46274.67
0.94397.54307.32285.34287.37287.70
0.96397.42340.57312.82315.91316.37
0.98429.81398.91372.70376.07376.53
1.00500.00500.00500.00500.00500.00
综上,通过加密网格发现结果相差不大,独立性检验合格。
6结果分析与讨论
当网格pe绝对值数小于2时,中心差分格式能得出物理上有意义的解,当网格pe数绝对值大于2时,中心差分得出的数据明显杂乱,物理上没有意义,因此舍去。
当网格pe变化时,乘方格式和指数格式比较接近的。
7参考资料
[1]陶文铨.数值传热学[M].西安交通大学出版社,2003.
[2]杨世铭,陶文铨.传热学.第4版[M].高等教育出版社,2006.
[3]黄善波刘忠良计算传热学基础中国石油大学(华东)热能与动力工程系
附录
附录A:
计算环境及源程序
计算环境为codeblocks,计算语言C,程序如下:
#include
#include
#defineNX100
intmain()
{
doubleT1[NX],T2[NX],T3[NX],T4[NX],T5[NX],aE1[NX],aE2[NX],aE3[NX],aE4[NX],aE5[NX]
doubledx;
doubleD,F,p;
intN;
inti,j,k;
k=0;dx=0.02;D=0.5/dx;p=0.7;F=p*D;
N=51;
for(i=1;i{
T1[i]=400;T2[i]=400;T3[i]=400;T4[i]=400;T5[i]=400;
}
T1[0]=300;T2[0]=300;T3[0]=300;T4[0]=300;T5[0]=300;
T1[N-1]=500;T2[N-1]=500;T3[N-1]=500;T4[N-1]=500;T5[N-1]=500;
for(i=1;i<(N-1);i++)
{
aE1[i]=D*(1-p/2.0);
}
for(i=1;i<(N-1);i++)
{
aE2[i]=D;
}
for(i=1;i<(N-1);i++)
{
if(p>=0&&p<=2)
{
aE3[i]=D*(1-p/2.0);
}
if(p>2)
{
aE3[i]=0;
}
}
for(i=1;i<(N-1);i++)
{
if(p==0)
{
aE4[i]=D;
}
else
aE4[i]=(p/(exp(p)-1))*D;
}
for(i=1;i<(N-1);i++)
{
if(p<=10)
{
aE5[i]=pow(1-0.1*p,5)*D;
}
if(p>10)
{
aE5[i]=0;
}
}
for(i=1;i<(N-1);i++)
{
T1[i]=aE1[i]*T1[i+1]+(aE1[i-1]+F)*T1[i-1]+(0.5*dx*i-50.0*dx*i*dx*i);
T1[i]=T1[i]/(aE1[i]+aE1[i-1]+F);
}
while
(1)
{
for(i=1;i<(N-1);i++)
{
T2[i]=aE2[i]*T2[i+1]+(aE2[i-1]+F)*T2[i-1]+(0.5*dx*i-50.0*dx*i*dx*i);
T2[i]=T2[i]/(aE2[i]+aE2[i-1]+F);
}
for(i=1;i<(N-1);i++)
{
T3[i]=aE3[i]*T3[i+1]+(aE3[i-1]+F)*T3[i-1]+(0.5*dx*i-50.0*dx*i*dx*i);
T3[i]=T3[i]/(aE3[i]+aE3[i-1]+F);
}
for(i=1;i<(N-1);i++)
{
T4[i]=aE4[i]*T4[i+1]+(aE4[i-1]+F)*T4[i-1]+(0.5*dx-50.0*dx*i*dx*i);
T4[i]=T4[i]/(aE4[i]+aE4[i-1]+F);
}
for(i=1;i<(N-1);i++)
{
T5[i]=aE5[i]*T5[i+1]+(aE5[i-1]+F)*T5[i-1]+(0.5*dx-50.0*dx*i*dx*i);
T5[i]=T5[i]/(aE5[i]+aE5[i-1]+F);
}
k++;
if(k==1000)break;
}
printf("xCDFUDHBSEXPPL\n");
for(i=0;i{
printf("%.2f%.2f%.2f%.2f%.2f%.2f\n",i*dx,T1[i],T2