📄 cbroydeniterate.m
字号:
function s=CBroydenIterate(x,eps)
% 逆Broyden秩1迭代法求非线性方程组
% x为迭代初值,eps为允许误差值
if nargin==1
eps=1.0e-6;
elseif nargin<1
error
return
end
x1=fx3(x); %第一次迭代
b1=inv(dfx3(x));
p=-b1*x1';
x3=x'+p;
d=fx3(x3');
q=(d-x1)';
b1=b1+(p-b1*q)*p'*b1*inv(p'*b1*q);
while(norm(p)>=eps) %循环迭代
% b1=b1+b3;
x1=fx3(x3');
p=-b1*x1';
x3=x3+p;
q=((fx3(x3'))-x1)';
b1=b1+(p-b1*q)*p'*b1*inv(p'*b1*q);
end
s=x3;
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -