主要内容

温度依赖性特性传热问题

这个例子说明了如何解决热方程与温度有关的导热系数。算例给出了一个中心为矩形腔体的矩形块体的理想热分析。

瞬态传热的部分微分方程是:

ρ C P. T. T. - K. T. = F

在哪里 T. 温度是温度, ρ 为材料密度, C P. 是特定的热量,和 K. 是导热率。 F 是物体内部产生的热量,在这个例子中是零。

稳态解决方案:恒定热导率

创建一个稳态热模型。

ThermalModels = Createpde('热的'“稳态”);

通过绘制一个矩形块的大小和第二矩形的刻度来创建2-D几何。

R1 = [3 4 -.5 .5 .5 -.5 -.8 -.8 .8];R2 = [3 4 -.05 .05 .05 -.05 -.4 -.4 .4 .4];gdm = [r1;R2]'

从第一个矩形中减去第二个矩形以创建带槽的块。

g = decsg(gdm,“R1-R2”, ('r1''r2']“);

将decsg格式转换为一个几何对象。在模型中包含几何图形。

几何模型(热模型,g);

将显示边缘标签的几何图形绘制。边缘标签将在下面使用用于定义边界条件的功能。

图pdegplot (thermalmodelS,“EdgeLabels”'在');轴([-。9。9 -。9。9]);标题'块几何与边缘标签显示'

图中包含一个坐标轴。显示带有边缘标签的标题块几何形状的轴包含9个类型的类型线,文本。

将左边边缘的温度设置为100度。在右边的边缘,有一个规定的热通量出块。顶部和底部的边缘和腔内的边缘都是绝缘的,也就是说,没有热量通过这些边缘传递。

ThermalBC(ThermalModels,'边缘'6.'温度',100);ThermalBC(ThermalModels,'边缘',1,“HeatFlux”, -10);

注明材料的导热系数。首先,考虑恒定的导热系数,例如,等于1。之后,考虑一个热导率是温度函数的情况。

热属性(热模型,'导热系数'1);

创建一个具有大于0.2的元素的网格。

Generatemesh(ThermalModels,“Hmax”, 0.2);图pdeplot (thermalmodelS);轴平等的标题“显示有限元网格的块体”

图中包含一个坐标轴。标题为“有限元网格显示块”的轴包含2个线型对象。

计算稳态解。

r =解决(Thermalmodels);t = r.temperature;图pdeplot(ThermalModels,“XYData”T“轮廓”'在'“ColorMap”'热的');轴平等的标题“温度,稳态溶液”

图中包含一个坐标轴。具有标题温度的轴,稳态溶液含有12个类型的贴片物体,线。

瞬态解决方案:恒定热导率

创建瞬态热模型并包含几何图形。

ThermalModelt = Createpde('热的''短暂的');R1 = [3 4 -.5 .5 .5 -.5 -.8 -.8 .8];R2 = [3 4 -.05 .05 .05 -.05 -.4 -.4 .4 .4];gdm = [r1;r2) ';g = decsg(gdm,“R1-R2”, ('r1''r2']“);geometryFromEdges (thermalmodelT g);

指定材料的导热性,质量密度和比热的热量。

thermalProperties (thermalmodelT'导热系数',1,......'massdention',1,......“SpecificHeat”1);

定义边界条件。在瞬时情况下,在时间=0时,左边缘的温度为零,并在0.5秒内上升到100度。您可以找到helper函数transientBCHeatedBlock在下面MATLAB / R20XXX /示例/ PDE / MAIN

thermalBC (thermalmodelT'边缘'6.'温度', @transientBCHeatedBlock);

在右边缘,块中有一个规定的热量通量。

thermalBC (thermalmodelT'边缘',1,“HeatFlux”, -10);

顶部和底部边缘以及空腔内部的边缘都是绝缘的,即没有热量通过这些边缘传递。

创建一个具有大于0.2的元素的网格。

msh = generatemesh(thermalmodelt,“Hmax”, 0.2);图pdeplot(ThermalModelt);轴平等的标题“显示有限元网格的块体”

图中包含一个坐标轴。标题为“有限元网格显示块”的轴包含2个线型对象。

计算瞬态解决方案。从零到五秒执行瞬态分析。工具箱每一个.1秒保存解决方案,以便可以创建作为时间函数的结果的绘图。

tlist = 0: .1:5;thermalIC (thermalmodelT 0);R =解决(thermalmodelT tlist);t = r.temperature;

两张图有助于理解这种瞬态分析的结果。第一个是最后时刻的温度图。第二张图显示的是街区中某一点的温度,在这个例子中是靠近右边缘的中心,它是时间的函数。为了识别靠近右边缘中心的节点,可以方便地定义这个简短的实用函数。

getClosestNode=@(p,x,y)min((p(1,:)-x)。^2+(p(2,:)-y)。^2);

调用此函数以获取右边缘中心附近的节点。

[~,nid] = getClosestNode(msh. exe, msh. exe);节点,.5,0);

两个图在下图并排显示。此时的温度分布与上述稳态解决方案中获得的温度分布非常相似。在右边缘,耗时小于大约一半,温度小于零。这是因为热量将块从左边缘到达速度快。在大约三秒钟内,温度基本上达到稳态。

h =图;H.Position = [1 1 2 1]。* H.Position;子图(1,2,1);轴平等的pdeplot (thermalmodelT“XYData”,趋向),“轮廓”'在'“ColorMap”'热的');轴平等的标题'温度,最后一次,瞬态解决方案'子批次(1,2,2);轴平等的图(T列表,T(nid,:);网格在…上标题'右边缘温度作为时间的函数';包含'时间,秒'ylabel.'温度,度-Celsius'

图中包含2个轴。轴1的标题为温度,最终时间,瞬态解决方案包含12个对象的类型补丁,线。标题为“温度在右边缘作为时间函数”的轴2包含一个类型为line的对象。

稳态解决方案:温度依赖的导热系数

物质属性是因变量的函数是很常见的。例如,假设导热系数是温度的简单线性函数:

k = @(〜,状态)0.3 + 0.003 * state.u;

在这种情况下,变量u是温度。对于这个例子,假设密度和比热不是温度的函数。

热属性(热模型,'导热系数'、k);

计算稳态解。与电导率恒定的情况相比,右边边缘的温度较低。这是由于温度较低的区域的电导率较低。

r =解决(Thermalmodels);t = r.temperature;图pdeplot(ThermalModels,“XYData”T“轮廓”'在'“ColorMap”'热的');轴平等的标题“温度,稳态溶液”

图中包含一个坐标轴。具有标题温度的轴,稳态溶液含有12个类型的贴片物体,线。

瞬态解决方案:温度依赖性导热率

现在以温度依赖的电导率进行瞬态分析。

thermalProperties (thermalmodelT'导热系数',k,......'massdention',1,......“SpecificHeat”1);

使用相同的时间表tlist = 0: .1:5对于线性情况。

thermalIC (thermalmodelT 0);R =解决(thermalmodelT tlist);t = r.temperature;

根据时间的函数绘制最终时间步骤的温度和右边缘的温度。最终时间步骤的温度曲线图仅与来自线性分析的可比图略微不同:右边缘处的温度略低于线性情况。随时间函数的温度曲线与线性情况不同。由于较低温度下的导电率下降,因此热量需要更长时间才能到达块的右边缘。在线性情况下,温度在三秒钟内基本恒定,但对于该非线性情况,温度曲线刚刚在五秒钟内达到平坦。

h =图;H.Position = [1 1 2 1]。* H.Position;子图(1,2,1);轴平等的pdeplot (thermalmodelT“XYData”,趋向),“轮廓”'在'“ColorMap”'热的');轴平等的标题'温度,最后一次,瞬态解决方案'子批次(1,2,2);轴平等的情节(tlist(1:尺寸(T, 2))、T (nid:));网格在…上标题“右边缘温度与时间的函数(非线性)”;包含'时间,秒'ylabel.'温度,度-Celsius'

图中包含2个轴。轴1的标题为温度,最终时间,瞬态解决方案包含12个对象的类型补丁,线。标题为“温度在右边缘作为时间的函数(非线性)”的轴2包含一个类型为线的对象。