-
Notifications
You must be signed in to change notification settings - Fork 0
/
Heat-transfer-04-Numerical-solution-of-conduction.html
595 lines (490 loc) · 32 KB
/
Heat-transfer-04-Numerical-solution-of-conduction.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<meta name="theme-color" content="#ddd"><meta name="generator" content="Hexo 6.2.0">
<link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon-next.png">
<link rel="icon" type="image/png" sizes="32x32" href="/images/logo_32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/images/logo_16x16.png">
<link rel="mask-icon" href="/images/logo.png" color="#ddd">
<link rel="stylesheet" href="/css/main.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+Sans+SC:300,300italic,400,400italic,700,700italic&display=swap&subset=latin,latin-ext">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css" integrity="sha256-DfWjNxDkM94fVBWx1H5BMMp0Zq7luBlV8QRcSES7s+0=" crossorigin="anonymous">
<script class="next-config" data-name="main" type="application/json">{"hostname":"example.com","root":"/","images":"/images","scheme":"Gemini","darkmode":false,"version":"8.12.1","exturl":false,"sidebar":{"position":"left","display":"post","padding":18,"offset":12},"copycode":{"enable":true,"style":null},"bookmark":{"enable":false,"color":"#222","save":"auto"},"mediumzoom":false,"lazyload":false,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"stickytabs":false,"motion":{"enable":false,"async":false,"transition":{"post_block":"fadeIn","post_header":"fadeInDown","post_body":"fadeInDown","coll_header":"fadeInLeft","sidebar":"fadeInUp"}},"prism":false,"i18n":{"placeholder":"搜索...","empty":"没有找到任何搜索结果:${query}","hits_time":"找到 ${hits} 个搜索结果(用时 ${time} 毫秒)","hits":"找到 ${hits} 个搜索结果"}}</script><script src="/js/config.js"></script>
<meta name="description" content="本文参考杨世铭、陶文铨所著《传热学》第四版第四章。传热问题基本思想是将原来在时间、空间坐标系中连续的物理量场,用有限个离散点上的值的集合来代替,通过求解按一定方法建立起来的关于这些值的代数方程,来获得离散点上被求物理量的值。这些离散点上被求物理量值集合称为该物理量的数值解。">
<meta property="og:type" content="article">
<meta property="og:title" content="热传导问题的数值解法">
<meta property="og:url" content="http://example.com/Heat-transfer-04-Numerical-solution-of-conduction.html">
<meta property="og:site_name" content="Day day up!">
<meta property="og:description" content="本文参考杨世铭、陶文铨所著《传热学》第四版第四章。传热问题基本思想是将原来在时间、空间坐标系中连续的物理量场,用有限个离散点上的值的集合来代替,通过求解按一定方法建立起来的关于这些值的代数方程,来获得离散点上被求物理量的值。这些离散点上被求物理量值集合称为该物理量的数值解。">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205292330812.png">
<meta property="og:image" content="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205300018850.png">
<meta property="og:image" content="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205300109788.png">
<meta property="article:published_time" content="2021-05-14T16:00:00.000Z">
<meta property="article:modified_time" content="2022-05-28T16:00:00.000Z">
<meta property="article:author" content="Chilton Nieh">
<meta property="article:tag" content="传热">
<meta property="article:tag" content="数值计算">
<meta property="article:tag" content="有限差分">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205292330812.png">
<link rel="canonical" href="http://example.com/Heat-transfer-04-Numerical-solution-of-conduction.html">
<script class="next-config" data-name="page" type="application/json">{"sidebar":"","isHome":false,"isPost":true,"lang":"zh-CN","comments":true,"permalink":"http://example.com/Heat-transfer-04-Numerical-solution-of-conduction.html","path":"/Heat-transfer-04-Numerical-solution-of-conduction.html","title":"热传导问题的数值解法"}</script>
<script class="next-config" data-name="calendar" type="application/json">""</script>
<title>热传导问题的数值解法 | Day day up!</title>
<noscript>
<link rel="stylesheet" href="/css/noscript.css">
</noscript>
</head>
<body itemscope itemtype="http://schema.org/WebPage">
<div class="headband"></div>
<main class="main">
<header class="header" itemscope itemtype="http://schema.org/WPHeader">
<div class="header-inner"><div class="site-brand-container">
<div class="site-nav-toggle">
<div class="toggle" aria-label="切换导航栏" role="button">
<span class="toggle-line"></span>
<span class="toggle-line"></span>
<span class="toggle-line"></span>
</div>
</div>
<div class="site-meta">
<a href="/" class="brand" rel="start">
<i class="logo-line"></i>
<p class="site-title">Day day up!</p>
<i class="logo-line"></i>
</a>
<p class="site-subtitle" itemprop="description">做人最重要的的是😀</p>
</div>
<div class="site-nav-right">
<div class="toggle popup-trigger">
</div>
</div>
</div>
<nav class="site-nav">
<ul class="main-menu menu"><li class="menu-item menu-item-home"><a href="/" rel="section"><i class="fa fa-home fa-fw"></i>首页</a></li><li class="menu-item menu-item-archives"><a href="/archives/" rel="section"><i class="fa fa-archive fa-fw"></i>归档<span class="badge">38</span></a></li><li class="menu-item menu-item-tags"><a href="/tags/" rel="section"><i class="fa fa-tags fa-fw"></i>标签<span class="badge">41</span></a></li><li class="menu-item menu-item-categories"><a href="/categories/" rel="section"><i class="fa fa-th fa-fw"></i>分类<span class="badge">6</span></a></li><li class="menu-item menu-item-favorites"><a href="/favorites/" rel="section"><i class="fa fa-heart fa-fw"></i>收藏</a></li><li class="menu-item menu-item-about"><a href="/about/" rel="section"><i class="fa fa-user fa-fw"></i>关于</a></li>
</ul>
</nav>
</div>
<div class="toggle sidebar-toggle" role="button">
<span class="toggle-line"></span>
<span class="toggle-line"></span>
<span class="toggle-line"></span>
</div>
<aside class="sidebar">
<div class="sidebar-inner sidebar-nav-active sidebar-toc-active">
<ul class="sidebar-nav">
<li class="sidebar-nav-toc">
文章目录
</li>
<li class="sidebar-nav-overview">
站点概览
</li>
</ul>
<div class="sidebar-panel-container">
<!--noindex-->
<div class="post-toc-wrap sidebar-panel">
<div class="post-toc animated"><ol class="nav"><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%AF%BC%E7%83%AD%E9%97%AE%E9%A2%98%E6%95%B0%E5%80%BC%E6%B1%82%E8%A7%A3%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%80%9D%E6%83%B3"><span class="nav-number">1.</span> <span class="nav-text">导热问题数值求解的基本思想</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E5%AF%BC%E7%83%AD%E9%97%AE%E9%A2%98%E6%95%B0%E5%80%BC%E6%B1%82%E8%A7%A3%E5%9F%BA%E6%9C%AC%E6%AD%A5%E9%AA%A4"><span class="nav-number">1.1.</span> <span class="nav-text">导热问题数值求解基本步骤</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%86%85%E8%8A%82%E7%82%B9%E7%A6%BB%E6%95%A3%E6%96%B9%E7%A8%8B%E7%9A%84%E5%BB%BA%E7%AB%8B%E6%96%B9%E6%B3%95"><span class="nav-number">2.</span> <span class="nav-text">内节点离散方程的建立方法</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%B3%B0%E5%8B%92%E7%BA%A7%E6%95%B0%E5%B1%95%E5%BC%80%E6%B3%95"><span class="nav-number">2.1.</span> <span class="nav-text">泰勒级数展开法</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E7%83%AD%E5%B9%B3%E8%A1%A1%E6%B3%95"><span class="nav-number">2.2.</span> <span class="nav-text">热平衡法</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E8%BE%B9%E7%95%8C%E8%8A%82%E7%82%B9%E7%A6%BB%E6%95%A3%E6%96%B9%E7%A8%8B%E7%9A%84%E5%BB%BA%E7%AB%8B%E5%8F%8A%E4%BB%A3%E6%95%B0%E6%96%B9%E7%A8%8B%E7%9A%84%E6%B1%82%E8%A7%A3"><span class="nav-number">3.</span> <span class="nav-text">边界节点离散方程的建立及代数方程的求解</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E8%BE%B9%E7%95%8C%E8%8A%82%E7%82%B9%E7%A6%BB%E6%95%A3%E6%96%B9%E7%A8%8B%E7%9A%84%E5%BB%BA%E7%AB%8B"><span class="nav-number">3.1.</span> <span class="nav-text">边界节点离散方程的建立</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E5%A4%84%E7%90%86%E4%B8%8D%E8%A7%84%E5%88%99%E5%8C%BA%E5%9F%9F%E7%9A%84%E9%98%B6%E6%A2%AF%E5%9E%8B%E9%80%BC%E8%BF%91%E6%B3%95"><span class="nav-number">3.2.</span> <span class="nav-text">处理不规则区域的阶梯型逼近法</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%B1%82%E8%A7%A3%E4%BB%A3%E6%95%B0%E6%96%B9%E7%A8%8B%E7%9A%84%E8%BF%AD%E4%BB%A3%E6%B3%95"><span class="nav-number">3.3.</span> <span class="nav-text">求解代数方程的迭代法</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E9%9D%9E%E7%A8%B3%E6%80%81%E5%AF%BC%E7%83%AD%E9%97%AE%E9%A2%98%E7%9A%84%E6%95%B0%E5%80%BC%E6%B1%82%E8%A7%A3"><span class="nav-number">4.</span> <span class="nav-text">非稳态导热问题的数值求解</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%97%B6%E9%97%B4%E7%A9%BA%E9%97%B4%E5%8C%BA%E5%9F%9F%E7%9A%84%E7%A6%BB%E6%95%A3%E5%8C%96"><span class="nav-number">4.1.</span> <span class="nav-text">时间—空间区域的离散化</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%B0%8F%E7%BB%93"><span class="nav-number">5.</span> <span class="nav-text">小结</span></a></li></ol></div>
</div>
<!--/noindex-->
<div class="site-overview-wrap sidebar-panel">
<div class="site-author site-overview-item animated" itemprop="author" itemscope itemtype="http://schema.org/Person">
<img class="site-author-image" itemprop="image" alt="Chilton Nieh"
src="/images/logo.png">
<p class="site-author-name" itemprop="name">Chilton Nieh</p>
<div class="site-description" itemprop="description">路漫漫其修远兮,吾将上下而求索</div>
</div>
<div class="site-state-wrap site-overview-item animated">
<nav class="site-state">
<div class="site-state-item site-state-posts">
<a href="/archives/">
<span class="site-state-item-count">38</span>
<span class="site-state-item-name">日志</span>
</a>
</div>
<div class="site-state-item site-state-categories">
<a href="/categories/">
<span class="site-state-item-count">6</span>
<span class="site-state-item-name">分类</span></a>
</div>
<div class="site-state-item site-state-tags">
<a href="/tags/">
<span class="site-state-item-count">41</span>
<span class="site-state-item-name">标签</span></a>
</div>
</nav>
</div>
<div class="links-of-author site-overview-item animated">
<span class="links-of-author-item">
<a href="https://github.com/yourname" title="GitHub → https://github.com/yourname" rel="noopener" target="_blank"><i class="fab fa-github fa-fw"></i>GitHub</a>
</span>
</div>
</div>
</div>
</div>
</aside>
<div class="sidebar-dimmer"></div>
</header>
<div class="back-to-top" role="button" aria-label="返回顶部">
<i class="fa fa-arrow-up"></i>
<span>0%</span>
</div>
<noscript>
<div class="noscript-warning">Theme NexT works best with JavaScript enabled</div>
</noscript>
<div class="main-inner post posts-expand">
<div class="post-block">
<article itemscope itemtype="http://schema.org/Article" class="post-content" lang="zh-CN">
<link itemprop="mainEntityOfPage" href="http://example.com/Heat-transfer-04-Numerical-solution-of-conduction.html">
<span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
<meta itemprop="image" content="/images/logo.png">
<meta itemprop="name" content="Chilton Nieh">
</span>
<span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Day day up!">
<meta itemprop="description" content="路漫漫其修远兮,吾将上下而求索">
</span>
<span hidden itemprop="post" itemscope itemtype="http://schema.org/CreativeWork">
<meta itemprop="name" content="热传导问题的数值解法 | Day day up!">
<meta itemprop="description" content="">
</span>
<header class="post-header">
<h1 class="post-title" itemprop="name headline">
热传导问题的数值解法
</h1>
<div class="post-meta-container">
<div class="post-meta">
<span class="post-meta-item">
<span class="post-meta-item-icon">
<i class="far fa-calendar"></i>
</span>
<span class="post-meta-item-text">发表于</span>
<time title="创建时间:2021-05-15 00:00:00" itemprop="dateCreated datePublished" datetime="2021-05-15T00:00:00+08:00">2021-05-15</time>
</span>
<span class="post-meta-item">
<span class="post-meta-item-icon">
<i class="far fa-calendar-check"></i>
</span>
<span class="post-meta-item-text">更新于</span>
<time title="修改时间:2022-05-29 00:00:00" itemprop="dateModified" datetime="2022-05-29T00:00:00+08:00">2022-05-29</time>
</span>
<span class="post-meta-item">
<span class="post-meta-item-icon">
<i class="far fa-folder"></i>
</span>
<span class="post-meta-item-text">分类于</span>
<span itemprop="about" itemscope itemtype="http://schema.org/Thing">
<a href="/categories/%E8%AF%BE%E7%A8%8B%E7%AC%94%E8%AE%B0/" itemprop="url" rel="index"><span itemprop="name">课程笔记</span></a>
</span>
</span>
</div>
</div>
</header>
<div class="post-body" itemprop="articleBody">
<blockquote>
<p>本文参考杨世铭、陶文铨所著《传热学》第四版第四章。传热问题基本思想是将原来在时间、空间坐标系中连续的物理量场,用有限个离散点上的值的集合来代替,通过求解按一定方法建立起来的关于这些值的代数方程,来获得离散点上被求物理量的值。这些离散点上被求物理量值集合称为该物理量的数值解。</p>
</blockquote>
<span id="more"></span>
<h2 id="导热问题数值求解的基本思想">导热问题数值求解的基本思想</h2>
<h3 id="导热问题数值求解基本步骤">导热问题数值求解基本步骤</h3>
<p><img src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205292330812.png" alt="数值求解" style="zoom:50%;" /></p>
<p>右上图所示的二维矩形域内稳态、无内热源、常物性的导热问题为例</p>
<ol type="1">
<li>建立控制方程及定解条件</li>
</ol>
<p>导热微分方程 <span class="math display">\[
\frac{\partial^2 T}{\partial x^2} + \frac{\partial^2 T}{\partial y^2} =
0.
\]</span></p>
<p>四个边界条件分别为第一类和第三类边界条件。</p>
<ol start="2" type="1">
<li>区域离散化</li>
</ol>
<p>将求解区域划分成许多子区域,以网格线的交点作为需要确定温度值的空间位置,称为节/结点(node)。相邻两节点的距离称为步长,记为<span
class="math inline">\(~\Delta x\)</span>、<span
class="math inline">\(\Delta
y\)</span>。节点所代表的区域称为元体(element),又叫控制容积(control
volume)。</p>
<ol start="3" type="1">
<li>建立节点物理量的代数方程</li>
</ol>
<p>节点上物理的求解代数方程称为离散方程(discretization
equation),考虑节点<span
class="math inline">\(~(m,n)~\)</span>的代数方程,当<span
class="math inline">\(~\Delta x = \Delta
y~\)</span>时,内部节点代数方程满足 <span class="math display">\[
T_{m,n} = \frac{1}{4}(T_{m+1,n} + T_{m-1,n} + T_{m,n+1} +
T_{m,n-1}).\label{dis-eq}
\]</span></p>
<ol start="4" type="1">
<li>设立迭代初始场</li>
</ol>
<p>代数方程组的求解方法有直接法与迭代法两大类,传热问题的有限差分法中主要采用迭代法。采用此法求解时需要假定初始解,称为初场(initial
field),在求解过程这一温度场不断得到改进。</p>
<ol start="5" type="1">
<li>求解代数方程</li>
</ol>
<p>除<span
class="math inline">\(~m=1~\)</span>的左边界上各节点的温度为已知外,其余<span
class="math inline">\(~(M-1)\times
N~\)</span>个节点都需要建立起类似于式<span
class="math inline">\(~\eqref{dis-eq}~\)</span>的离散方程,一共<span
class="math inline">\(~(M-1)\times
N~\)</span>个代数方程,构成封闭的代数方程组。实际工程问题中,代数方程的个数一般在<span
class="math inline">\(~10^3\sim
10^6~\)</span>的数量级。针对上述问题,代数方程一旦建立,各项系数在整个求解过程不再变化,称为线性问题。如果物性为温度的函数,则式<span
class="math inline">\(~\eqref{dis-eq}~\)</span>右端 4
个邻点温度的系数不再是常数,而是温度的函数,这些系数在迭代过程中不断更新,这种问题称为非线性问题。</p>
<ol start="6" type="1">
<li>解的分析</li>
</ol>
<p>获得物体中温度分布不是最终目的,所得的温度场可能进一步应用于计算热流量或计算设备、零部件的热应力及热变形。</p>
<h2 id="内节点离散方程的建立方法">内节点离散方程的建立方法</h2>
<p>建立节点离散方程的方法有泰勒级数展开法及热平衡法两种,现以下图进行详细介绍</p>
<p><img src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205300018850.png" alt="内节点离散方程建立" style="zoom:50%;" /></p>
<h3 id="泰勒级数展开法">泰勒级数展开法</h3>
<p>现以节点<span
class="math inline">\(~(m,n)~\)</span>处的二阶偏导数为例,导出其差分表达式,对节点<span
class="math inline">\(~(m+1,n)~\)</span>及<span
class="math inline">\(~(m-1,n)~\)</span>分别写出温度的泰勒级数展开式
<span class="math display">\[
\begin{aligned}
T_{m+1,n} = T_{m,n} + \Delta x \left. \frac{\partial T}{\partial x}
\right |_{m.n} +
\frac{\Delta x^2}{2} \left. \frac{\partial^2 T}{\partial x^2} \right
|_{m.n} +
\frac{\Delta x^3}{6} \left. \frac{\partial^3 T}{\partial x^3} \right
|_{m.n} + \cdots,\\
T_{m-1,n} = T_{m,n} - \Delta x \left. \frac{\partial T}{\partial x}
\right |_{m.n} +
\frac{\Delta x^2}{2} \left. \frac{\partial^2 T}{\partial x^2} \right
|_{m.n} -
\frac{\Delta x^3}{6} \left. \frac{\partial^3 T}{\partial x^3} \right
|_{m.n} + \cdots.
\end{aligned}
\]</span> 以上两式相加得 <span class="math display">\[
T_{m+1,n} + T_{m-1,n} = 2T_{m,n} + \Delta x^2 \left. \frac{\partial^2
T}{\partial x^2} \right |_{m.n} + \frac{\Delta x^4}{12} \left.
\frac{\partial^4 T}{\partial x^4} \right |_{m.n}.
\]</span> 上式中重写为 <span class="math display">\[
\left. \frac{\partial^2 T}{\partial x^2} \right|_{m,n} = \frac{T_{m+1,n}
- 2 T_{m,n} + T_{m-1,n}}{\Delta x^2} + \mathcal{O}(\Delta x^2),
\label{eq5}
\]</span> 其中<span class="math inline">\(~\mathcal{O}(\Delta
x^2)~\)</span>称为截断误差(truncation
error),表示未明确写出得级数余项中<span class="math inline">\(~\Delta
x~\)</span>得最低阶数为
2。进行数值计算时,一般省略掉截断误差,此时差分表达式也被称为中心差分(central
difference)。同理可得 <span class="math display">\[
\left. \frac{\partial^2 T}{\partial y^2} \right|_{m,n} = \frac{T_{m,n+1}
- 2 T_{m,n} + T_{m,n-1}}{\Delta y^2} + \mathcal{O}(\Delta y^2).
\label{eq6}
\]</span> 将式<span class="math inline">\(~\eqref{eq5}~\)</span>和<span
class="math inline">\(~\eqref{eq6}~\)</span>代入节点<span
class="math inline">\(~(m,n)~\)</span>得离散方程,忽略截断误差,则有
<span class="math display">\[
\frac{T_{m+1,n} - 2 T_{m,n} + T_{m-1,n}}{\Delta x^2} + \frac{T_{m,n+1} -
2 T_{m,n} + T_{m,n-1}}{\Delta y^2} = 0. \label{eq7}
\]</span> 如果<span class="math inline">\(~\Delta x = \Delta
y\)</span>,则上式退回式<span
class="math inline">\(~\eqref{dis-eq}\)</span>。</p>
<p>下表列举了常见离散表达式</p>
<p><img src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202205300109788.png" alt="一阶、二阶导数的常用差分表达式" style="zoom:50%;" /></p>
<h3 id="热平衡法">热平衡法</h3>
<p>对每个节点代表的元体采用傅里叶定律,例如从节点<span
class="math inline">\(~(m-1,n)~\)</span>通过界面<span
class="math inline">\(~w~\)</span>传导到节点<span
class="math inline">\(~(m,n)~\)</span>的热流量可表示为 <span
class="math display">\[
\Phi_w = \lambda\Delta y\frac{T_{m-1,n}-T_{m,n}}{\Delta x}.
\]</span> 类似地,也可以写出通过其他三个界面<span
class="math inline">\(~e\)</span>、<span
class="math inline">\(n~\)</span>及<span
class="math inline">\(~s~\)</span>传导给节点<span
class="math inline">\(~(m,n)~\)</span>的热量,得到关于元体<span
class="math inline">\(~(m,n)~\)</span>的能量守恒方程 <span
class="math display">\[
\Phi_e + \Phi_w + \Phi_n + \Phi_s = 0,
\]</span> 即 <span class="math display">\[
\begin{aligned}
&\lambda\Delta y\frac{T_{m-1,n}-T_{m,n}}{\Delta x} +
\lambda\Delta y\frac{T_{m+1,n}-T_{m,n}}{\Delta x} + \\
&\lambda\Delta x\frac{T_{m,n+1}-T_{m,n}}{\Delta y} +
\lambda\Delta x\frac{T_{m,n-1}-T_{m,n}}{\Delta y} = 0.
\end{aligned}
\]</span> 上式进一步简化可得到式<span
class="math inline">\(~\eqref{eq7}\)</span>。</p>
<h2
id="边界节点离散方程的建立及代数方程的求解">边界节点离散方程的建立及代数方程的求解</h2>
<h3 id="边界节点离散方程的建立">边界节点离散方程的建立</h3>
<p>对于第一类边界条件的导热问题,所有内节点的离散方程组成了一个封闭的代数方程组,可以立即进行求解。对于含有第二类或第三类边界条件的导热问题,由内节点的离散方程组成的方程组不封闭,因为包含了未知的边界温度,因此需要补充这类边界节点上的代数方程。这也是数值计算中边界处理问题。</p>
<p>在下面的讨论中,先把第二类边界条件及第三类边界条件合并起来考虑,并以<span
class="math inline">\(~q_\text{w}~\)</span>代表边界上已知的热流密度值或热流密度表达式(以热量进人计算区域为正),用热平衡方法导出三类典型边界节点的离散方程,然后针对<span
class="math inline">\(~q_\text{w}~\)</span>的一种不同情况使导得的离散方程进一步具体化。为使结果更具一般性,假设物体具有内热源<span
class="math inline">\(~\dot{\Phi}\)</span>(不必均布)。</p>
<ol type="1">
<li>位于平直边界上的节点</li>
</ol>
<p>边界节点<span
class="math inline">\(~(m,n)~\)</span>代表半个元体,如下图所示。设边界上有向该元体传递的热流密度<span
class="math inline">\(~q_\text{w}\)</span>,于是该元体的能量守恒定律可表示为</p>
<p><img
src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202206301037050.png"
alt="平直边界上的节点" /> <span class="math display">\[
\begin{aligned}
&\lambda \frac{T_{m-1,n}-T_{m,n}}{\Delta x}\Delta y +
\lambda \frac{T_{m,n+1}-T_{m,n}}{\Delta y}\frac{\Delta x}{2} + \\
&\lambda \frac{T_{m,n-1}-T_{m,n}}{\Delta y}\frac{\Delta x}{2} +
\frac{\Delta x \Delta y}{2}\dot{\Phi}_{m,n}+\Delta y q_\text{w} = 0.
\end{aligned}
\]</span> 当<span class="math inline">\(~\Delta x = \Delta
y~\)</span>时有 <span class="math display">\[
T_{m,n} = \frac{1}{4}\left(2T_{m-1,n}+T_{m+1,n}+T_{m,n-1}+\frac{\Delta
x^2}{\lambda}\dot{\Phi}_{m,n}+\frac{2\Delta x}{\lambda}q_\text{w}
\right).
\]</span></p>
<ol start="2" type="1">
<li>外部角点</li>
</ol>
<p>在如下图所示的二维墙角计算区域中,节点 <em>A</em> ~ <em>E</em>
均为外部角点,其特点是每个节点仅代表四分之一个以<span
class="math inline">\(~\Delta x\)</span>、<span
class="math inline">\(\Delta y~\)</span>为边长的元体。今以外部角点
<em>D</em> 为例,假设其边界上有向该元体传递的热流密度<span
class="math inline">\(~q_\text{w}\)</span>,则其热平衡式为</p>
<p><img
src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202206301045642.png"
alt="外部角点与内部角点" /> <span class="math display">\[
\begin{aligned}
&\lambda \frac{T_{m-1,n}-T_{m,n}}{\Delta x}\frac{\Delta y}{2} +
\lambda \frac{T_{m,n-1}-T_{m,n}}{\Delta y}\frac{\Delta x}{2} + \\
&
\frac{\Delta x \Delta y}{4}\dot{\Phi}_{m,n}+\frac{\Delta x+\Delta y}{2}
q_\text{w} = 0.
\end{aligned}
\]</span> 当<span class="math inline">\(~\Delta x = \Delta
y~\)</span>时有 <span class="math display">\[
T_{m,n} = \frac{1}{2}\left(T_{m-1,n}+T_{m,n-1}+\frac{\Delta
x^2}{2\lambda}\dot{\Phi}_{m,n}+\frac{2\Delta x}{\lambda}q_\text{w}
\right).
\]</span></p>
<ol start="3" type="1">
<li>内部角点</li>
</ol>
<p>如上图的 <em>F</em>
为内部角点,代表四分之三个元体。在同样的假设条件下有 <span
class="math display">\[
\begin{aligned}
&\lambda \frac{T_{m-1,n}-T_{m,n}}{\Delta x}\Delta y +
\lambda \frac{T_{m,n+1}-T_{m,n}}{\Delta y}\Delta x + \lambda
\frac{T_{m,n-1}-T_{m,n}}{\Delta y}\frac{\Delta x}{2}+ \\
&\lambda \frac{T_{m+1,n}-T_{m,n}}{\Delta x}\frac{\Delta
y}{2}+\frac{3\Delta x \Delta y}{4}\dot{\Phi}_{m,n}+\frac{\Delta x+\Delta
y}{2} q_\text{w} = 0.
\end{aligned}
\]</span> 当<span class="math inline">\(~\Delta x = \Delta
y~\)</span>时有 <span class="math display">\[
T_{m,n} =
\frac{1}{6}\left(2T_{m-1,n}+2T_{m,n+1}+T_{m,n-1}+T_{m+1,n}+\frac{3\Delta
x^2}{2\lambda}\dot{\Phi}_{m,n}+\frac{2\Delta x}{\lambda}q_\text{w}
\right).
\]</span> 边界热流密度的三种情况</p>
<ol type="1">
<li>绝热边界</li>
</ol>
<p>令<span class="math inline">\(~q_\text{w}=0~\)</span>即可。</p>
<ol start="2" type="1">
<li><span class="math inline">\(q_\text{w}~\)</span>值不为零</li>
</ol>
<p>以给定<span
class="math inline">\(~q_\text{w}~\)</span>值代入上述方程,但要注意上述三式中以传入计算区域的热量为正。</p>
<ol start="3" type="1">
<li>对流边界</li>
</ol>
<p>此时<span
class="math inline">\(~q_\text{w}=h(T_\text{f}-T_{m,n})\)</span>,将此式代入上式中。</p>
<h3 id="处理不规则区域的阶梯型逼近法">处理不规则区域的阶梯型逼近法</h3>
<p>当计算区域中出现曲线边界或倾斜的边界时,常常用阶梯型的折线来模拟真实边界,然后再用上述方法建立起边界节点的离散方程。例如,要用数值方法确定如下左图所示二维区域的形状因子。显然,根据对称性只要考虑四分之一的计算区域即可。下左图中的内圆边界可以采用下右图所示的阶梯形的折线边界来近似。只要网格取得足够密,这种近似处理方法仍能获得相当准确的结果。</p>
<figure>
<img
src="https://raw.githubusercontent.com/NChilton/Picture/main/img/202206301119904.png"
alt="不规则区域的的处理" />
<figcaption aria-hidden="true">不规则区域的的处理</figcaption>
</figure>
<h3 id="求解代数方程的迭代法">求解代数方程的迭代法</h3>
<p>前已指出,代数方程组的求解方法分为直接解法及迭代法两大类。直接解法(direct
method)是指通过有限次运算获得代数方程精确解的方法,像矩阵求
逆、高斯消元法等均属于此种方法。这一方法的缺点是计算所需的计算机内存
较大,当代数方程的数月较多时使用不便。另一类方法称迭代法(iteration
method)。在迭代法中先对要计算的场作出假设(设定初场),在迭代计算过程中不断予以改进,直到计算前的假定值与计算后的结果相差小于允许值为止,称为迭代计算已经收敛。</p>
<ol type="1">
<li>高斯-赛德尔迭代法</li>
<li>迭代过程是否已经收敛的判据</li>
</ol>
<p>迭代是否收敛的常用判据 <span class="math display">\[
\max\left| T_i^{(k)}- T_i^{(k+1)} \right|\leq\varepsilon, \\
\max\left| \frac{T_i^{(k)}- T_i^{(k+1)}}{T_i^{(k)}}
\right|\leq\varepsilon, \\
\max\left| \frac{T_i^{(k)}- T_i^{(k+1)}}{T_\text{max}^{(k)}}
\right|\leq\varepsilon.
\]</span> 其中,上角标<span class="math inline">\(~k~\)</span>及<span
class="math inline">\(~(k+1)~\)</span>表示迭代次数,<span
class="math inline">\(T_\text{max}^{(k)}~\)</span>为第<span
class="math inline">\(~k~\)</span>次迭代计算所得的计算区域中的最大值。一般允许的相对偏差为<span
class="math inline">\(~\varepsilon=10^{-3}\sim10^{-6}\)</span>。</p>
<ol start="3" type="1">
<li>迭代过程能否收敢的判据</li>
</ol>
<p>迭代公式的选择应使每一个迭代变量的系数总是大于或等于该式中其他变量系数绝对值之和,此时用迭代法求解代数方程一定收敛。这一条件在数学上称为主对角线占优,简称对角占优(diagonal
predominant)。</p>
<h2 id="非稳态导热问题的数值求解">非稳态导热问题的数值求解</h2>
<h3 id="时间空间区域的离散化">时间—空间区域的离散化</h3>
<h2 id="小结">小结</h2>
</div>
<footer class="post-footer">
<div class="post-tags">
<a href="/tags/%E4%BC%A0%E7%83%AD/" rel="tag"># 传热</a>
<a href="/tags/%E6%95%B0%E5%80%BC%E8%AE%A1%E7%AE%97/" rel="tag"># 数值计算</a>
<a href="/tags/%E6%9C%89%E9%99%90%E5%B7%AE%E5%88%86/" rel="tag"># 有限差分</a>
</div>
<div class="post-nav">
<div class="post-nav-item">
<a href="/Heat-transfer-03-Unsteady-conduction.html" rel="prev" title="非稳态热传导">
<i class="fa fa-chevron-left"></i> 非稳态热传导
</a>
</div>
<div class="post-nav-item">
<a href="/Heat-transfer-05-Convection.html" rel="next" title="对流传热的理论基础">
对流传热的理论基础 <i class="fa fa-chevron-right"></i>
</a>
</div>
</div>
</footer>
</article>
</div>
</div>
</main>
<footer class="footer">
<div class="footer-inner">
<div class="copyright">
©
<span itemprop="copyrightYear">2022</span>
<span class="with-love">
<i class="fa fa-heart"></i>
</span>
<span class="author" itemprop="copyrightHolder">Chilton Nieh</span>
</div>
<div class="powered-by">由 <a href="https://hexo.io/" rel="noopener" target="_blank">Hexo</a> & <a href="https://theme-next.js.org/" rel="noopener" target="_blank">NexT.Gemini</a> 强力驱动
</div>
</div>
</footer>
<script src="https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.1/anime.min.js" integrity="sha256-XL2inqUJaslATFnHdJOi9GfQ60on8Wx1C2H8DYiN1xY=" crossorigin="anonymous"></script>
<script src="/js/comments.js"></script><script src="/js/utils.js"></script><script src="/js/next-boot.js"></script>
<script class="next-config" data-name="mermaid" type="application/json">{"enable":true,"theme":{"light":"default","dark":"dark"},"js":{"url":"https://cdnjs.cloudflare.com/ajax/libs/mermaid/9.1.1/mermaid.min.js","integrity":"sha256-8L3O8tirFUa8Va4NSTAyIbHJeLd6OnlcxgupV9F77e0="}}</script>
<script src="/js/third-party/tags/mermaid.js"></script>
<script class="next-config" data-name="enableMath" type="application/json">true</script><script class="next-config" data-name="mathjax" type="application/json">{"enable":true,"tags":"none","js":{"url":"https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.1/es5/tex-mml-chtml.js","integrity":"sha256-hlC2uSQYTmPsrzGZTEQEg9PZ1a/+SV6VBCTclohf2og="}}</script>
<script src="/js/third-party/math/mathjax.js"></script>
</body>
</html>