Bài giảng Matlab ứng dụng trong kỹ thuật
Cũng giống như hầu hế t các ngô n ngữ lậ p trình khá c, MATLAB cũng
cung cấp nhữ ng biể u thứ c toá n họ c, nhưng không giố ng cá c ngôn ngữ lập trình
khá c, hầ u hế t cá c biể u thứ c này đề u liê n quan đến ma trậ n.
? Biế n số ( variables)
? Số (Numbers)
? Toá n tử ( Operaters)
? Hà m (Functions)
2 1 1 2 2 1 13 3 3 3 1 1 2 2 1 1 2 2 1 1; ( ) ( ) 1 2 ; ( ) ( ) 0 2; ( ) ( ) 3 ; ( ) ( ) 0 f t w f t w f t w w dt f t t w f t w f t w t w t tdt f t t w f t w f t w t w t t dt f t t w f t w f t w t w t t dt Giải hệ này ta được 1 2 1 2 11; 3 t t Nên ta có 1 2 1 1, 3 3 I t t f f Vì vậy ta có công thức tổng quát tính tích phân Gauss với N điểm Gauss 1 2 , 1 , ,..., N N N i i i I t t t f t Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 68 Matlab ứng dụng trong kỹ thuật Trong công thức tích phân Gauss, người ta giả sử rằng tích phân của một hàm f(x) được lấy trên khoảng 11 x . Để tính tích phân trên miền a b bất kỳ ta tiến hành đổi biến bằng cách đặt tabbax 22 Ta được 1 1 1 1 ( ) 2 2 2 b a a b b a b af x dx f t dt f x t dt . 1 2 , 1 , ,..., 2 N N N i i i b aI x x x f x với 2 i i b a t a b x Bảng Gauss bài toán 1 chiều Số điểm Vị trí Trọng số bậc 1 0 2.00000000000000 1 -0.577350269189626 -1.0000000000000 2 0.577350269189626 1.0000000000000 3 -0.774596669241483 -0.555555555555556 0 0.888888888888889 3 0.774596669241483 0.555555555555556 5 -0.861136311594053 -0.347854845137454 -0.339981043584856 -0.652145154862546 0.339981043584856 0.652145154862546 4 0.861136311594053 0.347854845137454 7 -0.906179845938664 -0.236926885056189 -0.538469310105683 -0.478628670499366 0 0.568888888888889 0.538469310105683 0.478628670499366 5 0.906179845938664 0.236926885056189 9 -0.932469514203152 -0.171324492379170 -0.661209386466264 -0.360761573048139 -0.238619186083197 -0.467913934572691 0.238619186083197 0.467913934572691 0.661209386466264 0.360761573048139 6 0.932469514203152 0.171324492379170 11 Chương trình Matlab tính tích phân 2 0 222 0 2 1)( dxxdxxfS bằng luật Gauss, với năm điểm Gauss Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 69 Matlab ứng dụng trong kỹ thuật III. BÀI TẬP ỨNG DỤNG Bài 1: Tính trọng tâm của miền giới hạn bởi trục x, trục y và một phần tư ellipse Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 70 Matlab ứng dụng trong kỹ thuật Bài 2: Tính diện tích của miền giới hạn bởi các đường 22 3,x f y y x g y y Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 71 Matlab ứng dụng trong kỹ thuật Bài 3: Một hồ bơi hình tròn đường kính 24 ft, chiều cao của hồ là 5 ft, mực nước chứa trong hồ là 4 ft. Tính công cần thiết để bơm tất cả nước ra khỏi hồ. Cho tỉ khối của nước là 362.5 /lb ft Diện tích đáy hồ 2 212 144A r Vi phân chiều cao dz của mực nước có thể tích, trọng lượng là 144 ; 144dV Adz dz dF dV dz Công cần thiết để bơm lượng nước này lên độ cao z là 144dW z dF zdz Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 72 Matlab ứng dụng trong kỹ thuật Khoảng cách từ mặt thoáng đến bờ hồ là 1 ft và khoảng cách từ đáy hồ đến bờ hồ là 5 ft. Vì vậy ta có 5 1 144W dW zdz Bài 4: Một tải nâng tác dụng lên cánh máy bay được mô tả theo quy luật 1000 sin /w x x x lb ft , cánh máy bay được mô hình như dầm bị ngàm một đầu như hình vẽ. Tính phản lực, lực cắt, moment uốn phát sinh trong cánh, vẽ biểu đồ lực cắt và moment uốn này. Chương trình Matlab Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 73 Matlab ứng dụng trong kỹ thuật Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 74 Matlab ứng dụng trong kỹ thuật Chương V PHƯƠNG TRÌNH VI PHÂN THƯỜNG Phương trình vi phân thường cấp một có dạng 'y t ay t r với 00y y I. SỬ DỤNG HÀM CỦA MATLAB ĐỂ GIẢI PHƯƠNG TRÌNH VI PHÂN THƯỜNG: dsolve, solver 1. Giải phương trình (hệ phương trình) vi phân thường bằng dsolve Cú pháp r = dsolve('eq1,eq2,...', 'cond1,cond2,...', 'v') Chú thích Giải phương trình (hệ phương trình) vi phân thường eq1, eq2,… với biến độc lập v và điều kiện biên/điều kiện đầu cond1, cond2,… Biến độc lập mặc định là t D kí hiệu cho đạo hàm đối với biến độc lập. Điều kiện biên/đầu được nhập dưới dạng y(a) = b hoặc Dy(a) = b với y là biến phụ thuộc, a, b là hằng số. Nếu số điều kiện nhỏ hơn số biến phụ thuộc thì nghiệm sẽ chứa các hằng số C bất kỳ. Ví dụ Kết quả dsolve('Dy = a*y') exp(a*t)*C1 dsolve('Df = f + sin(t)') -1/2*cos(t)-1/2*sin(t)+exp(t)*C1 dsolve('(Dy)^2 + y^2 = 1','s') -sin(-s+C1) dsolve('Dy = a*y', 'y(0) = b') exp(a*t)*b dsolve('D2y = -a^2*y',… 'y(0) = 1', 'Dy(pi/a) = 0') cos(a*t) dsolve('Dx = y', 'Dy = -x') x = cos(t)*C1+sin(t)*C2 y = -sin(t)*C1+cos(t)*C2 Ví dụ Giải phương trình vi phân thường cấp hai 81 16cos 7y y t với điều Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 75 Matlab ứng dụng trong kỹ thuật kiện đầu '0 0, 0 0y y Giải hệ phương trình vi phân thường 2 2 4 3 4 t t x t x t x t y t e y x t y t e 2. Giải bài toán giá trị đầu cho hệ phương trình vi phân thường (ODEs) bằng solver Ơû đây solver tương ứng với ode45, ode23, ode113, ode15s, ode23s, ode23t, ode23tb Cú pháp [T,Y] = solver(odefun,tspan,y0) Chú thích odefun là hàm bên vế phải của phương trình ' ,y f t y tspan là khoảng lấy tích phân [t0 tf] để có được nghiệm tại những thời điểm xác định. tspan = [t0,t1,...,tf]. Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 76 Matlab ứng dụng trong kỹ thuật y0 là vector điều kiện đầu. Giải phương trình vi phân thường ' 1y t y t với 0 0y Giải phương trình vi phân thường cấp hai 2 0 siny t By t y t A t Đặt z x đưa phương trình vi phân cấp hai thành hệ hai phương trình vi phân cấp một 20 sin x z z A t Bz x đưa về dạng vector bằng cách đặt 1 2 y x y z Cuối cùng ta được 1 2 2 2 0 2 1sin y y y A t By y Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 77 Matlab ứng dụng trong kỹ thuật II. GIẢI PHƯƠNG TRÌNH VI PHÂN THƯỜNG BẰNG PHƯƠNG PHÁP SỐ 1. Phương pháp Euler Cho phương trình vi phân cấp một 'y t ay t r với 00y y Để giải phương trình vi phân này bằng phương pháp Euler ta xấp xỉ đạo hàm bậc nhất ' y t h y t y t h thế vào phương trình trên ta được y t h y t ay t r h 1y t h ah y t hr với 00y y Viết dưới dạng tổng quát 1 ,k k k ky y hf t y với 0 0y t y Chương trình Matlab giải phương trình vi phân ' 1y t y t với 0 0y bằng phương pháp Euler Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 78 Matlab ứng dụng trong kỹ thuật 2. Phương pháp Heun: phương pháp hình thang Từ phương trình vi phân cấp một ' ,y t f t y tích phân cả hai vế của phương trình này ta được 1 1 1 , k k k k t t k kt t y t y t y t f t y dt 1 1 , k k t k k t y t y t f t y dt với 0 0y t y Sử dụng tích phân hình thang ta có 1 1 1, ,2k k k k k k hy y f t y f t y Lấy xấp xỉ 1 ,k k k ky y hf t y Cuối cùng ta được 1 1, , ,2k k k k k k k k hy y f t y f t y hf t y Chương trình Matlab giải phương trình vi phân ' 1y t y t với 0 0y bằng phương pháp Heun 3. Phương pháp Runge-Kutta Mặc dù phương pháp Heun có cải tiếng hơn so với phương pháp Euler, tuy nhiên vẫn chưa đủ chính xác để giải các bài toán trong thực tế kỹ thuật. Phương pháp Range-Kutta Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 79 Matlab ứng dụng trong kỹ thuật với khai triển đến đạo hàm bậc bốn sẽ đem lại độ chính xác cao hơn. Giải thuật của phương pháp 1 1 2 3 42 26k k k k k k hy y f f f f Với 1 2 1 3 2 4 3 , / 2, / 2 / 2, / 2 , k k k k k k k k k k k k k k k f f t y f f t h y f h f f t h y f h f f t h y f h Chương trình Matlab giải phương trình vi phân ' 1y t y t với 0 0y bằng phương pháp Range-Kutta III. BÀI TẬP ÁP DỤNG Bài 1: Cho mạch điện RC như hình vẽ. Điện trở 10R , điện dung của tụ điện 0.2C F được mắt với nguồn có suất điện động . Xác định quy luật biến đổi của dòng điện qua tụ theo thời gian với điều kiện đầu 00 1, 0.75, 0.5, 0.5, 0.75, 1q q trong khoảng thời gian 0 15t Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 80 Matlab ứng dụng trong kỹ thuật Bài 2: Mô tả Gradient vận tốc với phương trình vi phân 1y t y t Download tài liệu kỹ thuật miễn phí tại Khoa xây dựng và cơ học ứng dụng trang 81 Matlab ứng dụng trong kỹ thuật Download tài liệu kỹ thuật miễn phí tại
File đính kèm:
- Bài giảng Matlab ứng dụng trong kỹ thuật.pdf