Chương 1 của luận văn trình bày một số kiến thức chuẩn bị, bao gồm bài toán giá trị ban đầu cho phương trình vi phân tuyến tính bậc nhất, phương pháp xấp xỉ Euler tiến và cách sử dụng Excel để giải gần đúng bài toán giá trị ban đầu. Chương 2 trình bày một số mô hình toán học trong sinh học, khoa học kỹ thuật và công nghiệp sử dụng phương trình vi phân tuyến tính bậc nhất, ví dụ như các bài toán về sự sinh trưởng và phát triển của một quần thể động vật, về sự phân rã chất phóng xạ, về việc làm nóng/mát các vật thể, về hỗn hợp dung dịch, về vận tốc của một vật thể rơi trong không khí, về các mạch điện, về sự chuyển động của một vật thể trượt. Đối với mỗi mô hình này luận văn đều trình bày chi tiết về cách xây dựng mô hình, cách mô phỏng trong Excel cùng một số bài tập liên quan nhằm hướng dẫn cho học sinh tiếp thu được tốt hơn. KIẾN THỨC CHUẨN BỊ 1.
Phương trình vi phân tuyến tính và bài toán giá trị ban đầu Rất nhiều bài toán trong sinh học, khoa học kỹ thuật và công nghiệp gắn liền với việc giải một phương trình vi phân, tức là một phương trình thể hiện mối liên hệ của một hàm số chưa biết (cần tìm) với các đạo hàm của nó, xem [1], [5], [6]. Luận văn này tập trung vào việc phân tích và mô phỏng (sử dụng phầm mềm Excel, xem [2], [4]) các phương trình vi phân tuyến tính bậc nhất có dạng A(t)y′ (t) + B(t)y(t) = C(t), (1.1) với mọi t ∈ [t0 ,t f ) trong đó t là biến thời gian, y(t) là hàm chưa biết, A(t), B(t), C(t) là các hàm số nhận giá trị thực cho trước và liên tục trong khoảng [t0 ,t f ) đang xét. Nếu trong khoảng đang xét mà A(t) ̸= 0 ∀t thì bằng cách chia cho A(t), phương trình trên có thể đưa được về dạng y′ (t) + P(t)y(t) = Q(t).2), ta cũng xét phương trình tuyến tính thuần nhất tương ứng có dạng y′ (t) + P(t)y(t) = 0.3) Các phương trình (1.3) đều có vô số nghiệm. Thông thường thì các phương trình đó cần được ghép cặp với một thông tin bổ sung (điều kiện ban đầu, điều kiện biên) để dẫn đến sự tồn tại duy nhất nghiệm.
Trong nhiều ứng dụng, người ta quan tâm đến bài toán giá trị ban đầu ( y′ (t) + P(t)y(t) = Q(t) (1. trong đó phương trình thứ hai được gọi là điều kiện ban đầu. Bài toán giá trị ban đầu (1.4) có công thức nghiệm tường minh, còn được gọi là công thức biến thiên hằng số (variational of constant). Để đảm bảo cho tính toàn vẹn của luận văn, và phù hợp với học sinh phổ thông, cách xây dựng các công thức này sẽ được trình bày lại chi tiết như sau đây.
Bước 1: Xét phương trình tuyến tính thuần nhất (1. Giả sử y(t) ̸= 0 khi đó phương trình (1.3) đưa được về dạng y′ (t) = − P(t). t0 Vì vậy ta có Rt − P(s)ds y(t) = y(t0 ) e t0 .5) Trong trường hợp điều kiện ban đầu chưa biết, ta có thể xét công thức nghiệm của phương trình (1.3) dưới dạng Rt − P(s)ds y(t) = C e t0 .6) Bước 2: Trong bước này ta đi tìm nghiệm của (1.2) có dạng tương tự (1.6), tuy nhiên ở đây thay vì hằng số C ta sẽ xét hàm C(t). dt dt Thay hệ thức này vào phương trình (1.2) ta có Rt Rt Rt dC −t0 P(s)ds − P(s)ds t0 − P(s)ds e − P(t)C e + P(t) C e t0 = Q(t).
dt Rt dC −t0 P(s)ds Do đó e = Q(t). Điều này dẫn đến dt Rt P(s)ds C′ (t) = et0 Q(t). t0 t0 10 Thay C(t) vào công thức (1.7) và chú ý rằng y(t0 ) = C(t0 ) ta thu được Rt Zt − Rt P(z)dz − P(s)ds t0 y(t) = y(t0 ) e + e s Q(s) ds. Tìm công thức nghiệm tường minh cho bài toán giá trị ban đầu ′ y(t) y (t) − = t 2 ∀t > 1, t y(1) = y.
1 Áp dụng công thức (1.8) với P (t) = − , Q(t) = t 2 ta có t Rt 1 Zt Rt 1 t3 s ds z dz 2 1 y(t) = y(1) e1 + es s ds = y0 − t+. 2 2 1 t3 1 Vậy nghiệm của phương trình là y(t) = + y0 − t. Trong một số bài toán, khi ta chưa được cho trước điều kiện ban đầu thì thay vì công thức (1.8) ta sẽ sử dụng công thức dựa trên nguyên hàm thay vì tích phân như sau R R Z R − P(t)dt − P(t)dt y(t) = C e +e e P(t)dt Q(t) dt. Giải gần đúng bài toán giá trị ban đầu bằng phương pháp Euler Xét bài toán giá trị ban đầu (1.4), ta thấy rằng có công thức nghiệm tường minh Rt (1.
Tuy vậy, việc tính toán chính xác tích phân P(s)ds không phải luôn luôn thực t0 hiện được. Mặt khác, trong nhiều bài toán ứng dụng trong thực tiễn, ta chỉ cần tính xấp xỉ nghiệm đến một mức độ chính xác nhất định. Chính vì vậy các phương pháp số được xây dựng để xấp xỉ nghiệm của bài toán (1. Để phù hợp với trình độ của học sinh phổ thông trung học, luận văn này chỉ xét phương pháp Euler tiến.
Đây là một phương pháp cơ bản và tương đối đơn giản nhưng vẫn thường được sử dụng, xem [2]. Cơ sở của phương pháp Euler tiến dựa trên việc xấp xỉ đạo hàm bởi sai phân y(t + h) − y(t) y′ (t) ≈. h 11 trong đó h là một số thực dương đủ nhỏ. Để giải bài toán giá trị ban đầu (1.4), ta chia nhỏ đoạn [t0 ,t f ) thành N đoạn nhỏ bằng nhau, mỗi đoạn có độ dài h (được gọi là bước).
Đặt tn = t0 + nh, với n = 0, 1, 2, 3. Ta đặt giá trị xấp xỉ của nghiệm tại thời điểm tn là yn ≈ y(tn ) khi đó ta có thể tính lần lượt yn , n = 0, 1, 2,. sử dụng công thức Euler tiến yn+1 ≈ (1 − h P(tn ) ) yn + h Q(tn ).10) Trong ví dụ minh họa dưới đây, ta sẽ thấy rằng phương pháp Euler là tương đối chính xác nếu như bước h là đủ nhỏ. Giá trị bước h càng nhỏ thì sai số càng thấp.
Xét bài toán giá trị ban đầu được đề cập trong Ví dụ 1. ta thấy rằng nghiệm chính xác của bài toán (1. 2 Giả sử rằng ta muốn tìm nghiệm xấp xỉ của bài toán (1.11) trên đoạn [1, 3], chính xác đến 4 chữ số thập phân bằng cách sử dụng phương pháp Euler tiến. Ta chia đoạn [1, 3] thành N đoạn nhỏ có độ dài h và đặt tn := 1 + n h, yn := y(tn ).
Khi đó ta có thể tính lần lượt các giá trị xấp xỉ yn với n = 0, 1, 2,. sử dụng công thức h yn+1 ≈ (1 + ) yn + h tn2. tn Tại mỗi thời điểm tn ta xác định các công thức sai số như sau Sai số tuyệt đối tại thời điểm tn là ∆yn := |y(tn ) − yn | Sai số tương đối tại thời điểm tn là |y(tn ) − yn | ∆yn δ yn := × 100% = × 100% |y(tn )| |y(tn )| Trong khi sai số tuyệt đối xác định sai số so với nghiệm chính xác thì sai số tương đối cho thấy mức độ sai số tính theo phần trăm. Sai số tương đối phù hợp hơn sai số tuyệt đối trong những bài toán mà nghiệm chính xác quá lớn hoặc quá nhỏ, xem [2,4].
Sau đây ta đi thực hiện quá trình xấp xỉ nghiệm trên trong Excel. 12 Bước 1: Nhập các tham số sử dụng trong công thức (h, n, y(1)). Bước 2: Lập bảng gồm các cột: n, tn , nghiệm xấp xỉ, nghiệm chính xác, sai số tuyệt đối, sai số tương đối (%). Tính giá trị ở các cột.
+ Cột n: nhận các giá trị từ 0 đến 40. + Cột tn được tính bằng công thức tn := 1 + n h h + Cột yn xấp xỉ được tính bằng công thức yn+1 ≈ (1 + ) yn + h tn2. tn 13 t3 + Cột yn chính xác được tính bằng công thức y(t) = + t. 2 + Sai số tuyệt đối được tính bằng công thức |yn chính xác − yn xấp xỉ | + Sai số tương đối (%) được tính bằng công thức (Sai số tuyệt đối : yn chính xác) x 100 14 Bước 4.
Vẽ đồ thị + Ta trích xuất 1 bảng gồm các giá trị tương ứng với số thứ tự n chia hết cho 5 (ta sử dụng filter để lọc dữ liệu) + Từ bảng trích xuất ta vẽ đồ thị nghiệm xấp xỉ: Chọn 2 cột tn và nghiệm xấp xỉ → chọn insert → chọn insert line or Area chart → chọn vào dạng đồ thị phù hợp + Để vẽ đồ thị sai số tuyệt đối và sai số tương đối của nghiệm xấp xỉ: Chọn 2 cột sai số tuyệt đối và sai số tương đối → chọn insert → chọn insert line or Area chart → chọn vào dạng đồ thị phù hợp 15 Xét trường hợp h = 0, 1, trong bảng dưới đây ta giải số nghiệm của (1.11) cùng với sai số tuyệt đối và sai số tương đối tại mỗi giá trị tn. Nghiệm chính Sai số tuyệt Sai số tương n tn Nghiệm xấp xỉ xác đối đối (%) 0 1,0 1,500000 1,500000 0,000000 0,000000 1 1,1 1,750000 1,765500 0,015500 0,877938 2 1,2 2,030091 2,064000 0,033909 1,642882 3 1,3 2,343265 2,398500 0,055235 2,302891 4 1,4 2,692516 2,772000 0,079484 2,867377 5 1,5 3,080839 3,187500 0,106661 3,346230 6 1,6 3,511228 3,648000 0,136772 3,749228 7 1,7 3,986680 4,156500 0,169820 4,085651 8 1,8 4,510191 4,716000 0,205809 4,364069 9 1,9 5,084757 5,329500 0,244743 4,592238 10 2 5,713375 6,000000 0,286625 4,777076 11 2,1 6,399044 6,730500 0,331456 4,924683 12 2,2 7,144761 7,524000 0,379239 5,040396 13 2,3 7,953522 8,383500 0,429978 5,128855 14 2,4 8,828328 9,312000 0,483672 5,194075 15 2,5 9,772175 10,312500 0,540325 5,239518 Bảng 1. Bảng số liệu giá trị nghiệm bằng phương pháp Euler tiến với h = 0, 1. Biểu đồ nghiệm xấp xỉ và sai số với bước h = 0, 1.
Để minh họa tính chính xác của phương pháp Euler tiến, ta sẽ đi tìm hiểu xem sai số của nghiệm sẽ giảm như thế nào khi ta giảm bước đi một nửa. Kết quả được thể hiện trong Bảng 2. Số Giá trị xấp xỉ Giá trị chính Sai số tuyệt Sai số tương Bước h đoạn N y(t) tại t=3 xác y(t=3) đối đối (%) 0,4 5 13,368928 16,500000 3,131072 18,976191 0,2 10 14,824187 16,500000 1,675813 10,156440 0,1 20 15,631981 16,500000 0,868019 5,260724 0,05 40 16,058116 16,500000 0,441884 2,678085 Bảng 2. Kết quả xấp xỉ tính bằng phương pháp Euler tiến với giá trị bước khác nhau.