www.gusucode.com > 学会不同搜索法(最速下降法,共轭梯度法,牛顿法,拟牛顿法)的计算步骤 > code/tidu.m
%梯度子函数,tidu.m,输入的变量为四维的向量,返回梯度在x处的数值向量 function g=tidu(x) %待求解的函数 f='(x1+10*x2)^2+5*(x3-x4)^2+(x2-2*x3)^4+10*(x1-x4)^4'; %求函数的梯度表达式 g=[diff(f,'x1') diff(f,'x2') diff(f,'x3') diff(f,'x4')]; x1=x(1); x2=x(2); x3=x(3); x4=x(4); g=eval(g);