intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Tìm hiểu về Matlab

Chia sẻ: Asdfcs Fsdfd | Ngày: | Loại File: PDF | Số trang:33

161
lượt xem
35
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bạn có thể có thể tạo một biến của Matlab,và bạn có thể gán lại giá trị cho một hoặc nhiều biến Ví dụ : erases=4; pads=6; tape=2 iterms=erases+pads+tape

Chủ đề:
Lưu

Nội dung Text: Tìm hiểu về Matlab

  1. Tìm hiểu về Matlab Hà Nội-2011
  2. hÖ thèng file I.Giới thiệu chung về matlab 1.Lịch sử ra đờivà các ứng dụng của matlab II.Một số bài toán trong matlab 1.Một số phép toán cơ bản. Matlab có thể thực hiện một số phép toán cơ bản. Kí tự Ý nghĩa Lệnh Matlab + Cộng a+b a+b - Trừ a-b a-b * Nhân ab a*b / Chia phải a:b a/b \ Chia trái b:a a\b ^ Mũ a^b a^2 Ví dụ :Muốn viết 2+3 thì ta đánh dòng lệnh: >>2+3  Các phép toán được ưu tiên thực hiện từ trái qua phải Các biến trong matlab Giống như các ngôn nhữ lập trình khác Matlab cũng có quy định chung về biến:
  3. Các biến đặc biệt Giá trị Ans Tên biến mặc định dùng để trả về kết quả pi=3.1415…. Eps Số nhỏ nhất,như vậy cộng với 1 để được số lớn hơn 1 Flops Số của phép toán số thực Inf Để chỉ số vô cùng kết quả của 1/0 NaN hoặc nan Dùng để chỉ số không xác định như kết quả của 0/0 i( và ) j i=j= Nargin Số các đối số vào hàm sử dụng Narout Số các đối số ra Realmin Số nhỏ nhất có thể của số thực Realmax Số lớn nhất có thể của số thực
  4. Bạn có thể có thể tạo một biến của Matlab,và bạn có thể gán lại giá trị cho một hoặc nhiều biến Ví dụ : >>erases=4; >>pads=6; >>tape=2 >>iterms=erases+pads+tape  Iterms= 12 >>erases=6 erases= 6 Các lệnh được kết thúc bằng dấu chấm phẩy,Matlab sẽ không thể hiện kết quả trên màn hình,ngược lại không có dấu phẩy Matlab sẽ hiển kết quả. 2.Các phép toán với ma trận và vec tơ Để tạo một vec tơ,ta chỉ cần liệt kê các phần tử của vec tơ trong cặp dấu ngoặc vuông […..].Giữa các phần tử ngăn cách nhau bởi dấu phẩy hoặc dấu cách (space). Ví dụ :Biểu diễn 1 vec tơ a : >>a=[1 4 5 6 8 9]  Trong một số trường hợp đặc biệt có thể biểu diễn vec tơ bằng những cách khác:
  5. Ví dụ : Vec tơ b với các thành phần lấy giá trị nguyên từ o đến 10 >>b=0:10  b= 0 1 2 3 4 5 6 7 8 9 10 Nếu muốn các thành phần liên tiếp cách nhau 2 thì nhập : >>c=0:2:10 c= 0 4 6 8 10 Khích thước chiều dài của vec tơ được cho nhờ hàm length >>dai=leng(c) dai= 6 Tính toán trên vec tơ cũng rất đơn giản. Ví dụ : Muốn cộng 2 vec tơ có cùng độ dài >>a=[1 2 3] a= 123 >>b=[2 3 4]
  6. b= 234 >>a+b ans= 357 Đối với phép trừ cũng thực hiện tương tự. Ma trận : Để nhập một ma trận vào Matlab giống như nhập vec tơ,ngoai trừ mỗi các hàng của ma trận phân cách nhau bằng dấu (;) hoặc enter Ví dụ : >>A=[1 2 3 4;5 6 7 8; 9 10 11 12] Hay >>A=[1 2 3 4 5678 9 10 11 12 Kích thước ma trận được cho bàng hàm size >>size(A) ans= 34 Để truy suất đến từng phần tử cả ma trận ta dùng chỉ số phần tử tương ứng :
  7. Ví dụ : phần tử ở hàng thứ 2,cột thứ 3 là: >>A(2,3) Lấy tất cả các phần tử ở cột 1 : >>A(:,1) Chuyển vị : >>C=B’ Nếu B là ma trận phức thì B’ cho chuyển vị của liên hopwj phức của B.Trong trường hợp này muốn lấy chuyển vị của B: D=B.’ Nhân hai ma trận : >>D=A*B Nếu muốn nhân các phần tử tương ứng của ma trận có cùng kích thước : >>E=C.*D Nếu G là ma trận vuông thì ta có phếp nhân ma trận E với chính nó n lần thực hiện bằng phép lũy thừa : >>G^3 Nếu muốn lũy thừa từng phần tử của ma trận : >>G.^3 Nghịch đảo ma trận vuông :
  8. >>inv(G) Các trị riêng: >>eig(G) Đa thức đặc trưng : >>poly(G) Đa thức: Các đa thức trong Matlab được mô tả bằng các vec tơ hàng với các phần tử của vec tơ chính là các hệ số của đa thức,xếp theo số mũ giảm dần.Ví dụ,đa thức m=s^4 –s^3+4s2 -5s-1 được biểu diễn là: >>m=[1 -1 4 5 -1] Để xác định giá trị của đa thức,ta dùng lệnh polyval. Ví dụ,xác định giá trịc của đa thức tại điểm s=2 : >>polyval(m,2) Để xác định nghiệm của đa thức,ta dùng lệnh roots.Ví dụ : >>roots(m) 3.Hàm số : Matlab có một thư viện các hàm toán học rất phong phú như :sin,cos,log,exp,sqrt… Đối số của hàm có thể là một ma trận.
  9. Ví dụ : x=[1 2;3 4],lệnh exp(x) trả về ans= 2.7183 7.3891 20.0855 54.5982 Đồ thị : Trong không gian 2 chiều : Lệnh plot : plot(x,f(x)) Với: f(x)-hàm số cần vẽ x-vec tơ miền giá trị của hàm f Ví dụ vẽ đồ thị của hàm y=sin(x) >>x=0:pi/100:2*pi; >>y=sin(x); >>plot(x,y) Kết quả :
  10. Để hiển thị lưới trên đồ thị : >>grid on Khi muốn vẽ thêm 1 đồ thị trên đồ thị hiên có ta dùng lệnh: >>hold on để tắt chế độ này dùng hold off Để giới hạn tọa độ của các trục : >>axis([xmin xmax ymin ymax]) Có thể đặt nhãn cho các trục cũng như tiêu đề cho đồ thị bằng các lệnh: xlabel ,ylabel,title,legend Matlab hỗ trợ rất nhiều thuộc tính đồ họa.Ví dụ: >>x=[0 1 2 3]; >>y=[0 4 1 5]; >>h=plot(x,y) Để thấy các thuộc tính đồ họa ta dùng lệnh: >>set(h) Ta đặt một số thuộc tính cho h >>set(h,’color’,’r’) đặt lại màu đỏ >>set(h.’LineWidth’,6) đặt lại độ rộng đường
  11. Trong không gian 3 chiều : >>plot3(x,y,z) Ta cần xác định các vectơ x, y, z. Để vẽ mặt (x, y, z=f(x,y)), lệnh meshgrid(x,y) sẽ tạo ra mảng X, Y từ miền giá trị của x, y. Ví dụ >>t = 0:0.02*pi:25*pi; >>x = sin(t); y = cos(t);  >>z = t;  >>plot3(x,y,z);
  12. 2  x2  y2 Vẽ mặt: z  x ye với -4≤x≤4 ; -4≤y≤4 >>[x,y]=meshgrid([-4:0.1:4]); >>z=x.*x.*y.*exp(-x.^2-y.^2); >>plot3(x,y,z)
  13. Vẽ mặt :z  sin( y  x )  cos( x  y 2 ) với x , 2 y  0    >>x=0:0.1:pi;y=0:0.1:pi; >>[X,Y]=meshgrid(x,y); >>Z=sin(Y.^2+X)-cos(Y-X.^2);  >>subplot(221); >>mesh(Z); >>subplot(222); >>mesh(Z); >>subplot(223); >>mesh(x,y,Z); >>axis([0 pi 0 pi -5 5]); >>subplot(224); >>mesh(Z); >>hidden off
  14. Symbolic tool box
  15. Tên hàm Chức năng Tên hàm Chức năng diff Đạo hàm fourier Biến đổi fourier Int Tích phân Ifourier Biến đổi fourier ngược Taylor Khai triển taylor Iaplace Biến đổi Laplace Det Định thức của ma Laplace Biến đổi laplace trận ngược Numden Tử và mẫu của Ezplot Vẽ hàm ,=plot phân số Subs Thay biến sym Ezpolar Vẽ hàm ,tọa độ bằng trị số cực =polar dsolve Giải phương trình Ezmesh Vẽ mặt lưới=mesh
  16. Để biến đổi một số,một biến hay một đối tượng nào đó thành kiểu Symbolic ta có thể sử dụng một trong các cách sau: >>s=sym(A) >>x=sym(x) >>syms x y z %khai báo biến kết hợp  x,y và z là biến symbolic Tính đạo hàm diff của symbolic:nếu s là biểu thức symbolic thì: diff(s) đạo hàm của biến của s theo biến tự do diff(s,’v’) đạo hàm của s theo biến v diff(s,’v’,n) đạo hàm cấp n của s theo v Ví dụ : Tính đạo hàm y=sinx3 >>syms x %khai báo x là biến kiểu symbolic >>y=sin(x^3); >>z=diff(y) %đạo hàm của y z= 3*cos(x^3)*x^2 %sinh viên kiểm tra kết quả >>pretty(z) % hiện thị dạng quen thuộc 3cos(x3 )x2 >>ezplot(x,y) %vẽ y theo x
  17. Tính vi phân bằng hàm int –nếu s là biểu thức symbolic thì : int(s) tích phân không xác định của s theo biến mặc nhiên (muốn biết biến mặc nhiên này ta dùng hàm findsym). int(s,v) tích phân không xác định của s theo v int(s,a,b) tích phân xác định của s trên cận [a,b] int(s,v,a,b) tích phân xác định của s theo v trên cận [a,b]
  18. 2 2 1 2 x 19 12 x   dx Ví dụ: Tính  0 7  x2 1     >>syms x >>s=2*x^2*(19+12*x^2)/(7*(x^2+1)) >>y=int(s,x,y,0,1)  % tích phân s theo c tren cận [0,1] >>subs(y)  %đổi sang kiểu số Giải hệ phương trình bàng hàm solve : >>syms x y >>[x,y]=solve(‘x^2*sin(x^2)-3*y=7’,’x+y=1’) y Vẽ mặt 3D bằng hàm ezsurf .Ví dụ vẽ mặt s=f(x,y)= 1 x2  y 2trên miền xác định :-5≤x>s=y/(1+x^2 +y^2) >>ezsurf(s,[-5 5 -2*pi 2*pi]) 
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2