sphm.net
当前位置:首页 >> 用mAtlAB做,牛顿迭代法 >>

用mAtlAB做,牛顿迭代法

syms x f=x^x-10; df=diff(f,x); eps=1e-6; x0=10; cnt=0; MAXCNT=200; %最大循环次数 while cnt

function [ A ] = cal( a,b,v )%a,b表示区间,v是精度 i=1; x = (a+b)/2; A=[i x]; t = x-(x^3-x-1)/(3*x^2-1);%迭代函数 while(abs(t-x)>v) i=i+1; x = t; A = [A;i x]; t = x-(x^3-x-1)/(3*x^2-1);%迭代函数 end A = [A;i+1 t]; end 运行结果...

是像图中这样的效果吗?求出来接近1的一个根。 输出第一行是迭代次数,第二行是根。 文字版的代码如下: function Untitled() x0 = 1; i = 0; while true i = i+1; x2 = x0; x1 = x0 - (x0^2 - 3) / 2; x0 = x1; if ~(abs(x1-x2) >= 1e-14 && x0

%求方程x^3-sinx-12x+1=0的根。 N =1000; x0=0; x1=x0^3-sin(x0)-12*x0+1; E=1.0e-6;%f=x*x*x+4*x*x-10=0,f1为f=x*x*x+4*x*x-10的一阶导 k=1;

主程序: function [k,x,wuca,yx] = newton(x0,tol) k=1; yx1=fun(x0); yx2=fun1(x0); x1=x0-yx1/yx2; while abs(x1-x0)>tol x0=x1; yx1=fun(x0); yx2=fun1(x0); k=k+1; x1=x1-yx1/yx2; end k; x=x1; wuca=abs(x1-x0)/2; yx=fun(x); end 分程序1...

超过计算范围或精度。

应该不行吧,第一个出现的代码,循环条件是while kkk==3 && theta

牛顿迭代法的原理是, 实现过程如下: function y = fun_main(x) %定义函数 y =x^3+4*x^2-10; end function y = dfun_main(x) %定义导函数 y =x^3+4*x^2-10; y = 3*x^2 + 8*x; end syms x ezplot('y=x^3+4*x^2-10',[-5 4 -11 5]),grid on,hold o...

程序很简单的,有点基础的都能编。但是有一个点必须提醒你,Jacobe矩阵的计算。 两种方法: 解析Jacobe。就是需要你具体的研究非线性方程组的解析表达式,通过求导的方法,得到解析表示的Jacobe矩阵。 数值Jacobe。不需要具体研究方程组的解析式...

网站首页 | 网站地图
All rights reserved Powered by www.sphm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com