本人以及可以用共轭梯度法解不含参数的非线性方程,现在想在方程中加入迭代参数,这样可以写一个while语句
来求得满足一定精度的解。原题大体如下:function[f,g]=y3(x)%r=10;f=exp((x(1)+x(2)+1)^2)+1000000*((exp(x(1)...
来求得满足一定精度的解。原题大体如下:
function[f,g]=y3(x)
%r=10;
f=exp((x(1)+x(2)+1)^2)+1000000*((exp(x(1)^2-x(2))+exp(x(2)-x(1)^2))/2-1);
g(1)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+1000000*x(1)*(exp(x(1)^2-x(2))-exp(x(2)-x(1)^2));
g(2)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+500000*(-exp(x(1)^2-x(2))+exp(x(2)-x(1)^2));
用共轭梯度即可求出数值解。改写为:
function[f,g]=y3(x)
%r=10;
f=exp((x(1)+x(2)+1)^2)+r*((exp(x(1)^2-x(2))+exp(x(2)-x(1)^2))/2-1);
g(1)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+r*x(1)*(exp(x(1)^2-x(2))-exp(x(2)-x(1)^2));
g(2)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+r*(-exp(x(1)^2-x(2))+exp(x(2)-x(1)^2));
现在想通过r的迭代来写一段代码,望高手不吝赐教。 展开
function[f,g]=y3(x)
%r=10;
f=exp((x(1)+x(2)+1)^2)+1000000*((exp(x(1)^2-x(2))+exp(x(2)-x(1)^2))/2-1);
g(1)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+1000000*x(1)*(exp(x(1)^2-x(2))-exp(x(2)-x(1)^2));
g(2)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+500000*(-exp(x(1)^2-x(2))+exp(x(2)-x(1)^2));
用共轭梯度即可求出数值解。改写为:
function[f,g]=y3(x)
%r=10;
f=exp((x(1)+x(2)+1)^2)+r*((exp(x(1)^2-x(2))+exp(x(2)-x(1)^2))/2-1);
g(1)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+r*x(1)*(exp(x(1)^2-x(2))-exp(x(2)-x(1)^2));
g(2)=exp((x(1)+x(2)+1)^2)*2*(x(1)+x(2)+1)+r*(-exp(x(1)^2-x(2))+exp(x(2)-x(1)^2));
现在想通过r的迭代来写一段代码,望高手不吝赐教。 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询