Giải phương trình bậc 3 trong matlab
Page 22. Đa thức
P = [2 0 0 0] mô tả đa thức 2x^3
>> p2 = polyfit(X,Y,2); % tìm đa thức bậc 2 phù hợp nhất đi qua các điểm (-1,0), (0 -1) và (2,3) % gõ help polyfit để biết thêm về cách dùng >> plot(X,Y,’o’, ‘MarkerSize’, 10); >> hold on; >> x = -3:.01:3; >> plot(x,polyval(p2,x), ‘r--’); Bài tập Tính y= x^2 với x= -4:0.1:4 Cộng thêm nhiễu ngẫu nhiên vào các giá trị tính được đó. Trong bài tập này, hãy dùng hàm randn. Vẽ tín hiệu có nhiễu thu được. Tìm đa thức bậc 2 xấp xỉ bộ dữ liệu có nhiễu đó. Vẽ đa thức đó trên cùng một đồ thị. Dùng cùng giá trị x và đường màu đỏ >> y=y+randn(size(y));
Tạo ra một file riêng chứa hàm. Lưu mfile này dưới tên 'myfun' sau đó gõ lệnh trên Work Space như sau:
x=fzero('myfun',1) % 1 là giá trị ước đoán mà ta nghĩ nằm gần nghiệm x=fzero(@myfun,1)
>> x=fminbnd('myfun',-1,2); % Chú ý: hàm myfun là một hàm một biến % fminbnd sẽ trả về một điểm cực tiểu của hàm myfun trong đoạn [-1 , 2]
>> x=fminsearch('myfun',0.5) % tìm một cực tiểu địa phương bắt đầu từ x=0.5
>> x=fzero(@myfun,1) Cách làm này thường được dùng hàm có dạng đơn giản >> x=fzero(@(x)(cos(exp(x))+x^2-1), 1 ); % ở đây f(x)= cos(exp(x))+x^2-1 >> x=fminbnd(@(x)(cos(exp(x))+x^2-1),-1,2);
>> linprog % Giải bài toán quy hoạch tuyến tính sử dụng phương pháp nội suy >> quadprog % Giải bài toán quy hoạch bậc 2 >> fmincon % Giải bài toán tối ưu phi tuyến có điều kiện ràng buộc Bài tập Tìm giá trị nhỏ nhất của hàm f(x)= cos(4x)sin(10x)exp(-|x|) trong dải [-π,π] dùng hàm fminbnd Hướng dẫn: Lập mfile với tên myFun.m với nội dung như sau: function y=myFun(x) y=cos(4*x).*sin(10*x).*exp(-abs(x)); Trên Work Space, tìm cực tiểu như sau: >> x0=fminbnd('myFun',-pi,pi); % Vẽ đồ thị hàm số trong khoảng đó để kiểm tra >> figure; >> x=-pi:.01:pi; >> plot(x,myFun(x)); << Previous Page Next Page >> |