计算方法–用雅克比迭代法和高斯赛德尔迭代法求解线性方程组

AX = b
雅克比迭代法的数学基础
x = Gx + b
x = (A ^ -1) b
A = L + D + U(L是一个下三角阵,他的对角线为1,D是一个aii的对角阵,U是一个上三角阵)
(L + D + U)X = b —-> DX = LX + UX + b——> DX^(k + 1) = LX^(k + 1) + UX^(k) + b —-> X^(k + 1) = (E - A)X^(k) + D^(-1)b

高斯–赛德尔的做法(同理)


#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>#define epx 0.5 * 1e-5
#define M 1000 //最大迭代次数
#define N 5  //方程组的阶数int main() {double a[N][N] = {{0,0,0,0,0}, {0,8,7,0,0}, {0,6, 12, 5, 0}, {0,0, 4, 9, 3}, {0, 0, 0, 1, 2} }; double b[N] = {0, 0, -2, 8,6};double y[N]; //结果向量 double x[N];double norm;memset(y, 0 , sizeof(y));int k = 1;int i,j;int flag ;double result;do {flag = 0;//保存老值--strcpy();for (i = 0; i < N ; i++) {x[i] = y[i];}for (i = 1; i < N ; i++) {result = 0;for (j = 1; j < N; j++) {if (i != j) {result += a[i][j] * y[j];    }}y[i] = (b[i] - result) / a[i][i]; //求出解空间}//求y -x 的范数norm =0.0;for (i = 1; i < N; i++) {if (fabs(x[i] - y[i]) > norm) {norm = fabs(x[i] - y[i]);}}if (norm < epx) {break;}}while(k++ < M ); printf("########answer###########\n");//打印结果for (i = 1; i < N; i++) {printf("%-4lf\n",y[i]);}return 0;
}

【计算方法】雅克比迭代法-高斯赛德尔迭代法求解线性方程组(c语言实现)相关推荐

  1. 高斯消元法求解线性方程组——C语言实现

    题目描述: 给定一个线性方程组,对其求解 输入格式:第一行,一个正整数n第二至n+1行,每行n+1个整数,为a1,a2-am和b,代表一组方程 输出格式:共n行,每行一个数,第i行为xi(保留2位小数 ...

  2. 22(线性方程组求解)高斯赛德尔迭代法

    高斯赛德尔迭代法(线性方程组求解) [问题描述]为求解一个线性方程组,使用高斯赛德尔迭代法,采用欧几里得距离判定是否收敛.精度delta为1E-9,最大迭代次数为20. [输入形式]在屏幕上依次输入方 ...

  3. 高斯赛德尔迭代法(线性方程组求解)

    问题描述 为求解一个线性方程组,使用高斯赛德尔迭代法,采用欧几里得距离判定是否收敛.精度delta为1E-9,最大迭代次数为20. 输入形式 在屏幕上依次输入方阵阶数n,系数矩阵A,常数矩阵B和起始点 ...

  4. 《计算方法》---雅克比迭代法和高斯赛德尔迭代法(python实现)

    本次将通过一个具体实例来实现一下这两种方法的过程 例题: 1.共同部分 import numpy as np #输入部分 A = np.array([[10.0, -2, -1], [-2, 10, ...

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

    长博文不利于翻阅,于是又将Jacobi迭代法单独出来了. 这篇博文把高斯-赛德尔迭代法和雅克比迭代法都放到一起了,个人觉得看着有点累.(迭代法求解线性方程组),不过还是要看的,因为它引出了迭代法. 进 ...

  6. 迭代法求解线性方程组的收敛问题总结

    本讲之前,先将高斯-赛德尔迭代法和雅克比迭代法以及迭代法求解线性方程组贴出来,毕竟收敛问题研究的是迭代方法的收敛问题. 进入主题: 判断迭代法收敛的办法: 1.首先根据方程组的系数矩阵A的特点判断: ...

  7. MATLAB Jacobi迭代法 求解线性方程组

    文章目录 前言 一.Jacobi迭代法是什么? 二.对应的编程思想以及公式推导 1.Jacobi迭代法 公式推导 2.Jacobi迭代法求解线性方程组 例子 3.Jacobi迭代法 编程实现 总结 前 ...

  8. 用Matlab求解一维非稳态周期性导热问题(有限单元法+隐式离散+高斯赛德尔迭代法)

    本次求解不一定对,请先看最后说明 一.问题描述与分析 本次问题条件如下: 计算模拟如下一维常物性无内热源非稳态导热的温度场,以及内外壁面的热流密度,并进行温度场和热流的特点分析,相关参数如下. 室内温 ...

  9. 分别用雅可比(Jacobi)迭代法和高斯—塞德尔(Gauss—Seidel)迭代法求解线性方程组(转载)

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/yyywww666/article/details/42805071 算法介绍(迭代法介绍): 代码C ...

最新文章

  1. 程序员这样面试,拿到offer的几率是90%!
  2. 大规模数据处理的演化历程(2003-2018)
  3. hbase 数据的导入导出
  4. 3764树上的异或值(自己研究的静态字典树)
  5. mysql传参数 和 区别_mybatis中#{}和${}传参方式的区别
  6. 五个 SQL 查询性能测试题,只有 40% 及格率,你敢来挑战吗?
  7. [总]Android高级进阶之路
  8. AcWing 869. 试除法求约数(枚举)
  9. access 数据库和mysql_access数据库和sql数据库你必须知道的区别
  10. Flask 使用abort方法返回http错误码、http错误响应信息
  11. oracle卸载重新安装失败,Oracle卸载重新安装——实战
  12. 功率谱学习及matlab代码
  13. 等保2.0三级物联网安全扩展要求
  14. android gprs工作流程,Android pppd_gprs脚本启动过程
  15. 图片怎么转换成png格式?
  16. 基于JSP的共享单车管理系统的设计与实现
  17. win10 RTX30系列显卡 安装tensorflow-gpu 1.15
  18. 重放攻击(Replay Attacks)
  19. 遇到“服务器内部错误http500怎么办?
  20. Word for Mac 显示空格

热门文章

  1. 关于计算机运行管理模式,浅谈学校计算机机房管理及维护运行模式.docx
  2. 清华教授:多年以来,我对我的学生都不太满意
  3. html字段靠右对齐,CSS-在HTML标签中右对齐文本的更好方法
  4. myeclipse2017 for Mac 破解版本
  5. App地推:这些方法让你事半功倍
  6. php做excel导入word,php如何将excel表格插入到word文档
  7. 做自媒体前期如何开始?
  8. 如何使用DD-WRT增强Wi-Fi网络信号并增加范围
  9. 浙江工商大学20机试(oj复试)月利率
  10. 实现连续签到案例的可能(使用)