Tải bản đầy đủ (.pdf) (76 trang)

ứng dụng của bài toán biên tự do stefan

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (833.04 KB, 76 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

TRƯỜNG ĐẠI HỌC BÁCH KHOA

LUẬN VĂN THẠC SĨ

<small>TP HỒ CHÍ MINH, tháng 1 năm 2024</small>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<small>Cán bộ hướng dẫn khoa học: TS. Đặng Văn VinhTS. Nguyễn Quốc Lân</small>

<small>Cán bộ chấm Phản biện 1: TS. Lê Xuân Đại</small>

<small>Cán bộ chấm Phản biện 2: PGS.TS Nguyễn Huy Tuấn</small>

<small>Luận văn thạc sĩ này được bảo vệ tại Trường Đại học Bách Khoa, Đại học Quốcgia TP Hồ Chí Minh, ngày 05 tháng 01 năm 2024.</small>

<small>Thành phần Hội đồng đánh giá luận văn bao gồm:1. Chủ tịch: PGS.TS Nguyễn Đình Huy</small>

<small>2. Thư ký: TS. Phan Thị Hường3. Phản biện 1: TS. Lê Xuân Đại</small>

<small>4. Phản biện 2: PGS.TS Nguyễn Huy Tuấn5. Ủy viên: PGS.TS Cao Thanh Tình</small>

<small>Xác nhận của chủ tịch Hội đồng đánh giá luận văn và trưởng Khoa quản lýchuyên ngành sau khi luận văn đã chỉnh sửa (nếu có).</small>

<small>ỨNG DỤNG</small>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<small>Trường Đại học Bách KhoaĐộc lập - Tự do - Hạnh phúc</small>

NHIỆM VỤ LUẬN VĂN THẠC SĨ

<small>Họ và tên học viên: Võ Thị Ánh LoanMSHV: 2170957Ngày, tháng, năm sinh: 06/11/1986Nơi sinh: Long An</small>

<small>I. TÊN ĐỀ TÀI: ỨNG DỤNG CỦA BÀI TOÁN BIÊN TỰ DO STEFAN(APPLICATION OF THE FREE BOUNDARY STEFAN PROBLEM)NHIỆM VỤ VÀ NỘI DUNG</small>

<small>ˆ Kiến thức cơ sở liên quan đến phương pháp số giải phương trình truyềnnhiệt.</small>

<small>ˆ Phương pháp số để giải quyết bài toán truyền nhiệt với biên tự do Stefanmột chiều, giới thiệu cơ sở lý thuyết và các bước để giải bài toán Stefantrong tọa độ cầu bằng phương pháp số.</small>

<small>ˆ Giới thiệu quy trình sản xuất phân Urê của nhà máy Đạm Phú Mỹ, giớithiệu một ứng dụng của bài toán Stefan hai pha để mơ hình hóa Tháplàm hạt Urê.</small>

<small>II. NGÀY GIAO NHIỆM VỤ: 04/09/2023</small>

<small>III. NGÀY HOÀN THÀNH NHIỆM VỤ: 18/12/2023</small>

<small>IV. CÁN BỘ HƯỚNG DẪN: TS. Đặng Văn Vinh - TS. Nguyễn Quốc LânTP Hồ Chí Minh, ngày . . . tháng . . . năm 2024</small>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

Trong suốt quãng thời gian thực hiện luận văn thạc sĩ này, tôi xin bày tỏ lòng

biết ơn chân thành đến những người đã góp phần quan trọng làm cho nghiên

cứu này trở thành hiện thực.

Đầu tiên và trước hết, tôi xin gửi lời cảm ơn sâu sắc đến hai Thầy hướng dẫn

của mình, TS. Đặng Văn Vinh và TS. Nguyễn Quốc Lân. Những người Thầy

không chỉ là những người hướng dẫn tận tâm, mà còn là nguồn động viên, sự hỗ

trợ và nguồn động lực quan trọng giúp tơi vượt qua những khó khăn và hồn

thành luận văn này.

Tơi cũng xin bày tỏ lịng biết ơn đặc biệt đến PGS.TS Nguyễn Đình Huy,

người đã tạo điều kiện thuận lợi, hỗ trợ và chia sẻ những góp ý quý báu, góp

phần quan trọng vào việc hồn thành tốt luận văn.

Ngồi ra, tơi muốn chân thành cảm ơn tới gia đình và người thân, những

người đã luôn ủng hộ và động viên tôi trong suốt hành trình này. Đặc biệt, tơi

xin gửi lời cảm ơn sâu sắc đến cha, mẹ, chồng và hai con, vì sự hỗ trợ và động

lực không ngừng để tôi phấn đấu và hoàn thành tốt luận văn.

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

Toán Ứng Dụng, khoa Khoa học ứng dụng, Trường Đại học Bách khoa TP Hồ

Chí Minh đã tạo điều kiện tốt nhất để tơi hồn thành luận văn.

Xin chân thành cảm ơn!

TP Hồ Chí Minh, ngày 20 tháng 12 năm 2023

Người thực hiện luận văn

Võ Thị Ánh Loan

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

Bài toán biên Stefan là một trong những vấn đề quan trọng trong lĩnh vực

truyền nhiệt và nghiên cứu về đối lưu chất trong các hệ thống nhiệt độ. Được

đặt tên theo nhà toán học người Áo Josef Stefan, bài tốn này tập trung vào

việc mơ phỏng và giải quyết hiện tượng đổi pha trong quá trình truyền nhiệt.

Đặc biệt, nó quan tâm đến biên giữa hai chất có nhiệt độ khác nhau và sự thay

đổi của biên này theo thời gian. Các hiểu biết từ bài toán này không chỉ giúp

chúng ta hiểu sâu hơn về cơ chế truyền nhiệt trong các hệ thống phức tạp mà

còn cung cấp cơ sở cho việc thiết kế và tối ưu hóa các q trình truyền nhiệt

trong nhiều ngành cơng nghiệp.

Với sự phức tạp của việc xử lý điều kiện biên thay đổi theo thời gian, đề tài

này hứa hẹn mang lại cái nhìn chi tiết và sâu sắc về nhiều ứng dụng thực tế của

bài toán biên Stefan trong lĩnh vực truyền nhiệt, đồng thời cung cấp cơ hội để

phát triển và cải tiến các phương pháp mô phỏng và giải quyết vấn đề này.

Luận văn này tập trung vào ứng dụng của bài toán biên tự do vào việc giải

bài toán Stefan một chiều và các bước để giải bài toán stefan trong hệ tọa độ

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

Luận văn gồm 3 chương.

<small>ˆ</small> Chương 1. Kiến thức chuẩn bị. Chương này cung cấp kiến thức cần

thiết đủ để hiểu về phương pháp số giải bài toán truyền nhiệt một chiều,

hai chiều, ba chiều.

<small>ˆ</small> Chương 2. Phương pháp số giải bài toán truyền nhiệt với biên

tự do Stefan. Chương này giới thiệu bài toán Stefan một chiều do thầy

Nguyễn Quốc Lân cung cấp với sự phân tích lý thuyết sâu sắc và đưa ra các

bước cụ thể để viết chương trình. Chương trình được tơi viết trên matlab

đã chạy ổn định, cho ra kết quả phù hợp. Chương này cũng giới thiệu cơ

sở lý thuyết và các bước để giải bài toán Stefan trong tọa độ cầu bằng

phương pháp số.

<small>ˆ</small> Chương 3. Bài tốn Stefan hai pha để mơ hình hóa Tháp làm hạt

Urê. Chương này giới thiệu một ứng dụng của bài toán Stefan trong sản

xuất phân Urê. Ở đây, chúng tơi giới thiệu quy trình sản xuất phân Urê

của nhà máy Đạm Phú Mỹ (xem [3] - Chương 3 - Mục 3.3 - Trang 66) và

kết quả của bài báo [6] vào sản xuất phân Urê.

Qua việc kết hợp sâu sắc giữa kiến thức cơ sở, bài toán Stefan hai pha và

phương pháp số, hy vọng luận văn sẽ đóng góp một phần nhỏ vào sự phát triển

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

ngành công nghiệp và môi trường.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

The Stefan problem is one of the crucial issues in the field of heat transfer

and the study of convection phenomena in thermal systems. Named after the

Austrian mathematician Josef Stefan, this problem focuses on simulating and

solving phase-change phenomena during heat transfer processes. Specifically, it

concerns the interface between two substances with different temperatures and

how this interface changes over time. Insights gained from this problem not only

deepen our understanding of heat transfer mechanisms in complex systems but

also provide a foundation for designing and optimizing heat transfer processes

in various industries.

Given the complexity of handling time-varying boundary conditions, this

topic promises to offer detailed and profound insights into many practical

ap-plications of the Stefan problem in the field of heat transfer. It also provides

opportunities to develop and enhance simulation and solution methods for this

This thesis concentrates on the application of the free boundary Stefan

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

prob-Stefan problem in spherical coordinates.

The thesis consists of three chapters:

<small>ˆ</small> Chapter 1: Background Knowledge. This chapter provides the

nec-essary background knowledge to understand numerical methods for

solv-ing one-dimensional, two-dimensional, and three-dimensional heat transfer

<small>ˆ</small> Chapter 2: Numerical Solution of the Stefan Problem with Free

Boundary. This chapter introduces the one-dimensional Stefan problem

provided by Professor Nguyen Quoc Lan with in-depth theoretical analysis

and specific steps for program implementation. The MATLAB program I

developed runs stably and produces appropriate results. This chapter also

introduces the theoretical basis and steps for solving the Stefan problem in

spherical coordinates using numerical methods.

<small>ˆ</small> Chapter 3: Two-Phase Stefan Problem for Modeling the Urea

Granulation Tower. This chapter introduces an application of the Stefan

problem in urea fertilizer production. Here, we present the urea fertilizer

production process at the Phu My Fertilizer Plant (see [3] Chapter 3

-Section 3.3 - Page 66) and the results of the paper [6] on urea fertilizer

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

By combining fundamental knowledge, the two-phase Stefan problem, and

numerical methods, it is hoped that this thesis will contribute to the development

and improvement in the field of urea fertilizer production, bringing long-term

benefits to both the industry and the environment.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Lời cảm ơn ii

1.1 Phương pháp số giải phương trình truyền nhiệt trong khơng gian

một chiều . . . . 1

1.2 Phương pháp số giải phương trình truyền nhiệt trong khơng gian

hai chiều . . . . 14

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

ba chiều . . . . 16

Chương 2. Phương pháp số giải bài toán truyền nhiệt với biêntự do Stefan 182.1 Bài toán Stefan một chiều . . . . 19

2.2 Bài toán Stefan trong tọa độ cầu . . . . 26

Chương 3. Bài tốn Stefan hai pha để mơ hình hóa Tháp làmhạt Urê 313.1 Quy trình sản xuất phân Urê - Xưởng Urê nhà máy Đạm Phú Mỹ 323.1.1 Công đoạn nén CO2 . . . . 32

3.1.2 Tổng hợp Urê và thu hồi <small>N H</small><sub>3</sub> - <small>CO</small><sub>2</sub> cao áp . . . . 33

3.1.3 Phân hủy cacbanmate và thu hồi<small>N H3− CO2</small> trung và thấpáp . . . . 36

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Danh sách ký hiệu

Ký hiệu Ý nghĩa

<small>u</small><sub>t</sub> Đạo hàm riêng của u theo thời gian t

<small>v</small><sub>t</sub> Đạo hàm riêng của v theo thời gian t

<small>u</small><sub>xx</sub> Đạo hàm bậc hai của u theo x

<small>u</small><sub>yy</sub> Đạo hàm bậc hai của u theo y

<small>u</small><sub>zz</sub> Đạo hàm bậc hai của u theo z

<small>u</small><sub>rr</sub> Đạo hàm bậc hai của u theo bán kính r

<small>v</small><sub>rr</sub> Đạo hàm bậc hai của v theo bán kính r

<small>k</small> Hệ số dẫn nhiệt

<small>△t</small> Bước thời gian

<small>△r</small> Khoảng cách giữa các điểm lưới trong không gian

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

1.1 Thí nghiệm lý tưởng về sự truyền nhiệt trong một thanh trụ dài

với điều kiện biên đồng nhất . . . . 2

1.2 Mô phỏng sai phân tiến . . . . 3

2.1 Đồ thị của nhiệt độ u theo thời gian t . . . . 25

2.2 Đồ thị của nhiệt độ u theo vị trí x . . . . 26

3.1 Sơ đồ công nghệ sản xuất Urê . . . . 33

3.2 Sơ đồ quy trình tổng hợp và thu hồi cao áp . . . . 35

3.3 Phân hủy cacbanmate và thu hồi <small>N H</small><sub>3</sub><small>− CO</small><sub>2</sub> trung áp . . . . 36

3.4 Phân hủy cacbanmate và thu hồi <small>N H3− CO2</small> thấp áp . . . . 37

3.5 Cô đặc dịch Urê . . . . 38

3.6 Tháp tạo hạt . . . . 39

3.7 Cấu hình giọt Urê lỏng . . . . 44

3.8 Vận tốc dừng ở các kích thước khác nhau của các hạt Urê . . . 50

3.9 Nhiệt độ tại tâm của các giọt nước so với thời gian cho các đườngkính hạt khác nhau . . . . 50

3.10 Phân bố nhiệt độ theo thời gian của một hạt có đường kính 1.6 mm 513.11 Vận tốc dừng (Terminal Velocity), thời gian cần thiết (RequiredTime), và chiều cao tối thiểu (Minimum Height) cho q trìnhđơng cứng hoàn toàn . . . . 52

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

Danh sách bảng

2.1 Bảng 3 mốc . . . . 20

3.1 Các thơng số và giá trị của q trình tạo hạt . . . . 48

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

Chương 1

Kiến thức chuẩn bị

Những kiến thức cơ bản được trình bày trong chương này gồm:

trong khơng gian một chiều

Giả sử chúng ta xét phương trình truyền nhiệt trong khơng gian một chiều.

Phương trình này có thể dùng để miêu tả sự lan truyền nhiệt trong một thanh

Phương trình được viết dưới dạng

<small>ut= α</small><sup>2</sup><small>uxx</small>

<small>0 < x < L,t > 0</small>

với nghiệm là một hàm u = u(x,t) là một hàm số của 2 biến x và t. Ở đây:

<small>ˆ x</small> là biến khơng gian, do đó <small>x ∈ [0, L]</small>, với <small>L</small> là chiều dài của thanh.

<small>ˆ t</small> là biến thời gian, do đó <small>t ≥ 0</small>.

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Chúng ta giả sử điều kiện ban đầu là <small>u(x, 0) = f (x)</small>, <small>∀x ∈ [0, L]</small> với hàm số <small>f</small>

cho trước và các điều kiện biên là <small>u(0, t) = u(L, t) = 0</small>

<small>Hình 1.1: Thí nghiệm lý tưởng về sự truyền nhiệt trong một thanh trụ dài với điềukiện biên đồng nhất</small>

Chia thanh ra thành n đoạn: <small>x</small><sub>0</sub> <small>= 0</small>, <small>x</small><sub>1</sub> <small>= △x</small>, <small>x</small><sub>2</sub><small>= 2△x</small>, ..., <small>x</small><sub>n</sub> <small>= L</small>

Giá trị của hàm tại các nút trên trục hoành bằng <small>f (x)</small>: <small>u(x, 0) = f (x)</small>

Giá trị của hàm tại các nút trên trục tung bằng 0: <small>u(0, t) = 0</small>

Giá trị của hàm tại các nút trên biên phải bằng 0: <small>u(L, t) = 0</small>

Tính giá trị của các hàm tại các nút bên trong hình chữ nhật: <small>u(x</small><sub>i</sub><small>, t</small><sub>j</sub><small>) = u</small><sub>i,j</sub>

*** Phương pháp sai phân tiến (forward difference method)

Tại bước thứ j theo thời gian, ta xấp xỉ đạo hàm bởi sai phân tiến:

<small>u</small><sub>t</sub> <small>≈</small> <sup>u</sup><small>i,j+1ưui,j</small>

<small>△t</small> , <small>u</small><sub>xx</sub> <small>≈</small> <sup>u</sup><small>iư1,jư2ui,j+ui+1,j</small>

Thay vào phương trình (1.1), ta có

<small>△t= α</small><sup>2 u</sup><small>iư1,jư2ui,j+ui+1,j</small>

<small>△x2</small>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

<small>Hình 1.2: Mơ phỏng sai phân tiến</small>

<small>ui,j+1− ui,j=</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2(ui−1,j− 2ui,j+ ui+1,j)</small>

<small>u</small><sub>i,j+1</sub> <small>= (1 − 2</small><sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2)u</small><sub>i,j</sub><small>+</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2(u</small><sub>i−1,j</sub><small>+ u</small><sub>i+1,j</sub><small>)</small>

Đặt <small>λ =</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2</small> , ta có <small>u</small><sub>i,j+1</sub><small>= λu</small><sub>i−1,j</sub> <small>+ (1 − 2λ)u</small><sub>i,j</sub><small>+ λu</small><sub>i+1,j</sub>

Ở mỗi bước thời gian, ta cần tìm giá trị nhiệt độ tại n-1 điểm.

Với <small>t</small><sub>0</sub> <small>= 0</small> (n-1 nút trên trục hoành): <small>u(x, 0) = f (x)</small>

Với <small>t1= △t</small> (n-1 nút ở ngay bên trên trục hoành 1 hàng):

<small>u</small><sub>i,1</sub> <small>= λu</small><sub>i−1,0</sub><small>+ (1 − 2λ)u</small><sub>i,0</sub><small>+ λu</small><sub>i+1,0</sub><small>,</small> với i = 1, ..., n-1

<small>u</small><sub>1,1</sub> <small>= λu</small><sub>0,0</sub><small>+ (1 − 2λ)u</small><sub>1,0</sub><small>+ λu</small><sub>2,0</sub> = <small>(1 − 2λ)u</small><sub>1,0</sub><small>+ λu</small><sub>2,0</sub><small>u</small><sub>2,1</sub> <small>= λu</small><sub>1,0</sub><small>+ (1 − 2λ)u</small><sub>2,0</sub><small>+ λu</small><sub>3,0</sub>

<small>u</small><sub>3,1</sub> <small>= λu</small><sub>2,0</sub><small>+ (1 − 2λ)u</small><sub>3,0</sub><small>+ λu</small><sub>4,0</sub>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<small>un−1,1= λun−2,0+ (1 − 2λ)un−1,0+ λun,0</small> = <small>λun−2,0+ (1 − 2λ)un−1,0</small>

Với <small>t</small><sub>2</sub> <small>= 2△t</small> (n-1 nút ở hàng thứ 3 từ dưới lên):

<small>u</small><sub>i,2</sub> <small>= λu</small><sub>i−1,1</sub><small>+ (1 − 2λ)u</small><sub>i,1</sub><small>+ λu</small><sub>i+1,1</sub>, với i = 1, ..., n-1

<small>u1,2= λu0,1+ (1 − 2λ)u1,1+ λu2,1</small> = <small>(1 − 2λ)u1,1+ λu2,1</small>

<small>u</small><sub>2,2</sub> <small>= λu</small><sub>1,1</sub><small>+ (1 − 2λ)u</small><sub>2,1</sub><small>+ λu</small><sub>3,1</sub><small>u</small><sub>3,2</sub> <small>= λu</small><sub>2,1</sub><small>+ (1 − 2λ)u</small><sub>3,1</sub><small>+ λu</small><sub>4,1</sub>

<small>u</small><sub>n−1,2</sub> <small>= λu</small><sub>n−2,1</sub><small>+ (1 − 2λ)u</small><sub>n−1,1</sub><small>+ λu</small><sub>n,1</sub> = <small>λu</small><sub>n−2,1</sub><small>+ (1 − 2λ)u</small><sub>n−1,1</sub>

Với <small>t</small><sub>j</sub> <small>= j△t</small> (n-1 nút ở hàng thứ j+1 từ dưới lên):

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<small>u</small><sub>i,j</sub> <small>= λu</small><sub>iư1,jư1</sub><small>+ (1 ư 2λ)u</small><sub>i,jư1</sub><small>+ λu</small><sub>i+1,jư1</sub>, với i = 1, ..., n-1

<small>u1,j= λu0,jư1+ (1 ư 2λ)u1,jư1+ λu2,jư1</small> = <small>(1 ư 2λ)u1,jư1+ λu2,jư1</small>

<small>u</small><sub>2,j</sub> <small>= λu</small><sub>1,jư1</sub><small>+ (1 ư 2λ)u</small><sub>2,jư1</sub><small>+ λu</small><sub>3,jư1</sub><small>u</small><sub>3,j</sub> <small>= λu</small><sub>2,jư1</sub><small>+ (1 ư 2λ)u</small><sub>3,jư1</sub><small>+ λu</small><sub>4,jư1</sub>

<small>u</small><sub>nư1,j</sub> <small>= λu</small><sub>nư2,jư1</sub><small>+ (1 ư 2λ)u</small><sub>nư1,jư1</sub><small>+ λu</small><sub>n,jư1</sub> = <small>λu</small><sub>nư2,jư1</sub><small>+ (1 ư 2λ)u</small><sub>nư1,jư1</sub>

Để tính giá trị của hàm <small>u(x, t)</small> ở n-1 nút tại hàng j, ta thực hiện phép nhân

ma trận A với vectơ chứa n-1 giá trị của hàng thứ j-1

*** Phương pháp sai phân lùi (backward difference method)

Tại bước thứ j theo t, ta xấp xỉ đạo hàm bởi sai phân lùi

<small>u</small><sub>t</sub> <small>≈</small> <sup>u</sup><small>i,jưui,jư1</small>

<small>△t</small> , <small>u</small><sub>xx</sub> <small>≈</small> <sup>u</sup><small>iư1,jư2ui,j+ui+1,j</small>

Thay vào phương trình (1.1), ta có

<small>△t= α</small><sup>2 u</sup><small>iư1,jư2ui,j+ui+1,j</small>

<small>u</small><sub>i,j</sub> <small>ư u</small><sub>i,jư1</sub><small>=</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2(u</small><sub>iư1,j</sub> <small>ư 2u</small><sub>i,j</sub><small>+ u</small><sub>i+1,j</sub><small>)</small>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<small>ui,j−1= (1 + 2</small><sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2)ui,j−</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2(ui−1,j+ ui+1,j)</small>

Đặt <small>λ =</small> <sup>α</sup><sub>△x</sub><sup>2</sup><sup>△t</sup><small>2</small> , ta có <small>u</small><sub>i,j−1</sub><small>= −λu</small><sub>i−1,j</sub><small>+ (1 + 2λ)u</small><sub>i,j</sub> <small>− λu</small><sub>i+1,j</sub>

Ở mỗi bước thời gian, ta cần tìm giá trị nhiệt độ tại n-1 điểm.

Với <small>t</small><sub>0</sub> <small>= 0</small> (n-1 nút trên trục hoành): <small>u(x, 0) = f (x)</small>

Với <small>t</small><sub>1</sub> <small>= △t</small> (n-1 nút ở ngay bên trên trục hoành 1 hàng):

<small>ui,0= −λui−1,1+ (1 + 2λ)ui,1− λui+1,1</small>, với i = 1, ..., n-1

<small>u</small><sub>1,0</sub> <small>= −λu</small><sub>0,1</sub><small>+ (1 + 2λ)u</small><sub>1,1</sub><small>− λu</small><sub>2,1</sub> = <small>(1 + 2λ)u</small><sub>1,1</sub><small>− λu</small><sub>2,1</sub><small>u</small><sub>2,0</sub> <small>= −λu</small><sub>1,1</sub><small>+ (1 + 2λ)u</small><sub>2,1</sub><small>− λu</small><sub>3,1</sub>

<small>u</small><sub>3,0</sub> <small>= −λu</small><sub>2,1</sub><small>+ (1 + 2λ)u</small><sub>3,1</sub><small>− λu</small><sub>4,1</sub>

<small>un−1,0= −λun−2,1+ (1 + 2λ)un−1,1− λun,1</small> = -<small>λun−2,1+ (1 + 2λ)un−1,1</small>

Với <small>t</small><sub>2</sub> <small>= 2△t</small> (n-1 nút ở hàng thứ 3 từ dưới lên):

<small>u</small><sub>i,1</sub> <small>= −λu</small><sub>i−1,2</sub><small>+ (1 + 2λ)u</small><sub>i,2</sub><small>− λu</small><sub>i+1,2</sub>, với i = 1, ..., n-1

<small>u1,1= −λu0,2+ (1 + 2λ)u1,2− λu2,2</small> = <small>(1 + 2λ)u1,2− λu2,2</small>

<small>u</small><sub>2,1</sub> <small>= −λu</small><sub>1,2</sub><small>+ (1 + 2λ)u</small><sub>2,2</sub><small>− λu</small><sub>3,2</sub>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<small>u</small><sub>3,1</sub> <small>= −λu</small><sub>2,2</sub><small>+ (1 + 2λ)u</small><sub>3,2</sub><small>− λu</small><sub>4,2</sub>

<small>u</small><sub>n−1,1</sub> <small>= −λu</small><sub>n−2,2</sub><small>+ (1 + 2λ)u</small><sub>n−1,2</sub><small>− λu</small><sub>n,2</sub> = -<small>λu</small><sub>n−2,2</sub><small>+ (1 + 2λ)u</small><sub>n−1,2</sub>

Với <small>t</small><sub>j</sub> <small>= j△t</small> (n-1 nút ở hàng thứ j+1 từ dưới lên):

<small>ui,j−1= −λui−1,j+ (1 + 2λ)ui,j− λui+1,j</small>, với i = 1, ..., n-1

<small>u</small><sub>1,j−1</sub> <small>= −λu</small><sub>0,j</sub><small>+ (1 + 2λ)u</small><sub>1,j</sub> <small>− λu</small><sub>2,j</sub> = <small>(1 + 2λ)u</small><sub>1,j</sub> <small>− λu</small><sub>2,j</sub><small>u</small><sub>2,j−1</sub> <small>= −λu</small><sub>1,j</sub><small>+ (1 + 2λ)u</small><sub>2,j</sub> <small>− λu</small><sub>3,j</sub>

<small>u</small><sub>3,j−1</sub> <small>= −λu</small><sub>2,j</sub><small>+ (1 + 2λ)u</small><sub>3,j</sub> <small>− λu</small><sub>4,j</sub>

<small>un−1,j−1= −λun−2,j+ (1 + 2λ)un−1,j− λun,j</small> = -<small>λun−2,j+ (1 + 2λ)un−1,j</small>



</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

Giải hệ phương trình, tìm được nhiệt độ ở hàng j: <small>(u</small><sub>1,j</sub><small>; u</small><sub>2,j</sub><small>; ...; u</small><sub>n−1,j</sub><small>)</small>

*** Phương pháp Crank - Nicolson

Tại bước thứ j theo t, ta xấp xỉ đạo hàm bởi sai phân tiến:

<small>u</small><sub>i−1,j</sub><small>− 2u</small><sub>i,j</sub> <small>+ u</small><sub>i+1,j</sub>

<small>△x2+</small> <sup>u</sup><sup>i−1,j+1</sup><small>− 2u</small><sub>i,j+1</sub><small>+ u</small><sub>i+1,j+1</sub><small>△x2</small>

<small>u</small><sub>i,j+1</sub><small>− u</small><sub>i,j</sub> <small>=</small> <sup>α</sup>

<small>u</small><sub>i−1,j</sub> <small>− 2u</small><sub>i,j</sub> <small>+ u</small><sub>i+1,j</sub>

<small>△x2+</small><sup>u</sup><sup>i−1,j+1</sup><small>− 2u</small><sub>i,j+1</sub><small>+ u</small><sub>i+1,j+1</sub><small>△x2</small>

Tìm nhiệt độ ở hàng 1 (j=0)

<small>−</small><sup>λ</sup><sub>2</sub><small>u</small><sub>0,1</sub><small>+ (1 + λ)u</small><sub>1,1</sub><small>−</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>2,1</sub><small>=</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>0,0</sub><small>+ (1 − λ)u</small><sub>1,0</sub><small>+</small><sup>λ</sup><sub>2</sub><small>u</small><sub>2,0</sub><small>−</small><sup>λ</sup><sub>2</sub><small>u1,1+ (1 + λ)u2,1−</small> <sup>λ</sup><sub>2</sub><small>u3,1=</small> <sup>λ</sup><sub>2</sub><small>u1,0+ (1 − λ)u2,0+</small><sup>λ</sup><sub>2</sub><small>u3,0</small>

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

với A =

<small>−</small><sup>λ</sup><sub>2</sub> <small>1 + λ−</small><sup>λ</sup><sub>2</sub> <small>...00−</small><sup>λ</sup><sub>2</sub> <small>1 + λ −</small><sup>λ</sup><sub>2</sub> <small>...0</small>

, <small>u</small><sup>(1)</sup> =

với B =

, <small>u</small><sup>(0)</sup> =

Tìm nhiệt độ ở hàng j+1 (theo t)

<small>−</small><sup>λ</sup><sub>2</sub><small>u</small><sub>0,j+1</sub><small>+ (1 + λ)u</small><sub>1,j+1</sub><small>−</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>2,j+1</sub> <small>=</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>0,j</sub> <small>+ (1 − λ)u</small><sub>1,j</sub> <small>+</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>2,j</sub><small>−</small><sup>λ</sup><sub>2</sub><small>u1,j+1+ (1 + λ)u2,j+1−</small> <sup>λ</sup><sub>2</sub><small>u3,j+1=</small> <sup>λ</sup><sub>2</sub><small>u1,j+ (1 − λ)u2,j+</small> <sup>λ</sup><sub>2</sub><small>u3,j</small>

<small>−</small><sup>λ</sup><sub>2</sub><small>u</small><sub>2,j+1</sub><small>+ (1 + λ)u</small><sub>3,j+1</sub><small>−</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>4,j+1</sub> <small>=</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>2,j</sub> <small>+ (1 − λ)u</small><sub>3,j</sub> <small>+</small> <sup>λ</sup><sub>2</sub><small>u</small><sub>4,j</sub>

<small>Au</small><sup>(1)</sup><small>= Bu</small><sup>(0)</sup>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

với A =

<small>−</small><sup>λ</sup><sub>2</sub> <small>1 + λ−</small><sup>λ</sup><sub>2</sub> <small>...00−</small><sup>λ</sup><sub>2</sub> <small>1 + λ −</small><sup>λ</sup><sub>2</sub> <small>...0</small>

, <small>u</small><sup>(1)</sup> =

với B =

, <small>u</small><sup>(0)</sup> =

*** Ưu và nhược điểm của 3 phương pháp trên:

Các phương pháp sai phân tiến, sai phân lùi và Crank-Nicolson là các phương

pháp số được sử dụng để giải quyết phương trình truyền nhiệt trong không gian

một chiều, hai chiều và ba chiều. Dưới đây là một tóm tắt về ưu điểm và nhược

điểm của mỗi phương pháp:

1. Phương pháp sai phân tiến (Forward Difference):

Ưu điểm:

- Đơn giản và dễ triển khai.

- Tốc độ tính tốn nhanh hơn so với một số phương pháp khác.

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

- Độ ổn định tương đối tốt khi áp dụng cho các vấn đề truyền nhiệt ổn định.

- Tính chính xác tương đối tốt, đặc biệt đối với vấn đề không gian và thời

gian biến đổi chậm.

Nhược điểm:

- Địi hỏi giải hệ phương trình tuyến tính lớn, làm tăng độ phức tạp tính

- Có thể gây nhiễu và không ổn định khi sử dụng bước thời gian lớn và trong

một số vấn đề không gian biến đổi nhanh.

3. Phương pháp Crank-Nicolson:

Ưu điểm:

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

- Tính ổn định cao và đảm bảo tính ổn định ngay cả khi sử dụng bước thời

gian lớn.

- Tính chính xác tương đối tốt, đặc biệt đối với vấn đề không gian và thời

gian biến đổi chậm.

- Giảm thiểu sai số so với phương pháp sai phân tiến và sai phân lùi.

Nhược điểm:

- Địi hỏi giải hệ phương trình tuyến tính lớn, làm tăng độ phức tạp tính tốn

so với phương pháp sai phân tiến.

- Tốn nhiều thời gian tính tốn hơn so với phương pháp sai phân tiến và sai

phân lùi.

Tổng quan, các phương pháp sai phân tiến, sai phân lùi và Crank-Nicolson

đều có ưu điểm và nhược điểm riêng. Sự lựa chọn phương pháp nào phụ thuộc

vào tính chất của vấn đề cần giải quyết và yêu cầu về độ chính xác và tốc độ

tính tốn. Đối với các vấn đề truyền nhiệt phức tạp trong không gian hai chiều

và ba chiều, việc sử dụng phương pháp Crank-Nicolson thường được ưu tiên do

khả năng cân bằng giữa tính ổn định và độ chính xác cao hơn so với phương

pháp sai phân tiến và sai phân lùi.

Ngoài phương pháp sai phân hữu hạn cịn có một số phương pháp khác để

giải phương trình truyền nhiệt. Dưới đây là một số phương pháp phổ biến khác:

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

1. Phương pháp phần tử hữu hạn (Finite Element Method - FEM): Phương

pháp này chia không gian thành các phần tử nhỏ hơn và xấp xỉ giá trị của biến

cần giải trên các điểm trong mỗi phần tử. Sau đó, sử dụng nguyên lý cân bằng

năng lượng, ta có thể xây dựng hệ phương trình tuyến tính và giải nó để tìm ra

giá trị biến cần giải.

2. Phương pháp phần tử hữu hạn tăng cường (Finite Element Method with

Enrichment): Phương pháp này là một mở rộng của FEM, được sử dụng khi

giá trị biến cần giải có đặc điểm khơng liên tục hoặc phương trình truyền nhiệt

có biên độ lớn tại một số vùng cụ thể. Bằng cách sử dụng các hàm cơ sở tăng

cường, phương pháp này cung cấp một độ chính xác cao hơn trong các khu vực

đặc biệt.

3. Phương pháp phần tử biên (Boundary Element Method - BEM): Phương

pháp này tập trung vào việc xấp xỉ giá trị biến cần giải trên biên của vùng quan

tâm thay vì trên tồn khơng gian. Bằng cách sử dụng phương trình biên và

nguyên lý cân bằng năng lượng, phương pháp này giảm số lượng biến và phương

trình cần giải so với phương pháp phần tử hữu hạn.

4. Phương pháp phần tử điểm (Meshless Method): Đây là một phương pháp

dựa trên việc xấp xỉ giá trị biến cần giải dựa trên các điểm trong khơng gian,

thay vì chia khơng gian thành các phần tử như FEM. Phương pháp này tránh

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

việc xử lý mạng lưới phần tử và có khả năng mơ hình hóa các vùng khơng đều

hoặc có biên độ lớn.

5. Phương pháp enthalpy (nhiệt động lực học): nghiên cứu q trình trao đổi

và chuyển hóa năng lượng dựa vào kết quả thực nghiệm từ sự quan sát của q

trình tự nhiên, từ đó tổng qt hóa thành các nguyên lý nhiệt động lưc học.

Phương pháp này mang lại độ chính xác tương đương với HBIM (phương pháp

cân bằng nhiệt).

Mỗi phương pháp có ưu điểm và nhược điểm riêng, và lựa chọn phương pháp

phù hợp phụ thuộc vào tính chất của vấn đề và yêu cầu cụ thể.

trong khơng gian hai chiều

Phương trình truyền nhiệt trong khơng gian hai chiều có dạng

<small>∂u∂t</small> <sup>= α</sup>

Sử dụng phương pháp sai phân hữu hạn bằng cách xấp xỉ các đạo hàm riêng

theo công thức sai phân

<small>∂x2≈</small> <sup>U</sup><sup>i+1,j,m</sup><sup>− 2U</sup><sup>i,j,m</sup><sup>+ U</sup><sup>i−1,j,m</sup><small>(△x)2</small>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

Thay vào phương trình truyền nhiệt (1.4), ta được

<small>△t= α(</small><sup>U</sup><small>i+1,j,m−2Ui,j,m+Ui−1,j,m</small>

<small>(△x)2+</small> <sup>U</sup><small>i,j+1,m−2Ui,j,m+Ui,j−1,m</small>

<small>(△y)2)U</small><sub>i,j,m+1</sub><small>− U</small><sub>i,j,m</sub> <small>= α△t(</small><sup>U</sup><small>i+1,j,m−2Ui,j,m+Ui−1,j,m</small>

<small>(△x)2+</small> <sup>U</sup><small>i,j+1,m−2Ui,j,m+Ui,j−1,m</small>

Phương trình truyền nhiệt trong không gian hai chiều được giải bằng phương

pháp sai phân hữu hạn. Phương pháp này chia không gian thành một lưới hữu

hạn các điểm, và sử dụng phương trình sai phân để xác định sự biến đổi của

nhiệt độ qua thời gian và không gian.

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

1.3Phương pháp số giải phương trình truyền nhiệttrong khơng gian ba chiều

Phương trình truyền nhiệt trong khơng gian ba chiều có dạng

<small>∂u∂t</small> <sup>= α</sup>

<small>∂</small><sup>2</sup><small>u∂x2+</small> <sup>∂</sup>

<small>2u∂y2+</small> <sup>∂</sup>

<small>= α(uxx+ uyy+ uzz)</small> (1.5)Với

<small>ˆ u = u(x, y, z, t)</small> là nhiệt độ như là một hàm số theo thời gian và không gian.

Sử dụng phương pháp sai phân hữu hạn bằng cách xấp xỉ các đạo hàm riêng

theo công thức sai phân

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<small>∂t</small> <sup>= U</sup><sup>t</sup> <small>≈</small> <sup>U</sup><sup>i,j,k,m+1</sup><sup>− U</sup><sup>i,j,k,m</sup><small>△t</small>

Thay vào phương trình truyền nhiệt (1.5), ta được

<small>(△z)2)U</small><sub>i,j,k,m+1</sub> <small>= U</small><sub>i,j,k,m</sub><small>+ α△t(</small><sup>U</sup><small>i+1,j,k,m−2Ui,j,k,m+Ui−1,j,k,m</small>

<small>(△x)2+</small><sup>U</sup><small>i,j+1,k,m−2Ui,j,k,m+Ui,j−1,k,m</small>

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

Chương 2

Phương pháp số giải bài toán

truyền nhiệt với biên tự do Stefan

Chương 2 gồm hai phần. Ở phần 1, chúng tơi xin giới thiệu bài tốn truyền

nhiệt một chiều được Thầy Nguyễn Quốc Lân cung cấp thuật toán chi tiết.

Chương trình được tơi viết trên matlab đã chạy ổn định, cho ra kết quả phù

hợp. Trong phần 2, chúng tơi xin giới thiệu bài tốn Stefan hai pha trong tọa

độ cầu (xem [9] - Trang 2). Phương pháp sai phân hữu hạn dùng để giải phương

trình truyền nhiệt trong bài báo trên dẫn đến một công thức phức tạp, gây khó

khăn khi viết chương trình. Vì thế, chúng tơi tìm được trong bài báo [5] - Trang

3, các tác giả giới thiệu một cách đổi biến hợp lý để đưa phương trình (2.4) về

dạng quen thuộc (2.1a), có cơng thức lặp đơn giản, dễ viết chương trình hơn.

Như vậy, chúng ta có thể dùng phương pháp của bài toán Stefan một chiều để

giải bài toán Stefan hai pha trong tọa độ cầu được cho bởi phương trình (2.4)

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

tương ứng với pha rắn và phương trình (2.5) tương ứng với pha lỏng.

Xét bài tốn truyền nhiệt một chiều với phương trình truyền nhiệt (2.1a),

điều kiện biên (2.1b), điều kiện ban đầu (2.1c), (2.1d) và biên Stefan (2.1e).

Tìm hàm nhiệt độ <small>u(x, t)</small> thỏa

Bước chia trục x: <small>△</small>x

Bước chia trục t: <small>△</small>t

Nút lưới có tọa độ (i<small>△</small>X; j<small>△</small>t)

Giá trị tại nút: u(i<small>△</small>x;j<small>△</small>t) = <small>u</small><sup>j</sup><sub>i</sub>

Vectơ <small>u</small><sup>(n)</sup> <small>=</small><sup></sup><small>u</small><sup>n</sup><sub>0</sub><small>; u</small><sup>n</sup><sub>1</sub><small>; u</small><sup>n</sup><sub>2</sub><small>; ...</small>: Giá trị nhiệt độ trên thanh cùng 1 mức thời gian

<small>s</small><sub>j</sub> <small>= s(j△t)</small>: Vị trí của biên Stefan ở thời điểm <small>j△t</small>.Ý tưởng sơ đồ số: Giả sử <small>u</small><sup>(j)</sup><small>, s</small><sub>j</sub> đã biết, cần tính <small>u</small><sup>(j+1)</sup>

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<small>ˆ</small> Bước 1: Dùng sai phân tiến theo <small>t</small> và sai phân phù hợp theo x, từ (2.1e),

Công thức xấp xỉ đạo hàm cấp 1 (*), cấp 2 (**) tại mốc chia (không cách

đều): gọi <small>f (x)</small> là đa thức nội suy spline bậc 3 biên tự nhiên của Bảng 3 mốc a

Khi đó, ta có cơng thức lắp ghép (để viết chương trình) cho sơ đồ ẩn. Công

thức này chỉ dùng cho trường hợp hay xảy ra nhất trong thực tế, khi biên <small>s</small><sub>i</sub> (i

<small>≥</small> 1) không trùng các điểm chia <small>k△x ⇒ p</small><sub>i</sub><small>> 0</small>. Trường hợp <small>s</small><sub>i</sub> trùng với điểmchia nào đó sẽ bổ sung sau (xử lý như bài toán biên cơ bản). Ký hiệu <small>µ =</small> <sub>(△x)</sub><sup>k.△t</sup><small>2</small>.

Các bước dùng để viết chương trình

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<small>ˆ</small> Bước 1: Tính <small>s</small><sub>1</sub> <small>= s</small><sub>0</sub><small>−</small> <sub>λ</sub><sup>1</sup><small>.</small><sub>△x</sub><sup>△t</sup><small>.(u</small><sup>0</sup><sub>1</sub><small>− u</small><sup>0</sup><sub>0</sub><small>)ˆ</small> Bước 2: Tính <small>m</small><sub>1</sub> <small>=</small><sup></sup> <sup>s</sup><small>1</small>

<small>1+1</small>.Vế phải <small>b</small><sub>1</sub> <small>= u</small><sup>0</sup><sub>1</sub><small>+ µu</small><sub>h</sub><small>, b</small><sub>i</sub> <small>= u</small><sup>0</sup><sub>i</sub> <small>(2 ≤ i ≤ m</small><sub>1</sub><small>)</small>.

<small>ˆ</small> Bước 6: Tính ma trận 3 đường chéo <small>A</small><sub>m</sub><sub>j+1</sub><sub>×m</sub><sub>j+1</sub> và vectơ vế phải <small>b</small>:Chéo trên <small>a</small><sub>i,i+1</sub><small>= −µ, (1 ≤ i ≤ m</small><sub>j+1</sub><small>− 1)</small>

</div>

×