2014-04-14 53 views
-4

我被要求在MatLab中做一個雅可比矩陣來求解f(x)的最高值的座標和同一函數的最大值。在MatLab中寫入函數

我一起工作的功能是:f(x; y) = (x^3y + 5x^2y^2)/ e^(x^2+3y^4)

所以我已取得的成就:

function [j1,j2]=J(x)  
    [3*x(1)^2+20*x(1)*x(2)-36*x(1)^2*x(2)^4-120*x(1)*x(2)^5,10*x(1)^2-48*x(1)^3*x(2)^3-300*x(1)^2*x(2)^4;6*x(1)*x(2)+10*x(2)^2-8*x(1)^3*x(2)-30*x(1)^2*x(2)^2,3*x(1)^2+20*x(1)*x(2)-2*x(1)^4-20*x(1)^3*x(2)]  
end 

我相信這是包括f(x)所有四個衍生品的基質。堅果現在我不知道如何解決我的兩個問題。

+0

我試圖在命令窗口中寫入max(J([x,y])),但得到了錯誤的座標... – user3532582

+0

以及一個確切的問題是什麼? – Kamiccolo

+0

如何使用我的函數來獲得f(x,y)的最高值的座標,以及如何獲得給定函數的最大值? – user3532582

回答

0

答案在評論中已經給出,以確保問題不會保持unanswerd我將它張貼在這裏:

首先我寫的jocobian MATRIS作爲

function A = J(x) j11 = 6*x(1)*x(2)+10*x(2)^2-8*x(1)^3*x(2)-30*x(1)^2*x(2)^2; 
j12 = 3*x(1)^2+20*x(1)*x(2)-2*x(1)^4-20*x(1)^3*x(2); 
j21 = 3*x(1)^2+20*x(1)*x(2)-36*x(1)^2*x(2)^4-120*x(1)*x(2)^5; 
j22 = 10*x(1)^2-48*x(1)^3*x(2)^3-300*x(1)^2*x(2)^4; A = [j11, j12;j21, j22]; 
end 

然後我用這函數估計criticalpoints

function xnp1 = NewtonMultyVar(x0,N); 
xn = x0; 
    for n = 1:N 
    xnp1 = xn - inv(J(xn))*z(xn); 
    xn = xnp1; 
end 
end 

哪裏x0是近似的youre點和N代表數notat離子。