牛顿叠代法是什么?是怎么求方程解的呢?
请问运算原理是什么?我想自己练习一下来实现求根 希望指点一下 谢谢! 问题点数:20、回复次数:10Top
1 楼wugaojun()回复于 2005-04-01 15:16:59 得分 0
去网上搜一把,很多的.你也可以看一下计算方法这方面的书Top
2 楼szws(克米帅)回复于 2005-04-01 15:39:45 得分 10
给一个简单的牛顿叠代法:
#include<stdio.h>
#include<math.h>
#define N 100
float f(float x)
{float y;
y=x-cos(x);
return y;
}
main()
{float x0,x1,a;
int k;
scanf("%f,%f",&x0,&a);
for(k=0;k<N;k++)
{x1=x0-(x0-cos(x0))/(1+sin(x0));
if(fabs(x1-x0)<a)
{printf("%f,%d",x1,k);
break;
}
else x0=x1;
}
if(k>=N)
{printf("error");
}
}Top
3 楼zhousqy(标准C匪徒)(甩拉,甩拉)回复于 2005-04-01 15:43:26 得分 0
upTop
4 楼jk88811(你的就是我的,我的还是我的~!)回复于 2005-04-01 16:25:51 得分 0
老谭的书里好像就有一个
你要深入的话就查相关资料好了!Top
5 楼antter(JiangMiao)回复于 2005-04-01 16:37:12 得分 0
简言之就是不断作切线逼近真值
前几天在
http://community.csdn.net/Expert/topic/3885/3885688.xml?temp=.8424799
写过一个是求解y=x^n (已知y和n,求x)Top
6 楼skywgs(浪迹天涯)回复于 2005-04-01 16:54:31 得分 0
要学校时学过,好久没用了Top
7 楼majiaking()回复于 2005-04-03 11:13:52 得分 0
没怎么听明白Top
8 楼majiaking()回复于 2005-04-03 11:15:08 得分 0
大家说清楚些 详细些好么 我不是为了什么深入研究 事实上我还不会用Top
9 楼arrowcy(长弓手)回复于 2005-04-03 11:49:43 得分 10
比如说吧方程化为f(x)=0的形式,要求他的解,就是找f(x)为零的点,然后牛顿迭代法就是先求他的导数f'(x),这个求出来以后,可以写成一个C函数,然后就根据当前点的导数得出切线方程并找到切线方程与x轴的交点,将这个交点作为新的当前点,继续求出这一点对应的导数又得出切线方程……继续循环下去直到交那个交点带入函数得到的值与0的误差小于指定值就行了Top
10 楼majiaking()回复于 2005-04-15 13:09:31 得分 0
狂感谢啊!~~~~~~~Top




