Bài giảng Phương pháp số trong tính toán cơ khí - Bài 2: Phương trình và hệ phương trình đại số phi tuyến cung cấp cho học viên các kiến thức về khái niệm phương trình đại số tổng quát; một số bài toán kỹ thuật đưa về phương trình phi tuyến; các cách tiếp cận để giải phương trình đại số phi tuyến; các phương pháp “bủa vây”;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
Trang 1Bài 2:
Phương trình và hệ phương trình đại số phi tuyến
Thời lượng: 6 tiết
Trang 2Khái niệm phương trình đại số tổng quát
(2)
2
2 1,2
2
0
40
Trang 4Một số bài toán kỹ thuật đưa về phương trình phi tuyến
Trang 5- PP đồ thị
- PP chia đôi đoạn
- PP vị trí sai
- PP vòng lặp điểm cố định đơn giản
Newton-Raphson
- PP dây cung
Trang 6Các phương pháp “bủa vây”
( )
2 0.146843
0 2 4 6 8 10 12 14 16 18 20 -10
0 10 20 30 40 50 60
MATLAB
c=14:0.1:16
Trang 7-0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16
14.78
Trang 8Các phương pháp “bủa vây”
( )
f x
Vùng tìm kiếm 1 Vùng tìm kiếm 2
Vùng tìm kiếm 3 Vùng tìm kiếm 4
Vùng tìm kiếm 5
1 4
Ví dụ cần giải phương trình f(x)=0 trên đoạn [0; 1]
Trang 9Nếu |a – b| > ε
thì đến bước 2 còn không thì đến bước 3
Bước 3: Hội tụ In kết quả nghiệm x* = α;
f(x*) = f(α)
Trang 10Các phương pháp “bủa vây”
Tìm điểm nghiệm của phương trình f(x)=0 trong khoảng [a, b] bằng pp chia
đôi đoạn với 5 vòng lặp
Trang 11Nếu đề yêu cầu cần thực hiện số vòng lặp sao cho sai số ước lượng của
nghiệm không vượt quá ε:
2
log 2
Trang 14Ưu điểm:
Trang 16Các phương pháp “bủa vây”
Tìm điểm nghiệm của phương trình f(x)=0 trong khoảng [a, b] bằng pp vị trí
sai cho đến khi sai số ước lượng của nghiệm nhỏ hơn ε=0.001
( ) 0.2 0.8 [ ] [ ]
2; , 2, 6
x x
f x = e − e− − a b =
Trang 17plot(x,f, '-b' , 'linewidth' ,2),grid on
2 2.5 3 3.5 4 4.5 5 5.5 6 -1
Trang 18Các phương pháp “bủa vây”
Trang 19điểm đầu và cuối trên
khoảng [a,b] của hàm
số cắt với đồ thị hàm số
f(x) tại 1 điểm C, thì khi
này điểm x0 sẽ có khẳ
năng không cố định là a hay b mà sẽ hoán đổi
liên tục, tuy nhiên bài toán sẽ không hội tụ
mà phân ly.
Trang 20Các phương pháp “bủa vây”
Có nhiều tình huống hàm số mà tốc độ hội tụ của nghiệm theo phương pháp vị trí sai là rất chậm
Trang 21Công thức (7) cho phép dự đoán được điểm tìm
kiếm nghiệm tiếp theo x i+1, khi biết được điểm
tìm kiếm trước đó x i.
Trang 22Các phương pháp mở
Tìm điểm nghiệm của phương trình f(x)=0 bằng pp vòng lặp điểm cố định đơn giản với điểm khởi đầu x0 = 1 cho đến khi sai số ước lượng của nghiệm nhỏ hơn ε=0.001
Trang 26Hội tụ Phân kỳ
Mô hình đơn điệu
Mô hình xoắn ốc
Trang 27thể không có một hàm g(x) để sử dụng phương pháp vọng lặp điểm cố định
• Trong trường hợp có nhiều nghiệm, một hàm lặp có thể mang lại một
nghiệm, trong khi một hàm khác mang lại các nghiệm khác
• Có thể xác định trước sự hội tụ hay phân kỳ cho một hàm g(x)
Phương pháp lặp điểm cố định hội tụ nếu, trong vùng lân cận của điểm cố
định, đạo hàm của g(x) có giá trị tuyệt đối nhỏ hơn 1 (còn được gọi là liên
tục Lipschitz):
Trang 29( ) ( )
( ) ( ) ( )
( ) ( )
Trang 30Lựa chọn phương án hàm số g(x) hợp lý: Ví dụ (Tiếp)
i
x i
Trang 31x i
Trang 32Lựa chọn phương án hàm số g(x) hợp lý: Ví dụ (Tiếp)
2
0.5071
9
0.44
51
x
e e
g x
e
e g
Trang 34Lựa chọn phương án hàm số g(x) hợp lý: Ví dụ (Tiếp)
Trang 35( ) ( )
( ) ( ) ( )
( ) ( )
Trang 36Lựa chọn phương án hàm số g(x) hợp lý: Ví dụ (Tiếp)
Trang 38Lựa chọn phương án hàm số g(x) hợp lý
Bước 1: Chọn g(x) = x + f(x) hoặc g(x) = x – f(x)
Bước 2: Tính đạo hàm g’(x) = 1 + f’(x) hoặc g’(x) = 1 – f’(x)
Bước 3: Vẽ đồ thị hàm g’(x) và so sánh tương quan của đồ thị đó so với 2
đường y=±1 trong khoảng [a;b]
Bước 4: Từ đó điều chỉnh hàm g’(x) = 1 ± α.f’(x) để sao cho đồ thị hàm
Trang 39( ) ( )
sẽ cắt trục hoành tại điểm x1 Với
điểm x1 ta lại làm như ở bước x0 lúc đầu Cứ như vậy đến khi nào cách
biệt giữa x i+1 và x i nhỏ hơn một sai số cho phép.
(9)
Trang 40thì:
x0 = xi
đến bước 2 còn không thì đến bước 3
f(x*) = f(xi)
Trang 43( )
f x
( )
f x
Trang 44ta xác định 2 điểm tương ứng
trên đồ thị là f(x1) và f(x2 ) Nối chúng tạo thành dây cung cắt
trục x tại điểm x3 Tiếp tục xác
định điểm tương ứng của x3trên đồ thị là f(x3 ) Lại vẽ dây
cung nối 2 điểm f(x2) và f(x3 ) cắt
trục x tại điểm x4 Tiếp tục như vậy đến khi thu được điểm gần với nghiệm của phương trình.
Trang 451 1
(10)
Trang 46Tìm điểm nghiệm của phương trình f(x)=0 trong khoảng bằng phương pháp dây cung với x1 = 15, x2 = 14, ε=0.001
1
1 1
Trang 48kỳ, nếu biết góc α, hãy tính
góc φ=θ 2 , θ 3 , θ 4
Trang 49( ) ( )
Trang 50là x0 =1
f = @(x) ((5/2)*cos(x)+cos((1/3)*pi-x)-8/3);
fplot(f, [0, 2*pi], 'm-','Linewidth',2)
title('Do thi ham
f(x)=(5/2)*cos(x)+cos((1/3)*pi-x)-8/3')
xlabel('x'),ylabel('f(x)'),grid on
Trang 52Hệ phương trình đại số phi tuyến
Trang 531010
i i
i
x x
Trang 54Hệ phương trình đại số phi tuyến
Điều kiện 1: Các hàm số sau liên tục xung quanh điểm nghiệm:
Trang 56Hệ phương trình đại số phi tuyến
Giải hệ phương trình sau với điểm khởi đầu Thực hiện 10 vòng lặp Tính chuẩn hoá sai số ước lượng của véctơ nghiệm và của véctơ hàm số.
1
0 0 2
, 2 sin 0.5 0
, 2, 2 , 2 cos 0.5 0
2 cos 0.5 ,
1) Bước 1: biến đổi hệ phương trình
Trang 57f1 = @(x,y) 2*x - sin(0.5*(x - y));
f2 = @(x,y) 2*y - cos(0.5*(x - y));
fimplicit(f1,[-5 5 -5 5], 'm-' , 'Linewidth' ,2),grid on
hold on
fimplicit(f2,[-5 5 -5 5], 'k-' , 'Linewidth' ,2),grid on
Trang 58Hệ phương trình đại số phi tuyến
2) Bước 2: Tính các đạo hàm riêng:
Trang 592 cos 0.5 ,
2 , 2, 2
Trang 60Hệ phương trình đại số phi tuyến
Biến đổi hệ phương trình (11) thành hệ phương trình có dạng:
2
10 10
i i
i
x x
Trang 61( ) ( )
1
0 0 2
, 2 sin 0.5 0
, 2, 2 , 2 cos 0.5 0
Trang 62Hệ phương trình đại số phi tuyến
2 cos 0.5 ,
2 , 2, 2
9 -0,160490847 0,493101636 2,87859E-05 1,72137E-07 5,87458E-05 8,86337E-05
10 -0,16050524 0,493102146 7,0569E-06 4,21754E-08 1,4402E-05 2,17294E-05
Phương pháp vòng lặp Gauss-Seidel có tốc độ hội tụ nhanh hơn phương pháp vòng lặp điểm cố định đơn giản
Trang 64Hệ phương trình đại số phi tuyến
Trang 65, ,
y i
y
x i
,
1 1
,
2 2
,
2 2
x
f x y f
y
f x y f
x
f x y f
f f
Trang 66Hệ phương trình đại số phi tuyến
Giải hệ phương trình sau với điểm khởi đầu Thực hiện 10 vòng lặp Tính chuẩn hoá sai số ước lượng của véctơ nghiệm và của véctơ hàm số.
1
0 0 2
, 2 sin 0.5 0
, 2, 2 , 2 cos 0.5 0
2 2
2 2
i i y
Trang 67x i
Trang 68Hệ phương trình đại số phi tuyến
Trang 69× +
Trang 70x y z
k ky
x y z
k kz
Trang 71hàm số tại mỗi vòng lặp.
( ) ( )
, , 4 2 3 9 8 4 0 , , 6 4 4 6 4 39 0 , , 0, 3, 2 , , 3 4 8 9 2 20 0
1) Vẽ đồ thị để xem trực quan nghiệm là giao điểm của 3 bề mặt:
f1 = @(x,y,z) -4*x.^2 + 2*y.^2 + 3*z.^2 + x.*y + 9*x.*z + 8*z - 4;
f2 = @(x,y,z) -6*x.^2 - 4*y.^2 + 4*z.^2 + 6*x.*y - 4*y.*z - z + 39;
f3 = @(x,y,z) - 3*y.^2 + 4*x.*y - 8*y.*z +9*y - 2*z + 20;
interval = [-5 5 -5 5 -5 5];
fimplicit3(f1,interval, 'FaceColor' , 'm' , 'EdgeColor' , 'k' , 'FaceAlpha' ,.9), hold on
fimplicit3(f2,interval, 'FaceColor' , 'g' , 'EdgeColor' , 'k' , 'FaceAlpha' ,.9), hold on
fimplicit3(f3,interval, 'FaceColor' , 'y' , 'EdgeColor' , 'k' , 'FaceAlpha' ,.9), hold on
scatter3(0,3,2,200, 'filled' , 'MarkerEdgeColor' , 'k' , 'MarkerFaceColor' ,[0 75 75])
MATLAB
Trang 725 4-3
3 2-2
1 0 -1
-1 0
-2 -31
5 -4 -5
2 3 4 5
-5 -5
-4 5 -3
4 -2
0 -1
3 0
2 1
1 2
0 3
-1
4 5
-2
( 0, 3, 2 )
Điểm khởi đầu
Trang 742) Bước 2: Tính các đạo hàm riêng:
a) Phương án 1: ( )
( ) ( )
Trang 762) Bước 2: Tính các đạo hàm riêng:
a) Phương án 3: ( )
( ) ( )
0
0
0
Trang 78Có xu hướng hội tụ.
(−1, 2,1)
Trang 79Có xu hướng hội tụ.
Trang 801) Bước 1: Tính đạo hàm riêng của các hàm số và ma trận Jacobian:
Trang 83b) Trong khoảng tìm kiếm là [3;4]
f = @(x) exp(0.2*x) - exp(-0.8*x) - 2 x0 = 15;
sol = fzero(f,x0)
a) Với điểm khởi đầu x0
sol = 3.603732449186166
b) Với khoảng tìm kiếm: f = @(x) exp(0.2*x) - exp(-0.8*x) - 2x0 = [3 4];
sol = fzero(f,x0)
Trang 84Hàm MATLAB giải phương trình đa thức bậc cao
Trang 86Hàm MATLAB giải Hệ phương trình đại số phi tuyến
x0 = [2,2];
x = fsolve(fun,x0)