欢迎来到天天文库
浏览记录
ID:38023584
大小:24.00 KB
页数:5页
时间:2019-05-24
《c++求解非线性方程组的牛顿顿迭代法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、牛顿迭代法c++程序设计求解0=x*x-2*x-y+0.5;0=x*x+4*y*y-4;的方程#include#include#defineN2//非线性方程组中方程个数、未知量个数#defineEpsilon0.0001//差向量1范数的上限#defineMax100//最大迭代次数usingnamespacestd;constintN2=2*N;intmain(){voidff(floatxx[N],floatyy[N]);//计算向量函数的因变量向量yy[N]voidffjacobian(floatxx[N],floatyy[N][N
2、]);//计算雅克比矩阵yy[N][N]voidinv_jacobian(floatyy[N][N],floatinv[N][N]);//计算雅克比矩阵的逆矩阵invvoidnewdundiedai(floatx0[N],floatinv[N][N],floaty0[N],floatx1[N]);//由近似解向量x0计算近似解向量x1floatx0[N]={2.0,0.25},y0[N],jacobian[N][N],invjacobian[N][N],x1[N],errornorm;inti,j,iter=0;//如果取消对x0的初始化,撤销下面两行的注释符,就可以由键盘
3、向x0读入初始近似解向量for(i=0;i>x0[i];cout<<"初始近似解向量:"<4、由近似解向量x0计算近似解向量x1newdundiedai(x0,invjacobian,y0,x1);//计算差向量的1范数errornormerrornorm=0;for(i=0;i5、=x*x-2*x-y+0.5;yy[1]=x*x+4*y*y-4;//计算初值位置的值cout<<"向量函数的因变量向量是:"<6、<<"雅克比矩阵是:"<7、seaug[i][j]=0;}for(i=0;i
4、由近似解向量x0计算近似解向量x1newdundiedai(x0,invjacobian,y0,x1);//计算差向量的1范数errornormerrornorm=0;for(i=0;i5、=x*x-2*x-y+0.5;yy[1]=x*x+4*y*y-4;//计算初值位置的值cout<<"向量函数的因变量向量是:"<6、<<"雅克比矩阵是:"<7、seaug[i][j]=0;}for(i=0;i
5、=x*x-2*x-y+0.5;yy[1]=x*x+4*y*y-4;//计算初值位置的值cout<<"向量函数的因变量向量是:"<6、<<"雅克比矩阵是:"<7、seaug[i][j]=0;}for(i=0;i
6、<<"雅克比矩阵是:"<7、seaug[i][j]=0;}for(i=0;i
7、seaug[i][j]=0;}for(i=0;i
此文档下载收益归作者所有