flpz.net
当前位置:首页>>关于请问怎么用matlab编程,使用牛顿迭代法求根号5的立...的资料>>

请问怎么用matlab编程,使用牛顿迭代法求根号5的立...

1. 创建一个函数 %牛顿法求立方根 function x=cube_newton(a) f=@(x)x^3-a; df=diff(sym('x^3-a')); if a==0; x1=a; else x0=a; x1=x0-f(x0)/subs(df,x0); while abs(x1-x0)>1e-6 x0=x1; x1=x0-f(x0)/subs(df,x0); end end x=x1; 2. 调用求解 >>...

:牛顿迭代法的原理是, 实现过程如下: 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

syms x x0=2; f=x^3-3*x-1; eps=1e-6; maxcnt=1000; fx=diff(f,x); x1=x0; cnt=1; 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 运行结果...

牛顿迭代法的原理是, 实现过程如下: 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...

利用牛顿迭代法求根号8,可以这样来处理,令原函数为x-sqrt(8)=0,即y=x-sqrt(8),其导函数y=1-1/(2*sqrt(x))。 编程运行可以得到,sqrt(8)=2.8284 实现代码:

x=1.5; m=0.00000001 N=500000; for k=1:N y=x-(x^3-x-1)/(3*x^2-1); if (abs(x-y))

你的函数定义function f1=fun(x) 会定义x为double类,必须要输入x的值才能进行计算。 你想在命令行输入fun运行这个程序,必须把函数改为: function f1=fun 不要带输入参数。

贴上来,或者发到 wacs5@126.com

f(x)=x-sin(x) f'(x)=1-cos(x) x=x-f(x)/f'(x)=x-(x-sin(x))/(1-cos(x)) 程序如下 clear; clc; x=1; while abs(x-sin(x))>0.001 x=x-(x-sin(x))/(1-cos(x)); end x 得到结果 x = 0.1278

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