牛顿迭代法

27日视图(30天)
越南勒
越南勒 2016年9月23日
回答: Meysam Mahooti 2019年12月5日
我有一个问题“找到以下工厂方程的稳态解,利用MATLAB代码”,(牛顿迭代方法)~ ~ ~多谢
这是牛顿迭代代码
函数[x, iter] = newtonm (x0, f, J)
%牛顿迭代法应用于线性方程组f (x) = 0,
%的雅可比矩阵函数J, J =▽(f1, f2,…, fn) /德尔(x1, x2,…, xn)
% x = (x1, x2,……; xn), f = [f1, f2,……; fn] x0解决方案的初始猜测
N = 100;%定义马克斯。的迭代次数
ε= 1平台以及;%定义公差
maxval = 10000.0;%定义值差异
xx = x0;%加载初始猜测
(N > 0)
JJ =函数宏指令(J, xx);
如果abs(侦破(JJ)) <ε
错误(newtonm -雅可比矩阵奇异,尝试新的x0”);
中止;
结束;
xn = xx -发票(JJ) *函数宏指令(f, xx);
如果abs(函数宏指令(f, xn) <ε
x = xn;
iter = 100 - n;
返回;
结束;
如果abs(函数宏指令(f, xx)) > maxval
iter = 100 - n;
disp ([“迭代= 'num2str (iter)]);
错误(解决方案是发散的);
中止;
结束;
N = N - 1;
xx = xn;
结束;
错误(“没有100次迭代后收敛。”);
中止;
%结束功能

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!