ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN PHƯƠNG PHÁP TÍNH Group 4 Giảng viên TS Đậu Thế Phiệt TP HCM 2022 Danh sách thành viên STT Họ Tên MSSV Tiến độ hoàn thành 1 Huỳnh Vă[.]
ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN PHƯƠNG PHÁP TÍNH Group Giảng viên: TS Đậu Thế Phiệt TP.HCM - 2022 Danh sách thành viên STT Họ Tên MSSV Tiến độ hoàn thành Huỳnh Văn Quốc Việt 1713947 100% Hoàng Quốc Huy 1810934 100% Đào Văn Tùng 2014996 100% Trần Hữu Hiếu 2013165 100% Ngô Vĩnh Phát 2014080 100% Nguyễn Đăng Hoằng 1913466 100% LỜI NÓI ĐẦU Phương pháp tính mơn học đại cương có tầm quan trọng sinh viên ĐH Bách Khoa nói riêng sinh viên ngành khối khoa học kỹ thuật cơng nghệ nói chung Mục đích mơn học cung cấp đầy đủ nội dung phương pháp tính dùng cho ngành khoa học kỹ thuật Nó giúp sinh viên khối kỹ thuật tiếp thu vấn đề cách nhẹ nhàng trang bị kỹ cho người học tự phát triển khả áp dụng toán học vào tốn thực tế Mơn phương pháp tính bao gồm kiến thức tìm gần nghiệm cho phương trình vi tích phân hàm phức tạp, lý thuyết sai số Cùng với chuẩn đầu ra: Nhắc lại định nghĩa, tính chất, cách tính, vận dụng lý thuyết vào toán áp dụng tốn thực tế , có khả hoạt động nhóm Mục lục CƠ SỞ LÝ THUYẾT I Problem Problem a Cơng thức hình thang b Công thức Simpson 1/3 c Công thức Simpson 8/3 Problem a Phương pháp chụp b Phương pháp sai phân hữu hạn II Code Matlab III Kết 13 Problem 13 Problem 14 Problem 15 I CƠ SỞ LÝ THUYẾT Problem Trường hợp 𝑦 = 𝐴𝑒 −1.5𝑡 + 𝐵𝑒 −0.3𝑡 + 𝐶𝑒 −0.05𝑡 Có giá trị t p(t), lúc ta lập hệ phương trình với ẩn A, B C Trong hệ có cột hàng giá trị ứng với giá trị p(t) 𝐴𝑒 −1.5𝑡𝑖 + 𝐵𝑒 −0.3𝑡𝑖 + 𝐶𝑒 −0.05𝑡𝑖 = 𝑝 (𝑡𝑖 ) 𝐴𝑒 −1.5𝑡1 + 𝐵𝑒 −0.3𝑡1 + 𝐶𝑒 −0.05𝑡1 = 𝐴𝑒 −1.5𝑡2 + 𝐵𝑒 −0.3𝑡2 + 𝐶𝑒 −0.05𝑡2 = 4.4 + 𝐶𝑒 −0.05𝑡3 = 3.2 𝐴𝑒 −1.5𝑡3 + 𝐵𝑒 −0.3𝑡… {𝐴𝑒 −1.5𝑡9 + 𝐵𝑒 −0.3𝑡9 + 𝐶𝑒 −0.05𝑡9 = 1.1 Để tìm giá trị A, B C ta áp dụng cách chia ma trận, lấy Vector p(t) chia cho ma trận hệ số bên vế trái, ta thu hệ số A, B C Problem a Cơng thức hình thang chia đoạn [a, b] thành n đoạn nhỏ với bước chia ℎ = 𝑏−𝑎 𝑛 Khi a = x0, x1 = x0 + h, …, xk = x0 +kh, …, xn = x0 + nh yk = f(xk), k = 0, 1, …, n Sử dụng cơng thức hình thang cho đoạn [xk, xk+1] ta được: 𝑏 𝑥1 𝑥2 𝑥𝑛 ∫ 𝑓 (𝑥 )𝑑𝑥 = ∫ 𝑓 (𝑥 )𝑑𝑥 + ∫ 𝑓(𝑥 )𝑑𝑥 + ⋯ + ∫ 𝑓 (𝑥 )𝑑𝑥 𝑎 𝑥0 𝑥1 𝑥𝑛−1 ℎ ℎ ℎ ≈ (𝑦0 + 𝑦1 ) + (𝑦2 + 𝑦1 ) + ⋯ + (𝑦𝑛−1 + 𝑦𝑛 ) 2 b Cơng thức Simpson 1/3 Tìm giá trị gần tích phân xác định sau: 𝑏 𝐼 = ∫ 𝑓 (𝑥 )𝑑𝑥 𝑎 Trong 𝑓(𝑥) hàm liên tục khả vi đoạn [a;b] Sử dụng công thức Simpson, cụ thể sau: Chia đoạn [a;b] thành đoạn với mốc 𝑥1 = 𝑎; 𝑥2 = 𝑎+𝑏 ; 𝑥3 = 𝑏 ta có giá trị tương ứng: 𝑦1 = 𝑓 (𝑥1);𝑦2 = 𝑓(𝑥2 ); 𝑦3 = 𝑓(𝑥3 ) Khi ta có được: ℎ 𝑏−𝑎 (2) 𝐼 = (𝑦1 + 4𝑦2 + 𝑦3 ) 𝑣ớ𝑖 ℎ = Công thức (2) gọi công thức Simpson đơn giản Để gia tăng độ xác lấy tích phân khoảng lớn hơn, khoảng (a,b) chia nhỏ thành n bước Việc định trị qua điểm (tương đương với việc có hai khoảng) khoảng đòi hỏi phải có số chẳn khoảng Nghĩa khai triển số khoảng dạng n = 2k Ta có: ℎ = 𝑏−𝑎 2𝑘 mốc 𝑥𝑖 = 𝑎 + 𝑖ℎ; 𝑖 = [0; 2𝑘] Giá trị hàm tuong ứng: 𝑦𝑖 = 𝑓(𝑥𝑖 ) 𝑖 = [0; 2𝑘] Ta có phép biến đổi: 𝑏 𝑥2 𝑥4 𝑥2𝑘 𝐼 = ∫ 𝑓(𝑥 )𝑑𝑥 = ∫ 𝑓(𝑥 )𝑑𝑥 + ∫ 𝑓 (𝑥 )𝑑𝑥 + ⋯ + ∫ 𝑎 𝑥0 𝑥2 𝑓(𝑥 )𝑑𝑥 𝑥2𝑘−2 ℎ ℎ ℎ ≈ (𝑦0 + 4𝑦1 + 𝑦2 ) + (𝑦2 + 4𝑦3 + 𝑦4 ) + ⋯ + (𝑦2𝑘−2 + 4𝑦2𝑘−1 + 𝑦2𝑘 ) 3 ℎ ≈ [𝑦0 + 𝑦2𝑘 + 4(𝑦1 + 𝑦3 + ⋯ + 𝑦2𝑘−1 ) + 2(𝑦2 + 𝑦4 + ⋯ + 𝑦2𝑘−2 )] c Công thức Simpson 8/3 Cơng thức Simpson 8/3 có dạng sau: (y + 2(y3 + y6 + +yn−3 ) + 3(y1 + y2 + y4 + y5 + +yn−2 + yn−1 ) + yn) 3 Problem a Phương pháp chụp Phương pháp Shooting áp dụng để giải toán phương trình vi phân bậc với điều kiện biên Giả sử, ta có phương trình vi phân bậc với điều kiện biên sau: 𝑦"(𝑥) = 𝑓(𝑥), 𝑦(𝑥0 ) = 𝑎, 𝑦(𝑥𝑛 ) = 𝑏, 𝑥0 ≤ 𝑥 ≤ 𝑥𝑛 Để giải tốn trên, ta đưa phương trình vi phân bậc dạng hệ phương trình vi phân bậc toán giá trị ban đầu Đặt 𝑥 = 𝑦 ′ → 𝑥 ′ = 𝑦” Phương trình vi phân bậc ban đầu trở thành dạng: 𝑦′ = 𝑥 𝑥 ′ = 𝑓(𝑥) 𝑥(𝑥0 ) = 𝑦 ′ (𝑥0 ) =? { 𝑦 (𝑥0 ) = 𝑎 Phương pháp chụp yêu cầu ta phải tự đưa dự đoán cho giá trị y’(x0), sau lần lặp giá trị thay đổi theo dự đoán chủ quan người giải Sau đưa dự đốn giá trị, ta áp dụng phương pháp để giải hệ phương vi phân Runge – kutta bậc phương pháp Euler b Phương pháp sai phân hữu hạn 𝑝 (𝑥 )𝑦"(𝑥) + 𝑞(𝑥)𝑦′(𝑥) + 𝑟(𝑥)𝑦(𝑥) = 𝑓(𝑥), 𝑎 < 𝑥 < 𝑏 Xét toán biên { 𝑦 (𝑎 ) = 𝛼, 𝑦 (𝑏) = 𝛽 Với phương pháp sai phân hữu hạn, chọn số tự nhiên n >0 Chia đoạn [a, b] thành n đoạn điểm chia x0 = a, xk = x0 +kh, k = 1, 2, …, n-1, xn = b với ℎ = 𝑏−𝑎 𝑛 Tại nút xk, k = 1, 2, …, n-1 bên đoạn [a, b] sử dụng cơng thức sai phân hướng tâm, ta có: 𝑦 ′ (𝑥𝑘 ) ≈ 𝑦"(𝑥𝑘 ) ≈ 𝑦 (𝑥𝑘+1 ) − 𝑦(𝑥𝑘−1 ) 𝑦𝑘+1 − 𝑦𝑘−1 = 2ℎ 2ℎ 𝑦(𝑥𝑘+1 ) − 2𝑦(𝑥𝑘 ) + 𝑦(𝑥𝑘−1 ) 𝑦𝑘+1 − 2𝑦𝑘 + 𝑦𝑘−1 = ℎ2 ℎ2 Thay vào phương trình cho ta 𝑝𝑘 𝑦𝑘+1 − 2𝑦𝑘 + 𝑦𝑘−1 𝑦𝑘+1 − 𝑦𝑘−1 + 𝑞 + 𝑟𝑘 𝑦𝑘 = 𝑓𝑘 𝑘 ℎ2 2ℎ ∀𝑘 = 1,2, … , 𝑛 − Với 𝑝𝑘 = 𝑝(𝑥𝑘 ), 𝑞𝑘 = 𝑞(𝑥𝑘 ), 𝑟𝑘 = 𝑟(𝑥𝑘 ), 𝑓𝑘 = 𝑓(𝑥𝑘 ) Từ điều kiện biên 𝑦(𝑎 ) = 𝛼, 𝑦(𝑏) = 𝛽, sau biến đổi ta thu hệ phương trình 𝑦0 = 𝛼, 𝑦𝑛 = 𝛽 2𝑝𝑘 𝑝𝑘 𝑞𝑘 { 𝑝𝑘 𝑞𝑘 ( − ) 𝑦𝑘−1 + (𝑟𝑘 − ) 𝑦𝑘 + ( + ) 𝑦𝑘+1 = 𝑓𝑘 , ∀𝑘 = 1,2, … , 𝑛 − ℎ 2ℎ ℎ ℎ 2ℎ Đây hệ phương trình đại số tuyến tính cấp n-1: AY=B với A ma trận bên 2𝑝1 ℎ2 𝑝2 𝑞2 − ℎ2 2ℎ … ( 𝑟1 − 𝑝1 𝑞1 + ℎ2 2ℎ 2𝑝2 𝑟2 − ℎ … 0 … 𝑝2 𝑞2 + … ℎ2 2ℎ… … … 2𝑝 … 𝑟𝑛−1 − 𝑛−1 ℎ2 ) 𝑌 = [𝑦1 , 𝑦2 , … , 𝑦𝑛−1 ]𝑇 𝑝 𝑞 𝑓1 −( 21− 1)𝛼 ℎ Và 𝐵 = 2ℎ 𝑓2 … 𝑓𝑛−2 𝑝𝑛−1 𝑞𝑛−1 + )𝛽 ℎ2 2ℎ (𝑓𝑛−1 −( II ) Code Matlab function[]=Project1() disp('>Problem 1Problem 2Problem 3