相关文章推荐
英俊的书签  ·  关于养老基金投资运营的几点认识·  1 年前    · 
俊秀的豆腐  ·  underlust - 百度·  2 年前    · 
宽容的橡皮擦  ·  【吉麦新能源】吉麦新能源汽车报价-图片-吉麦 ...·  2 年前    · 
善良的番茄  ·  海外品牌新能源周销量榜:特斯拉卖了1.7万辆 ...·  2 年前    · 
想出家的水煮鱼  ·  《去有风的地方》热播,胡冰卿又接拍《风月锦囊 ...·  2 年前    · 
Code  ›  写一个用迭代法解方程的Java程序开发者社区
解方程 迭代法
https://cloud.tencent.com/developer/article/1528535
率性的玉米
2 年前
作者头像
算法与编程之美
0 篇文章

写一个用迭代法解方程的Java程序

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 算法与编程之美 > 写一个用迭代法解方程的Java程序

写一个用迭代法解方程的Java程序

作者头像
算法与编程之美
发布 于 2019-10-28 17:37:19
1.3K 0
发布 于 2019-10-28 17:37:19
举报

1.定义解释

迭代法也称辗转法,是一种逐次逼近方法,在使用迭代法解方程组时,其系数矩阵在计算过程中始终不变。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或步骤)时,都从变量的原值推出它的一个新值。

迭代法具有循环的计算方法,方法简单,适宜解大型稀疏矩阵方程组,在用计算机计算时只需存储A的非零元素(或可按一定公式形成系数,这样A就不需要存储)。

(1)对于给定的方程组X =Bx+f,用式子

逐步代入求近似解的方法称为迭代法(或称为一阶定常迭代法,这里与B和k无关)

(2) 如果limx(k), x→∞存在(记作x* ),称此迭代法收敛,显然x就是方程组的解,否则称此迭代法发散。

2.解法介绍

牛顿迭代法是一种线性化方法,其基本思想是将非线性方程f(x)= 0逐步归结-为某种线性方程来求解.设已知方程f(x)=0有近似根X (假定f’(xk)≠ 0),将函数f(x)在点xk展开,有:

f(x)≈f(xk)+f’(xk)(x-xk)于是方程f(x)=0可近似地表示为f(x)+ f’(xk)(x-xk)=0(是个线性方程),记其根为xk+1,则xk+1的计算公式为xk+1=xk-f(xk) ➗ f’(xk)(k=0,1,2……)

3.例题讲解

例:用牛顿迭代法三次求方程f(x)=x5-x2+x-30=0,在区间[1,3]中的近似值请详细解答

解:

f(1)=-29 f(3)=207 所以[1,3]之间一定有零点。而且明显更靠近x=3。 f (2) =-2 f(2. 5)=63.9 f(2.2)=19.2 f(2.1)=8.53 f(2. 01)=0.78 f(2 001)=0.08

所以f(2. 0001)=0.008应该满足要求了。所以x=2.0001

4.代码编写

例:使用牛顿迭代法求方程的解,X3-2x-5=0,在区间[2,3]上的根。

package Lab_02.Test_01;
 public class Test_01 {
     public static void main(String[] args) {
         double x=2;
         for(int i=0;i<20;i++)  {
             x=-f(x)/f1(x)+x;
         System.out.println(x+"");
     static double f(double  x) {
         double ans;
         ans=Math.pow(x, 3)-2*x-5;
         return ans;
     static double f1(double  x) {
 
推荐文章
英俊的书签  ·  关于养老基金投资运营的几点认识
1 年前
俊秀的豆腐  ·  underlust - 百度
2 年前
宽容的橡皮擦  ·  【吉麦新能源】吉麦新能源汽车报价-图片-吉麦新能源车型大全--太平洋汽车
2 年前
善良的番茄  ·  海外品牌新能源周销量榜:特斯拉卖了1.7万辆,丰田超奔驰|奥迪|宝马|别克|电动车|新能源汽车|特斯拉(公司)_网易订阅
2 年前
想出家的水煮鱼  ·  《去有风的地方》热播,胡冰卿又接拍《风月锦囊》,与翟子路合作_之遥_红豆_娜娜
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号