24小时热门版块排行榜    

查看: 220  |  回复: 1

silis

新虫 (初入文坛)

[求助] 想用matlab写算法,由于初学遇到问题,望各位大神帮助

选择初始点x0属于R^n, 收敛标准e 为很小的正数,计算 Fj(x0) 的一阶偏导,二阶偏导,j=1,2。问题就在于怎么把这个下角标 j 用数组定义出来,实现直接算F1, F2的 偏导数,而不是每一种一行行打,因为之后的运算还要用到这个下角标的其他参数,所以很苦恼,希望大家能帮助我,谢谢。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

silis

新虫 (初入文坛)

syms x1 x2
f1=@(x1,x2)(x1)^2+(x2)^2;
f2=@(x1,x2)(x1-1)^2+(x2+2)^2;
x0=[1,2];%初始迭代点

g=jacobian(f1,[x1,x2])%一阶偏导jacobian
G=jacobian([g(1);g(2)],[x1,x2])%二阶偏导hesse
g0=subs(g,{x1,x2},{x0(1),x0(2)})
G0=subs(G,{x1,x2},{x0(1),x0(2)})
就是这样,我可以算f1的偏倒,但是不知道怎么用j=1:2,把f2的偏倒也一起算出来,有没有大神帮帮忙,我知道有一种指针的说法,但不知道怎么用。
2楼2016-03-15 21:05:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 silis 的主题更新
信息提示
请填处理意见