Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 2 - TS. Ngô Văn Thanh
Số trang: 26
Loại file: pdf
Dung lượng: 1.48 MB
Lượt xem: 13
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 2 - Giải phương trình đại số phi tuyến. Những nội dungc hính trong chương này gồm: Phương pháp khoanh vùng (Bracketing interval), phương pháp phi đạo hàm (Methods without derivatives), phương pháp đạo hàm (Methods with derivatives).
Nội dung trích xuất từ tài liệu:
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 2 - TS. Ngô Văn Thanh TS. Ngô Văn Thanh, Viện Vật lý.Cao học vật lý – chuyên ngành Vật lý lý thuyết.Chương.2 Giải phương trình đại số phi tuyến.2.1. Phương pháp khoanh vùng (Bracketing interval) 2.1.1. Khoanh vùng nghiệm bằng cách vẽ đồ thị các hàm (Bracketing a root by plotting the graph of functions). 2.1.2. Khoanh vùng nghiệm từ trong ra ngoài (Bracketing a root by outward from an initial interval). 2.1.3. Khoanh vùng nghiệm từ ngoài vào trong (Bracketing a root by inward on an initial interval).2.2. Phương pháp phi đạo hàm (Methods without derivatives) 2.2.1. Phương pháp chia đôi (bisection method). 2.2.2. Phương pháp lặp đơn giản và thay thế liên tiếp (Simple iterative method with successive substitution). 2.2.3. Phương pháp cát tuyến (Secant method)2.3. Phương pháp đạo hàm (Methods with derivatives) 2.3.1. Phương pháp lặp Newton (Newton iterative method). 2.3.2. Phương pháp lặp Newton cho hệ các phương trình không tuyến tính (Newton iterative method for the system of non-linear equations) @2009, Ngô Văn Thanh - Viện Vật Lý2.1. Phương pháp khoanh vùng2.1.1. Khoanh vùng nghiệm bằng cách vẽ đồ thị các hàm. Một số kiểu nghiệm của một phương trình phi tuyến: @2009, Ngô Văn Thanh - Viện Vật Lý Phương trình có nghiệm trong khoảng (a, b) nếu liên tục trên khoảng (a, b). Các bước thực hiện: Vẽ đồ thị của hàm số bằng các phần mềm như Gnuplot, Mathematica, Matlab… Dựa trên đồ thị, xác định khoảng (a, b) mà nghiệm nằm trong khoảng đó. Xác định nghiệm gần đúng của phương trình x0. @2009, Ngô Văn Thanh - Viện Vật Lý2.1.2. Khoanh vùng nghiệm từ trong ra ngoài Xét hai điểm bất kỳ Tính tích Nếu tích trên thì kết thúc chương trình tính. Ngược lại, nếu Nếu thì thay giá trị Ngược lại: thì thay Với b là thừa số tùy chọn. Thực hiện các phép tính trên theo một số vòng lặp xác định. @2009, Ngô Văn Thanh - Viện Vật LýINTEGER, PARAMETER :: NTRY=50REAL, PARAMETER :: FACTOR=1.6INTEGER :: jREAL :: f1,f2if (x1 == x2) RETURNf1=func(x1)f2=func(x2)succes=.true.do j=1,NTRY if ((f1 > 0.0 .and. f2 < 0.0) .or. & (f1 < 0.0 .and. f2 > 0.0)) RETURN if (abs(f1) < abs(f2)) then x1=x1+FACTOR*(x1-x2) f1=func(x1) else x2=x2+FACTOR*(x2-x1) f2=func(x2) end ifend dosucces=.false. @2009, Ngô Văn Thanh - Viện Vật Lý2.1.3. Khoanh vùng nghiệm từ ngoài vào trong (cho phép khoanh vùng nhiều nghiệm) Xét hai điểm cho trước Chia thành n khoảng và trong đó có tối đa là nb nghiệm. Tính tích Nếu tích trên đưa ra khoảng nghiệm Thực hiện các phép tính trên cho n khoảng. @2009, Ngô Văn Thanh - Viện Vật Lý nbb=0 x=x1 dx=(x2-x1)/n fp=fx(x) do i=1,n !Loop over all intervals x=x+dx fc=fx(x) if(fc*fp.le.0.) then nbb=nbb+1 xb1(nbb)=x-dx xb2(nbb)=x if(nbb.eq.nb)goto 1 endif fp=fc enddo1 continue nb=nbb END SUBROUTINE zbrak. @2009, Ngô Văn Thanh - Viện Vật Lý2.2. Phương pháp phi đạo hàm2.2.1 Phương pháp chia đôi (bisection method). Tìm nghiệm nhanh hơn phương pháp khoanh vùng nghiệm. Có độ chính xác cao hơn. Chỉ tìm được một nghiệm nào đó khoảng (a, b). Xét khoảng (a, b) mà trong đó phương trình phi tuyến có nghiệm, tức là Chọn điểm c là điểm giữa của (a, b). Nếu như f (c) cùng dấu với f (a) thì thay khoảng (a, b) bằng (c, b). Nếu như f (c) cùng dấu với f (b) thì thay khoảng (a, b) bằng (a, c). Thực hiện qua trình lặp trên một số bước nào đó, hoặc khoảng chia đôi bé hơn một thừa số cho trước (sai số). @2009, Ngô Văn Thanh - Viện Vật Lýfmid=func(x2)f=func(x1)if (f*fmid >= 0.0) write(6,*) rtbis:root must be bracketed‘if (f < 0.0) then rtbis=x1 dx=x2-x1else rtbis=x2 dx=x1-x2end ifdo j=1,MAXIT !Bisection loop. dx=dx*0.5 xmid=rtbis+dx fmid=func(xmid) if (fmid 2.2.3 Phương pháp cát tuyến (Secant method). Áp dụng cho các hàm trơn (smooth) ở gần nghiệm. Tốc độ hội tụ nhanh hơn phương pháp bisection. Xét khoảng (a, b) m ...
Nội dung trích xuất từ tài liệu:
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 2 - TS. Ngô Văn Thanh TS. Ngô Văn Thanh, Viện Vật lý.Cao học vật lý – chuyên ngành Vật lý lý thuyết.Chương.2 Giải phương trình đại số phi tuyến.2.1. Phương pháp khoanh vùng (Bracketing interval) 2.1.1. Khoanh vùng nghiệm bằng cách vẽ đồ thị các hàm (Bracketing a root by plotting the graph of functions). 2.1.2. Khoanh vùng nghiệm từ trong ra ngoài (Bracketing a root by outward from an initial interval). 2.1.3. Khoanh vùng nghiệm từ ngoài vào trong (Bracketing a root by inward on an initial interval).2.2. Phương pháp phi đạo hàm (Methods without derivatives) 2.2.1. Phương pháp chia đôi (bisection method). 2.2.2. Phương pháp lặp đơn giản và thay thế liên tiếp (Simple iterative method with successive substitution). 2.2.3. Phương pháp cát tuyến (Secant method)2.3. Phương pháp đạo hàm (Methods with derivatives) 2.3.1. Phương pháp lặp Newton (Newton iterative method). 2.3.2. Phương pháp lặp Newton cho hệ các phương trình không tuyến tính (Newton iterative method for the system of non-linear equations) @2009, Ngô Văn Thanh - Viện Vật Lý2.1. Phương pháp khoanh vùng2.1.1. Khoanh vùng nghiệm bằng cách vẽ đồ thị các hàm. Một số kiểu nghiệm của một phương trình phi tuyến: @2009, Ngô Văn Thanh - Viện Vật Lý Phương trình có nghiệm trong khoảng (a, b) nếu liên tục trên khoảng (a, b). Các bước thực hiện: Vẽ đồ thị của hàm số bằng các phần mềm như Gnuplot, Mathematica, Matlab… Dựa trên đồ thị, xác định khoảng (a, b) mà nghiệm nằm trong khoảng đó. Xác định nghiệm gần đúng của phương trình x0. @2009, Ngô Văn Thanh - Viện Vật Lý2.1.2. Khoanh vùng nghiệm từ trong ra ngoài Xét hai điểm bất kỳ Tính tích Nếu tích trên thì kết thúc chương trình tính. Ngược lại, nếu Nếu thì thay giá trị Ngược lại: thì thay Với b là thừa số tùy chọn. Thực hiện các phép tính trên theo một số vòng lặp xác định. @2009, Ngô Văn Thanh - Viện Vật LýINTEGER, PARAMETER :: NTRY=50REAL, PARAMETER :: FACTOR=1.6INTEGER :: jREAL :: f1,f2if (x1 == x2) RETURNf1=func(x1)f2=func(x2)succes=.true.do j=1,NTRY if ((f1 > 0.0 .and. f2 < 0.0) .or. & (f1 < 0.0 .and. f2 > 0.0)) RETURN if (abs(f1) < abs(f2)) then x1=x1+FACTOR*(x1-x2) f1=func(x1) else x2=x2+FACTOR*(x2-x1) f2=func(x2) end ifend dosucces=.false. @2009, Ngô Văn Thanh - Viện Vật Lý2.1.3. Khoanh vùng nghiệm từ ngoài vào trong (cho phép khoanh vùng nhiều nghiệm) Xét hai điểm cho trước Chia thành n khoảng và trong đó có tối đa là nb nghiệm. Tính tích Nếu tích trên đưa ra khoảng nghiệm Thực hiện các phép tính trên cho n khoảng. @2009, Ngô Văn Thanh - Viện Vật Lý nbb=0 x=x1 dx=(x2-x1)/n fp=fx(x) do i=1,n !Loop over all intervals x=x+dx fc=fx(x) if(fc*fp.le.0.) then nbb=nbb+1 xb1(nbb)=x-dx xb2(nbb)=x if(nbb.eq.nb)goto 1 endif fp=fc enddo1 continue nb=nbb END SUBROUTINE zbrak. @2009, Ngô Văn Thanh - Viện Vật Lý2.2. Phương pháp phi đạo hàm2.2.1 Phương pháp chia đôi (bisection method). Tìm nghiệm nhanh hơn phương pháp khoanh vùng nghiệm. Có độ chính xác cao hơn. Chỉ tìm được một nghiệm nào đó khoảng (a, b). Xét khoảng (a, b) mà trong đó phương trình phi tuyến có nghiệm, tức là Chọn điểm c là điểm giữa của (a, b). Nếu như f (c) cùng dấu với f (a) thì thay khoảng (a, b) bằng (c, b). Nếu như f (c) cùng dấu với f (b) thì thay khoảng (a, b) bằng (a, c). Thực hiện qua trình lặp trên một số bước nào đó, hoặc khoảng chia đôi bé hơn một thừa số cho trước (sai số). @2009, Ngô Văn Thanh - Viện Vật Lýfmid=func(x2)f=func(x1)if (f*fmid >= 0.0) write(6,*) rtbis:root must be bracketed‘if (f < 0.0) then rtbis=x1 dx=x2-x1else rtbis=x2 dx=x1-x2end ifdo j=1,MAXIT !Bisection loop. dx=dx*0.5 xmid=rtbis+dx fmid=func(xmid) if (fmid 2.2.3 Phương pháp cát tuyến (Secant method). Áp dụng cho các hàm trơn (smooth) ở gần nghiệm. Tốc độ hội tụ nhanh hơn phương pháp bisection. Xét khoảng (a, b) m ...
Tìm kiếm theo từ khóa liên quan:
Applied numerical methods Ứng dụng phương pháp tính số Phương pháp tính số Phương trình đại số phi tuyến Phương pháp khoanh vùng Phương pháp phi đạo hàmGợi ý tài liệu liên quan:
-
Giáo trình Phương pháp tính và tin học chuyên ngành: Phần 1
124 trang 24 0 0 -
Bài giảng Tin học (Phần 1: Tin học ứng dụng)(cao học Vật lý): Chương 2 - TS. Ngô Văn Thanh
84 trang 19 0 0 -
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 3 - TS. Ngô Văn Thanh
28 trang 19 0 0 -
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 6 - TS. Ngô Văn Thanh
16 trang 12 0 0 -
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 5 - TS. Ngô Văn Thanh
15 trang 12 0 0 -
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 1 - TS. Ngô Văn Thanh
27 trang 10 0 0 -
86 trang 10 0 0
-
Bài giảng Tin học (Phần 1: Tin học ứng dụng)(cao học Vật lý): Chương 1 - TS. Ngô Văn Thanh
49 trang 10 0 0 -
Bài giảng Applied numerical methods (Ứng dụng phương pháp tính số): Chương 4 - TS. Ngô Văn Thanh
24 trang 10 0 0 -
4 trang 6 0 0