该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

function [x_reality,n_reality] = Newt( f_name,x_start,tolerance,n_limit)

%%

%牛顿迭代法(切线法)求解方程f_name = 0根的MATLAB实现

% f_name为迭代函数

% x_start为开始迭代的初始坐标

% tolerance为函数迭代的精度要求

% n_limit为函数的最大迭代次数

%%

% x_reality为最终迭代结果

% n_reality为最后的迭代次数

%%

format long; % 计算结果保留到小数点后14位

fprintf('牛顿迭代法求方程: %s = 0 的近似根\n',f_name);

del_x = 0.0000001; % 用于求函数导数值的极小量

n_reality = 0;

x_reality = x_start;

x_start = x_reality + 1000; % 保证迭代能开始

%%

while 1

if(abs(x_reality - x_start) <= tolerance) % 如果满足精度要求,输出结果,跳出while循环

fprintf('在精度不超过%.14f的条件下,方程:%s = 0 的根为 %.14f\n迭代次数为:%d\n',...

tolerance,f_name,x_reality,n_reality);

break;

elseif(n_reality > n_limit) % 如果迭代次数超过限制,输出提示语,结束循环

disp('迭代次数超界');

break;

else

x_start = x_reality; % 把x_reality的值赋给x_start,用于求x_start点的到数值以及迭代

if(feval(f_name,x_start + del_x) - feval(f_name,x_start))==0

disp('导数为0')

break;

else

y_deriv = (feval(f_name,x_start + del_x) - feval(f_name,x_start)) / del_x;

% x_start点的导数值

x_reality = x_start - feval(f_name,x_start) / y_deriv;

% 牛顿迭代

n_reality = n_reality + 1; % 迭代次数加1

fprintf('n_reality=%d, x_start=%14.14f,y_start=%14.14f\n',n_reality,x_start,feval(f_name,x_start));

end

end

end

disp('牛顿迭代发结束');

end

matlab用牛顿迭代法求解方程,牛顿迭代法求方程解 程序如下相关推荐

  1. java牛顿切线法求解方程组,牛顿迭代法求方程的解

    迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题.迭代法又分为精确迭代和近似迭代."二分法"和"牛顿 ...

  2. c语言 求方程ax,关于求方程ax2+bx+c=0根的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include #include"resource.h" BOOL CALLB ...

  3. matlab求方程实根,matlab怎么求方程的根

    MATLAB解方程_IT/计算机_专业资料.一般的代数方程函数solve用于求解一般代数方程的根,假定S为符 号表达式,命令solve (S)求解表达式等于0的根,也 可以再输入一个...... MA ...

  4. C++学习日记#1.1——四元一次方程组进行Sor松弛迭代法求解(现已推向n元一次方程组进行Sor松弛迭代法求解)

    在这篇文章中,不会有太多的讲解,主要是因为Sor迭代法和高斯-赛德尔(gauss-seidle)迭代法的程序只有迭代公式的一点点区别,当松弛因子为1的时候,Sor迭代法和高斯-赛德尔(gauss-se ...

  5. Python(分治算法)问题 E: 解方程_求方程f(x)=2^x+3^x-4^x=0在[1,2]内的根。

    问题 E: 解方程 题目描述 求方程f(x)=2^x+3^x-4^x=0在[1,2]内的根. 输入 输入m(0<=m<=8),控制输出精度 输出 三个实根(根与根之间留有空格)输出方程f( ...

  6. 用牛顿迭代法求方程的根matlab,牛顿迭代法求方程根的MATLAB程序

    function [x_reality,n_reality] = Newt( f_name,x_start,tolerance,n_limit) %% %牛顿迭代法(切线法)求解方程f_name = ...

  7. 二分法和简单迭代法的优缺点_二分法和牛顿迭代法求解方程的比较.doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp高等教育&nbsp>&nbsp理学 二分法和牛顿迭代法求解方程的比较.doc5页 本文档一共 ...

  8. 用牛顿迭代法求方程的根matlab,牛顿迭代法求方程解 程序如下

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 function [x_reality,n_reality] = Newt( f_name,x_start,tolerance,n_limit) %% % ...

  9. 牛顿迭代法例题 matlab,牛顿迭代法求方程根的MATLAB程序

    function [x_reality,n_reality] = Newt( f_name,x_start,tolerance,n_limit) %% %牛顿迭代法(切线法)求解方程f_name = ...

最新文章

  1. Android setOnPageChangeListener 过时了怎么办?
  2. first-child伪类选择器没有效果(不起作用)
  3. 五、MongoDB的索引
  4. 一文了解树在前端中的应用,掌握数据结构中树的生命线
  5. 从金蝶k3到金税盘_经典全套金蝶K3操作流程大全
  6. char java 回文_LeetCode刷题笔记(Java)---第1-18题
  7. reg51.h和reg52.h头文件
  8. 智能优化算法:飞蛾扑火优化算法-附代码
  9. Rancher 2.2.2 Stable版本发布,生产可用!
  10. linux基础(二)——linux各文件夹含义和作用
  11. redis value多大会影响性能_Redis 最常见面试问题
  12. 李宏毅机器学习 之 机器学习介绍(一)
  13. TabHost详细解析
  14. OpenCV学习笔记(十五)——k近邻算法
  15. Windows重新安装系统后安装软件步骤
  16. 计算机键盘能直接接手机吗,手机变电脑!智能手机外接键盘和鼠标的3种方法...
  17. 学习记录-FDD大规模MIMO系统的稀疏信道估计技术研究
  18. Android 多平台AR SDK 集成使用
  19. c语言fgetc函数作用,C语言fputc()和fgetc()函数
  20. 小程序授权第三方平台

热门文章

  1. 用python做图片搜索引擎并保存到本地
  2. 基于simulink的无刷直流电动机性能仿真
  3. nib must contain exactly one top level object which must be a UITableViewCell instance
  4. 【设计模式】单例(Singleton)
  5. POJ 3107 Godfather (树的重心)
  6. DBN的浅显易懂解释
  7. 医院信息系统网络安全等级保护2.0标准解读
  8. effective c++条款44 将与参数无关的代码抽离templates
  9. 2016弱校联盟十一专场10.2——Around the World
  10. 首汽约车驶向极速统一之路!出行平台如何基于StarRocks构建实时数仓?