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)

pdf82 trang | Chuyên mục: MATLAB | Chia sẻ: dkS00TYs | Lượt xem: 4719 | Lượt tải: 5download
Tóm tắt nội dung Bài giảng Matlab ứng dụng trong kỹ thuật, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 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:

  • pdfBài giảng Matlab ứng dụng trong kỹ thuật.pdf