bài giảng biên soạn cho giảng dạy trên lớp nên rất dễ hiểu và chủ yếu những lệnh cơ bản trong matlab nên rất thuận lợi cho sinh viên tra cứu và học vì trình bày ngắn gọn.
TIN HỌC CHUYÊN NGÀNH CƠ ĐIỆN ---------------------- MATLAB ỨNG DỤNG Một số hàm thông dụng trong MATLAB Hàm với biến số thực: abs(x) cho giá trị tuyệt đối của x ; sign(x) cho dấu của x ; fix(x) cho phần nguyên của x tức là làm tròn về phía số 0 ; ceil(x) làm tròn x tới số nguyên nhỏ nhất ≥ x tức là làm tròn về phía + ∞; floor(x) làm tròn x tới số nguyên lớn nhất ≤ x ; tức là làm tròn về phía - ∞; round(x) làm tròn về số nguyên gần x nhất; frac(x) cho phần phân số (thực sự ) của x: frac(x) = x – fix(x); sqrt(x) cho căn bậc hai dương của x, (nếu x âm ta được số phức); nthroot(x,n) cho căn bậc n (thực) của số thực x; exp(x) cho hàm mũ cơ số e tức là e x ; pow2(x) cho hàm mũ cơ số 2 tức là 2 x ; log(x) cho logarit tự nhiên (cơ số e) của x; log10(x) cho logarit thập phân của x; log2(x) cho logarit cơ số 2 của x; factor(x) cho kết quả phân tích số x thành các thừa số nguyên tố; primes(x) cho ra các số nguyên tố nhỏ hơn hoặc bằng x; gcd(x,y) cho ước số chung lớn nhất của 2 số nguyên x và y ; lcm(x,y) cho bội số chung nhỏ nhất của 2 số nguyên x và y ; factorial(n) cho tính số n giai thừa (n!) ; perms(v) với v là mảng có độ dài n cho tất cả mọi hoán vị có thể có của mảng v; nchoosek(N,k) cho số các tổ hợp chập k của N (số C k N ); dot(A,B) cho tích vô hướng của hai véc tơ A và B; cross(A,B) cho tích có hướng (tích véc tơ) của hai véc tơ A và B; Các hàm lượng giác: sin(x) , cos(x) , tan(x) , cot(x) (x tính theo radian); sind(x), cosd(x), tand(x), cotd(x) (x tính theo độ); Các hàm lượng giác ngược: asin(x) , acos(x) , atan(x) , acot(x) kết quả là radian; asind(x) , acods(x) , atand(x) , acotd(x) kết quả là độ; Các hàm sec(x) (=1/cos(x)) , csc(x) (=1/sin(x)) , asec(x) (=1/acos(x)) , acsc(x) (=1/asin(x)); Các hàm hypebolic: sinh(x) , cosh(x) , tanh(x) , coth(x); Và các hàm ngược của chúng asinh(x) , acosh(x) , atanh(x) , acoth(x); §1. CÁC BÀI TOÁN LIÊN QUAN ĐẾN ĐA THỨC 1.1. Giá trị và nghiệm của đa thức Để nhập một đa thức ta nhập các hệ số từ cao đến thấp, các hệ số được viết giữa hai dấu [ ] và tách nhau bằng dấu cách. Để tìm giá trị của đa thức p tại x = x0 dùng lệnh polyval(p,x0). Tìm nghiệm r của đa thức p dùng lệnh roots(p). Biết nghiệm r của đa thức, tìm đa thức p dùng lệnh p = poly(r). Tìm đạo hàm một đa thức p ta dùng lệnh polyder(p). Tìm nguyên hàm một đa thức p dùng lệnh polyint(p) (coi hằng số C=0). Chú ý: Nếu sau một lệnh của MATLAB ta đánh dấu chấm phảy thì lệnh đó được thực hiện nhưng không cho ra kết quả trên màn hình, còn nếu không có chấm phảy thì ta có kết quả trên màn hình dưới hai dạng: ans, nếu không đặt tên biến phải tìm; kết quả của biến đó, nếu nó đã được đặt tên. Thí dụ 1: Cho đa thức p = x 3 – 2x – 5. Tìm nghiệm của đa thức; Giá trị đa thức tại x = 5; Đạo hàm và nguyên hàm của đa thức. 1.4. Đa thức nội suy Khi muốn có đa thức biểu diễn dãy số liệu thực nghiệm (x i , y i ) thì sau khi vào các số liệu x và y trong dấu ngoặc vuông [ ] , các số cách nhau bằng dấu cách, ta dùng lệnh polyfit(x,y,n) với n là bậc đa thức mà ta chọn. Trong trường hợp ta có n +1 cặp số liệu mà ta chọn bậc đa thức n thì ta được đa thức nội suy Lagrange. Thí dụ 4: Tìm hàm xấp xỉ bậc nhất biểu diễn dãy số liệu x=(2; 4; 6; 8); y=(0.35; 0.573; 0.725; 0.947) Chú ý: Với cách nhập a:b ta có thể tạo ra một dãy các số từ a đến b cách nhau 1 đơn vị; Với cách nhập a:n:b ta có thể tạo ra một dãy các số từ a đến b cách nhau n đơn vị. Thí dụ 5: Tìm hàm xấp xỉ bậc hai biểu diễn dãy số liệu x=(7;12; 17; 22; 27; 32; 37); y=(83.7; 72.9; 63.2; 54.7; 47.5; 41.4; 36.3) Thí dụ 6: Tìm đa thức nội suy Lagrange của dãy số liệu x=(1; 2; 3; 4); y=(17; 27.5; 76; 210.5) Nội suy tại một giá trị cụ thể x i . Sau khi vào x , y ta dùng lệnh interp1(x,y,xi,’linear’) (interpolation) nếu muốn nội suy tuyến tính hoặc interp1(x,y,xi,’spline’) nếu muốn nội suy đa thức bậc ba tại điểm x i . Thí dụ 7: Nội suy đa thức giá trị hàm tại x i = 4.5 theo dãy số liệu sau: x=(4; 4.2; 4.4; 4.6; 4.8; 5); y=(0.6026; 0.62325; 0.64345; 0.66276; 0.68124; 0.69897); Thí dụ 8: Dân số Hoa Kỳ (tính theo triệu người) từ 1900 đến 1990 (tính theo 10 năm một) được cho ở bảng dưới. Hãy dự đoán dân số Hoa Kỳ năm 2000. Năm 1900 1910 1920 1930 1940 1950 1960 1970 1980 1990 Dân số 75.995 91.972 105.71 1 123.30 3 131.66 9 150.69 7 179.32 3 203.21 2 226.50 5 249.63 3 MATLAB cũng cho phép ta nội suy giá trị của hàm hai biến z = f(x , y) tại điểm (xo , yo) theo các giá trị cho trước cùa hàm tại các điểm (x , y). Trường hợp các giá trị hàm z cho theo lưới các điểm có tọa độ (x i , y j ) Giả sử x = x i i= 1 , 2 , . . . , n ; y = y j j = 1 , 2 , . . . m ; Khi đó z được cho bởi ma trận cỡ m×n z = [ z ij ] với z ij là giá trị tương ứng của hàm tại (x i , y j ). Để nội suy giá trị hàm tại (x 0 , y 0 ) ta dùng lệnh zo = interp2(x,y,z,xo,yo,’linest’). Thí dụ 9. Dãy x được quan sát từ 1950 đến 1990 với bước là 10 (tức là 1950 1960 1970 1980 1990, n = 5), dãy y được quan sát từ 10 đến 30 với bước 10 (tức là 10 20 30, m = 3); z là ma trận cỡ 3×5 , Hãy nội suy giá trị của z tại x = 1975, y = 15. x y 1950 1960 1970 1980 1990 10 150.697 179.323 203.212 226.505 249.633 20 199.592 195.072 179.092 153.706 120.281 30 187.625 250.287 322.767 426.730 598.243 . 8 9 ; 10 11 12] ; B = [1 ; 3 ; 5 ; 7] 4.2. Biểu diễn hàm trong MATLAB Các hàm MATLAB. MATLAB có một tệp là M-file chứa rất nhiều hàm, các hàm đó nhận. TIN HỌC CHUYÊN NGÀNH CƠ ĐIỆN ---------------------- MATLAB ỨNG DỤNG Một số hàm thông dụng trong MATLAB Hàm với biến số thực: abs(x) cho giá trị tuyệt