⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newton_finding_roots.m

📁 数值计算中的二分法和牛顿迭代法的演示
💻 M
字号:
% To compute M
% Let f(x) = x^2-M;
% then f'(x) = 2*x;
% the algorithm is 
% x(n+1) = x(n)-f(x(n))/f'(x(n)) = x(n)-(x(n)^2-M)/(2*x(n))
%        = 0.5*(x(n)+M/x(n));
% 第 1 次计算结果:
%    1.50000000000000
% 
% 第 2 次计算结果:
%    1.41666666666667
% 
% 第 3 次计算结果:
%    1.41421568627451
% 
% 第 4 次计算结果:
%    1.41421356237469
% 
% 第 5 次计算结果:
%    1.41421356237309
% 
% 第 6 次计算结果:
%    1.41421356237309
% Newton's method takes only six iterations.
clear all
clc
format('long');
M = 2;
x = 1; % Initial value
xprev = 0;
i = 0;
while abs(x - xprev) > eps*abs(x)
    i=i+1;
    xprev = x;
    x = 0.5*(x + M/x);
    disp(['第 ',num2str(i),' 次计算结果:']);
    disp(x); % Print to screen
end
format('short');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -