



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C+实现 牛顿迭代 解非线性方程组(二元二次为例)求解 0=x*x-2*x-y+0.5; 0=x*x+4*y*y-4;的方程#include#include#define N 2 / 非线性方程组中方程个数、未知量个数 #define Epsilon 0.0001 / 差向量1范数的上限#define Max 100 / 最大迭代次数using namespace std;const int N2=2*N;int main()void ff(float xxN,float yyN); /计算向量函数的因变量向量yyNvoid ffjacobian(float xxN,float yyNN); /计算雅克比矩阵yyNNvoid inv_jacobian(float yyNN,float invNN); /计算雅克比矩阵的逆矩阵invvoid newdundiedai(float x0N, float invNN,float y0N,float x1N); /由近似解向量 x0 计算近似解向量 x1float x0N=2.0,0.25,y0N,jacobianNN,invjacobianNN,x1N,errornorm;int i,j,iter=0; /如果取消对x0的初始化,撤销下面两行的注释符,就可以由键盘x读入初始近似解向量for( i=0;ix0i;cout初始近似解向量:endl;for (i=0;iN;i+)coutx0i ; coutendl;coutendl;doiter=iter+1;cout第 iter 次迭代开始endl; /计算向量函数的因变量向量 y0ff(x0,y0); /计算雅克比矩阵 jacobianffjacobian(x0,jacobian); /计算雅克比矩阵的逆矩阵 invjacobianinv_jacobian(jacobian,invjacobian); /由近似解向量 x0 计算近似解向量 x1 newdundiedai(x0, invjacobian,y0,x1); /计算差向量的1范数errornormerrornorm=0;for (i=0;iN;i+)errornorm=errornorm+fabs(x1i-x0i);if (errornormEpsilon) break;for (i=0;iN;i+)x0i=x1i; while (iterMax);return 0;void ff(float xxN,float yyN) /调用函数float x,y; int i; x=xx0;y=xx1;yy0=x*x-2*x-y+0.5; yy1=x*x+4*y*y-4; /计算初值位置的值 cout向量函数的因变量向量是: endl;for( i=0;iN;i+) coutyyi ; coutendl;coutendl;void ffjacobian(float xxN,float yyNN) float x,y; int i,j;x=xx0;y=xx1;/jacobian have n*n element /计算函数雅克比的值yy00=2*x-2;yy01=-1;yy10=2*x;yy11=8*y; cout雅克比矩阵是: endl;for( i=0;iN;i+) for(j=0;jN;j+) coutyyij ; coutendl; coutendl;void inv_jacobian(float yyNN,float invNN)float augNN2,L; int i,j,k; cout开始计算雅克比矩阵的逆矩阵 :endl; for (i=0;iN;i+) for(j=0;jN;j+) augij=yyij; for(j=N;jN2;j+)if(j=i+N) augij=1;else augij=0; for (i=0;iN;i+) for(j=0;jN2;j+) coutaugij ; coutendl;coutendl; for (i=0;iN;i+) for (k=i+1;kN;k+) L=-augki/augii;for(j=i;jN2;j+) augkj=augkj+L*augij; for (i=0;iN;i+) for(j=0;jN2;j+) coutaugij ; coutendl;cout0;i-) for (k=i-1;k=0;k-) L=-augki/augii;for(j=N2-1;j=0;j-) augkj=augkj+L*augij; for (i=0;iN;i+) for(j=0;jN2;j+) coutaugij ; coutendl;cout=0;i-) for(j=N2-1;j=0;j-)augij=augij/augii;for (i=0;iN;i+) for(j=0;jN2;j+) coutaugij ; coutendl; for(j=N;jN2;j+) invij-N=augij;coutendl;cout雅克比矩阵的逆矩阵: endl;for (i=0;iN;i+) for(j=0;jN;j+) coutinvij ; coutendl;coutendl;void newdundiedai(float x0N, float invNN,float y0N,float x1N)int i,j;float sum=0;for(i=0;i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乱世倾心笔试题答案
- 2025年统一服务厅装修合同范本
- 2025年未领结婚证书无资产离婚协议书范文
- 2025年免责合同模板
- 2025年联合摄制网络电影合同样本
- 2025年办公家具合作项目合同样本
- 汽车特种考试题及答案
- 高级保育员考试试题及答案
- 2025年物流行业安全知识测试题库
- 17 我爱我校教学设计-2025-2026学年小学心理健康六年级大象版
- 煤矿防治水课件教学
- 二零二五年度汽车配件销售合作协议
- 手术室术中无菌技术课件
- 保险业务档案管理办法
- 2025至2030中国食品工业中的X射线检查系统行业项目调研及市场前景预测评估报告
- 海门市小升初历年数学试卷
- 企业安全生产费用支出负面清单
- 2025-2030中国天然气汽车行业发展分析及发展前景与趋势预测研究报告
- 2024云南师范大学辅导员招聘笔试真题
- 现代教育技术说课
- 2025年广省中考作文《走到田野去》写作指导及范文
评论
0/150
提交评论