Phương pháp số và lập trình - Giải phương trình vi phân
-
Upload
hajunior9x -
Category
Education
-
view
1.284 -
download
2
Transcript of Phương pháp số và lập trình - Giải phương trình vi phân
![Page 1: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/1.jpg)
PHƯƠNG PHÁP SỐPHƯƠNG PHÁP SỐVÀ LẬP TRÌNH
GV: Hoàng Đỗ Ngọc Trầm
![Page 2: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/2.jpg)
1. Giới thiệu
Vấn đề giải số phương trình vi phân
Các loại phương trình vi phân và cách giải.
1. Các phương pháp giải bài toán Cauchy
Phương pháp chuỗi lũy thừa
Giải gần đúng phương trình vi phân thường
Phương pháp chuỗi lũy thừa
Phương pháp Euler
Phương pháp Runge-Kutta
3. Các phương pháp giải bài toán điều kiện biên hai điểm
![Page 3: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/3.jpg)
1. Biết một số cách giải phương trình vi phân bậc
nhất.
2. Hiểu giải thuật và vẽ được lưu đồ tương ứng
Mục tiêu
2. Hiểu giải thuật và vẽ được lưu đồ tương ứng
cho từng phương pháp.
3. Viết được chương trình giải bài toán Cauchy.
![Page 4: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/4.jpg)
![Page 5: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/5.jpg)
![Page 6: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/6.jpg)
- Đại đa số các bài toán khoa học kỹ thuật đều có thể mô tảqua các phương trình vi phân và các điều kiện cụ thể.
- Các phương trình vi phân đặc trưng cho mối quan hệ giữacác đại lượng.
- Khó tìm lời giải giải tích do ngày càng phức tạp.
���� Giải số
Giới thiệu
���� Giải số
Có thể chia thành 2 loại:1. Phương trình vi phân đạo hàm riêng.2. Phương trình vi phân thường.
![Page 7: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/7.jpg)
Phương trình vi phân thường bậc cao
![Page 8: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/8.jpg)
Bài toán Cauchy
![Page 9: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/9.jpg)
Các phương pháp giải bài toán Cauchy
![Page 10: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/10.jpg)
Khai triển Taylor hàm y(x) tại lân cận của điểm x0:
Ta có:
Phương pháp chuỗi lũy thừa
( ) ( ) ( ) ( )2
0 0 0 0 0 0 0
1 1( ) ( ) '( ) ''( ) ... ( ) ...
2! !nny x y x y x x x y x x x y x x x
n= + − + − + + − +
Về nguyên tắc, có thể tính với n bất kì =>
![Page 11: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/11.jpg)
Phương pháp chuỗi lũy thừa
![Page 12: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/12.jpg)
Phương pháp chuỗi lũy thừa
![Page 13: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/13.jpg)
Phương pháp Euler hiện bậc nhấtCông thức sai phân hữu hạn
Công thức tổng quát:
Phương pháp Euler
y
' 11
'1 1
n nn
n n n
y yy
x
y y xy
−−
− −
−=∆
→ = + ∆
( ),y y xf x y= + ∆
0x n x+ ∆0x x
( )1 1 1,n n n ny y xf x y− − −= + ∆
Quy trình:
- Xác lập công th ức đạo hàm f(x,y),
- Nhập vào các biên x 0, x1, số điểm n cần tính, điều ki ện đầu y0
- Tính
- For i=1, n: Tính và
( )1 0 /h x x n= −
1i ix x h−= + ( )1 1 1,i i i iy y hf x y− − −= +
![Page 14: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/14.jpg)
![Page 15: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/15.jpg)
![Page 16: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/16.jpg)
![Page 17: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/17.jpg)
Phương pháp Euler
Phương pháp Euler ẩn bậc nhất
Sử dụng công thức sai phân hữu hạn tại điểm yn
' 1n nn
y yy
x−−=
∆
Công thức tổng quát
( )1 ,n n n ny y xf x y−= + ∆
![Page 18: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/18.jpg)
Phương pháp Euler
Phương pháp Euler cải tiến
Sử dụng công thức sai phân hữu hạn tại điểm giữa
Công thức tổng quát
1 21 2n n
k ky y −
+= +
\ với
1 1 1/2,2n n n n
xy y xf x y− − −
∆ = + ∆ +
2
( )1 n 1 1
12 n 1 1
,
,2 2
n
n
k hf x y
khk hf x y
− −
− −
=
= + +
![Page 19: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/19.jpg)
![Page 20: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/20.jpg)
![Page 21: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/21.jpg)
![Page 22: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/22.jpg)
Phương pháp Runge-Kutta
Khai triển Taylor bậc bốn quanh điểm ta thu đượccông thức Runge-Kutta bậc bốn:
+ = + + + +
=
1 1 2 3 4
1
1( 2 2 )6
( , )
k k
k k
y y K K K K
K hf x y
Kh
/ 2x h+
= + +
= + +
= + +
12
23
4 3
( , )2 2
( , )2 2
( , )
k k
k k
k k
KhK hf x y
KhK hf x y
K hf x h y K
![Page 23: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/23.jpg)
![Page 24: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/24.jpg)
![Page 25: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/25.jpg)
![Page 26: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/26.jpg)
![Page 27: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/27.jpg)
![Page 28: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/28.jpg)
![Page 29: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/29.jpg)
![Page 30: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/30.jpg)
![Page 31: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/31.jpg)
![Page 32: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/32.jpg)
![Page 33: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/33.jpg)
![Page 34: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/34.jpg)
![Page 35: Phương pháp số và lập trình - Giải phương trình vi phân](https://reader033.fdocument.pub/reader033/viewer/2022042510/5587ed71d8b42a854b8b4690/html5/thumbnails/35.jpg)