1 //=================================================================2 //Name : 使用雅可比迭代法求解线性方程组3 //Author : 袁冬(2107020046)4 //Copyright : 中国海洋大学5 //LastUpdate : 2007.10.186 //Develop Evrionment : Windows Server 2003 SP27 //+ Eclipse 3.3.1 + CDT 4.0.18 //+ MinGW 3.81 + GDB 6.69 //+ mpich2-1.0.6-win32-ia3210 //=================================================================11 12 //#define DEBUG 1//调试符号13 14 #defineTRUE 115 #defineFALSE 016 #definebool int17 18 #defineMAX_N 100//允许的最大未知数个数19 #defineMAX_A (MAX_N * MAX_N)//允许最大的系数的个数20 21 #defineMAX_ITERATION 10000//最大迭代次数22 #defineTOLERANCE 0.001//误差23 24 #include"mpi.h"25 #include26 #include27 28 intpID, pSize;//pID:当前进程ID,pSize:总的进程数29 intn, iteration=0;//n:未知数的个数,iternation:迭代的次数30 floatx[MAX_N], new_x[MAX_N], result_x[MAX_N];//x:表示上一次迭代的结果,new_x:表示这一次迭代的结果,result_x:表示归约之后得到的总的结果31 floata[MAX_N][MAX_N];//系数32 floatb[MAX_N];33 34 //输入35 voidinput(){36 37 inti, j;38 39 printf("The n is %d\n", n);40 fflush(stdout);41 42 //输入系数43 for(i=0; iMAX_ITERATION) printf(", that is out of the limit of iteration!");63 printf("\n");64 65 for(i=0; iTOLERANCE||x[i]-result_x[i]>TOLERANCE)76 returnFALSE;77 78 #ifdef DEBUG79 printf("TRUE From %d\n", pID);80 fflush(stdout);81 #endif82 83 //全部满足误差,返回TRUE84 returnTRUE;85 }86 87 //入口,主函数88 intmain(intargc,char*argv[]) {89 90 MPI_Status status;91 inti, j;92 floatsum;93 94 //初始化95 MPI_Init(&argc,&argv);96 MPI_Comm_rank(MPI_COMM_WORLD,&pID);97 MPI_Comm_size(MPI_COMM_WORLD,&pSize);98 99 //每个进程对应一个未知数100 n=pSize;101 102 //根进程负责输入103 if(!pID) input();104 105 //广播系数106 MPI_Bcast(a, MAX_A, MPI_FLOAT,0, MPI_COMM_WORLD);107 //广播b108 MPI_Bcast(b, MAX_N, MPI_FLOAT,0, MPI_COMM_WORLD);109 110 #ifdef DEBUG111 //打印a, b112 for(j=0; jMAX_ITERATION) {179 break;180 }181 }while(!tolerance());//精度不满足要求继续迭代182 183 //根进程负责输出结果184 if(!pID) output();185 186 //结束187 MPI_Finalize();188 return0;189 }190

openmpi雅可比迭代法_用雅可比迭代法求线性方程组的解的并行算法(MPI)相关推荐

  1. LU分解求线性方程组的解

    LU分解是矩阵分解的一种,可以将一个矩阵分解为一个上三角矩阵和一个下三角矩阵的乘积. LU分解可以用来求逆矩阵,解线性方程组等.本文将介绍LU分解求线性方程组的解. 1.定义 如果A是一个方阵,A的L ...

  2. 计算方法LU分解c语言程序解线性方程组,LU分解求线性方程组的解

    LU分解是矩阵分解的一种,可以将一个矩阵分解为一个上三角矩阵和一个下三角矩阵的乘积. LU分解可以用来求逆矩阵,解线性方程组等.本文将介绍LU分解求线性方程组的解. 1.定义 如果A是一个方阵,A的L ...

  3. 计算方法Gauss-Jordan消去法求线性方程组的解

    function x=GaussJordan(A,b) % 用Gauss-Jordan消去法求线性方程组的解 % A为系数矩阵(要求解惟一,则必须为满秩方阵 n*n),b为右值 n*1 % x为所求的 ...

  4. C++高斯赛德迭代法,求线性方程组的解(version1.0)

    #include<iostream> #include<math.h> using namespace std; const int n=3; void Gauss_Seide ...

  5. 雅克比 (Jacobi) 迭代法求线性方程组的解及其代码

    简介 实例 可以看到,当迭代次数 k 增大时,迭代值会越来越接近解 x1 = x2 = x3 = 1. 代码 #include<iostream> #include<math.h&g ...

  6. 矩阵库eigen的用法(三)————求行列式值和三角分解求线性方程组的解

    在经过前面2篇对 eigen库的基础知识了解之后,下面就可以用eigen库进行一些实际的操作了. 1.计算矩阵行列式的值 在Eigen里你不能混合两种不同类型的矩阵,像这样是错的 v_3d <& ...

  7. Java实现的LU分解,高斯消去法求线性方程组的解

    LU分解在本质上是高斯消元法的一种表达形式.实质上是将A通过初等行变换变成一个上三角矩阵,其变换矩阵就是一个单位下三角矩阵.这正是所谓的杜尔里特算法(Doolittle algorithm) 重点内容 ...

  8. 杜利特尔 (Doolittle)矩阵分解法求线性方程组的解

    简介 若方阵 A 可以分解为一个下三角矩阵 L 和一个上三角矩阵 U的乘积,即 A = LU,则这种分解称为 A 的一种三角分解或 LU分解.如果 L 为单位下三角矩阵,则称为杜利特尔 (Doolit ...

  9. 如何用matlab求线性方程的通解,用matlab求线性方程的解

    用矩阵除法,求线性方程组的特解 利用矩阵除法求线性方程组的形式为:AX=b,其中A为系数矩阵,b为方程组右侧的一列常数. 由AX=b,得X=A\b,在这种条件下,首先要保证A为满秩矩阵,否则无法求解. ...

最新文章

  1. 目标检测——Faster R-CNN论文阅读
  2. [LeetCode系列]最大连续子列递归求解分析
  3. SAP WMSD集成之Copy WM Quantity – Copy WM qty as delivery qty into delivery
  4. 基于ThinkPHP的在线编辑器调用
  5. bootstrap下拉选择框选中事件_CAD制图初学入门之CAD软件中布局功能详解
  6. Ext4.2文件目录及页面默认导入文件
  7. 中国第一批写java的人_中国java开源界最可爱的人们
  8. DirectX11 With Windows SDK--07 添加光照与常用几何模型、光栅化状态
  9. Ubuntu上安装rvm
  10. 引commons-io工具类做文件的复制及导出
  11. Nginx 限制单个IP的并发连接数及对每个连接速度(限速)
  12. 安卓从入门到进阶推荐学习方法与书籍整理(pdf)
  13. (原创)用红黄蓝RYB色相环(伊登色相环)代替RGB(RGI/RGV)色相环
  14. 嘉楠科技多位高管退出,知情人称管理层夺权内斗
  15. 各版本iphone重要参数
  16. 一个vue的日历组件ele-calendar
  17. Flutter开发日常练习-小猫咪杂货店(新增欢迎页,广告页和侧滑页面)
  18. 加利福尼亚大学圣地亚哥分校计算机科学专业,美国加州大学伯克利分校计算机专业排名一览...
  19. css中textarea去掉边框和取消选中后的边框
  20. Python添加pywin32

热门文章

  1. DDD领域驱动设计-知识消化
  2. 十万个为什么儿童版_(完整版)十万个为什么少儿版
  3. 若依分离版的文件上传
  4. 【笔记本智能计划】使用OpenCv搭建一个简便实用的智能防盗监控系统
  5. Android获取本地相册图片
  6. 怎么利用服务器端口爆破网站,渗透测试:域名爆破及端口扫描
  7. vue安装和使用scss
  8. SQL server 排序 自定义排序 ASC DESC
  9. Java之马里奥游戏
  10. 清华大学计算机专业在职博士吧,清华哪个系收在职博士