并按所给边界条件进行导热计算,其中介质导热系数λ取20。.docVIP

  • 12
  • 0
  • 约1.84万字
  • 约 23页
  • 2018-06-08 发布于湖北
  • 举报

并按所给边界条件进行导热计算,其中介质导热系数λ取20。.doc

一、对图1所示偏心半圆环二维区域生成适体计算网格,并按所给边界条件进行导热计算,其中介质导热系数λ取20。 边界条件:T(AD)=5℃; T(BC)=50℃;; ; 网格划分: 采用ThomasMiddlecoeff法对网格线密度和边界正交性的控制,得到: 偏心半圆导热问题 由于偏心半圆环形状较为复杂,无法直接在物理平面下进行计算,而需要在与物理平面相对应的计算平面下进行计算,因而其控制方程也需相应的转换到计算平面中。假定ρ、Γ(λ)均为常数,首先将控制方程转换到ξη平面。得到如下控制方程: 简化后得: 其中:,。 边界条件通用方程:,转换后有: 当边界为绝热边界时,则q=0;上边界有热源输入时,q=500。 将上述方程离散后即可编程进行跌代计算。 方程的离散 控制方程离散后得到: 其中: 边界条件离散后得到AB、CD边界点的通用方程: 其中绝热边界则简化为: 得到温度场: 程序: #include iostream.h #include math.h #include stdio.h void circleboundry(); //////////偏心半圆环边界 void TMmethodmesh ();/// ThomasMiddlcoeff法网格(改善正交性,并传递边界的疏密度) void heattransfer(); //稳态导热计算(上下表面有热源(或绝热q=0))) void exportdata(); /////输出网格点计算数据至.dat文本 #define pi 3.1415926 #define Tlb 5.0 //左边界条件(温度) #define Trb 50.0 //右边界条件(温度) double const qtop=500; //顶部热源 double const qbottom=0; //底部热源 double const heatcoe=5; //介质导热系数 int i,j; // 计算平面节点代号,表示第i列第j行点 int const m=41,n=41; // 分别为ξη方向(或xy方向)总节点数(取奇数) double x[m][n],y[m][n]; // 计算平面i,j点对应物理平面点的x,y坐标 double T[m][n]; int const pre=5000; // 预设总迭代次数 int step; // 迭代次数 double total[pre]; //残差值 double const min=1e-3; // 约定残差精度 void main() { circleboundry(); ///加载二维偏心半圆环边界 TMmethodmesh (); /// ThomasMiddlcoeff法网格 heattransfer(); //导热计算(上下表面绝热) exportdata(); //输出网格点坐标数据 } void circleboundry () //////////偏心半圆环边界//////////////////////////////////////// { #define xscale 1.02 //弧长方向步长增长比例 #define yscale 1.08 //径向步长增长比例 double angle[m][n]; double const r1=2.0; //内环半径 double const r2=4*r1; //外环半径 for (i=0;im;i++) // 内外圆弧边界 { if (xscale==1.0) { x[i][0]=r1*(1-cos(pi*i/(m-1))); y[i][0]=r1*sin(pi*i/(m-1)); x[i][n-1]=r2*(0.5-cos(pi*i/(m-1)))

文档评论(0)

1亿VIP精品文档

相关文档