sor迭代法代码matlab,SOR迭代法求线性方程组
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
%SOR迭代法
function [y,k,err,w]=sor(eps,a,n)
h=1/n;
A=zeros(n-1,n-1); %定义系数矩阵A
for i=1:n-1
A(i,i)=-(2*eps+h);
end
for i=1:n-1
for j=1:n-1
if i==j+1
A(i,j)=eps;
end
if i==j-1
A(i,j)=eps+h;
end
end
end
b=zeros(n-1,1); %定义常数项b
for i=1:n-2
b(i,1)=a*h^2;
end
b(n-1,1)=a*h^2-eps-h; %考虑边值问题
D=diag(diag(A));
L=triu(A)-A;
U=tril(A)-A;
B=D\(L+U);
x=eig(B); %B的特征值
p=abs(max(x)); %B谱半径
w=2/(1+sqrt(1-p^2)); %最佳松弛因子
if w<0||w>2
disp('迭代不收敛!');
return;
end;
L=(D-w*L)\((1-w)*D+w*U);
f=w*(D-w*L)\b;
q=1-h*h;
delta=(1.0e-4)*(1-q)/q;
y=zeros(n-1,1);
z=zeros(n-1,1);
k=0;
while 1
z=L*y+f;
if norm(z-y,inf)
break;
end
y=z;
k=k+1;
end
x=[h:h:(n-1)*h];
true=(1-a)/(1-exp(-1/eps))*(1-exp(-x/eps))+x*a;
t=true';
err=norm(t-y,inf);
sor迭代法代码matlab,SOR迭代法求线性方程组相关推荐
- 牛顿迭代法例题 matlab,牛顿迭代法-matlab程序(解线性方程组)
牛顿迭代法 matlab程序(解线性方程组) 作者:佚名来源:转载发布时间:2009-3-7 16:55:53 减小字体 增大字体 1.功能 本程序采用牛顿法,求实系数高次代数方程 f(x)=a0xn ...
- 牛顿迭代法例题 matlab,牛顿迭代法求方程根的MATLAB程序
function [x_reality,n_reality] = Newt( f_name,x_start,tolerance,n_limit) %% %牛顿迭代法(切线法)求解方程f_name = ...
- matlab lu分解求线性方程组_计算方法(二)直接三角分解法解线性方程组
封面是WH2里春希在编辑部的上司麻理前辈,有一说一,这条线的第一次H有点恶趣味,不是很喜欢. 一:概述 矩阵分解我学过的挺多种,比如极分解,谱分解,满秩分解,正交三角分解还有这里的直接三角分解大部分我 ...
- matlab 高斯迭代法求解,高斯迭代法matlab算例
Matlab 线性方程组的迭代解法 Gauss-Seidel 迭代法 Matlab 线性方程组的迭代解法 Gauss-Seidel 迭代法实验报告 1.熟悉 Gauss-Seidel 迭代法,并编写 ...
- 用matlab写牛顿迭代法,牛顿迭代法的MATLAB实现
20 牛顿迭代法的MATLAB实现 云 磊 (襄樊学院,湖北 襄阳 441053) 摘要:牛顿迭代法是方程求根中的一种较快捷的迭代方法,但遇到较复杂的方程时计算量较大.文章采用了MATLAB编程来实现 ...
- 用matlab求雅可比迭代法,基于matlab的jacobi(雅可比)迭代法求解线性方程组
说明推导见此博客:https://blog..net/zengxyuyu/article/details/53054880 源码见下面: main.m clear clc A = [8 -3 2;4 ...
- c语言编程雅可比解方程,求雅可比迭代法解方程组的C\C++程序,急需一个运用雅可比迭代法求线性方程组的C/C++程序!...
问题标题 求雅可比迭代法解方程组的C\C++程序,急需一个运用雅可比迭代法求线性方程组的C/C++程序! 2019-7-8来自ip:14.137.150.56的网友咨询 浏览量:218 手机版 问题补 ...
- MATLAB Jacobi迭代法 求解线性方程组
文章目录 前言 一.Jacobi迭代法是什么? 二.对应的编程思想以及公式推导 1.Jacobi迭代法 公式推导 2.Jacobi迭代法求解线性方程组 例子 3.Jacobi迭代法 编程实现 总结 前 ...
- jacobi matlab程序,jacobi迭代法实验MATLAB程序数值分析
jacobi迭代法实验MATLAB程序数值分析 例1. 求线性方程组 得近似解.精确解为x*=[3,2,1]'. 解:对方程进行移项就得 记为Ax=b,或写为x=B0 x+f,其中 取初始值,代入原方 ...
最新文章
- 如何kill同一个应用的所有进程
- 什么是电源正激和反激? 正激和反激有什么区别特点?如何快速区分
- 困扰多年的PCB散热问题终于可以解决了!
- c++ 操作mysql_C++操作mysql方法总结(1)
- html5 image 同步,html5 image使用大全
- paip。更换程序图标总结
- 无线网络dns服务器是多少,中国移动宽带dns是多少?
- mysql 5.7 在线ddl
- spring中MessageSource的配置使用方法3--ResourceBundleMessageSource
- 什么是一体化管理体系
- 初级中学计算机知识,计算机基础知识(初级中学级教学方案课程教案).doc
- WiFi慢不一定是信号不好,这几招让你上网更顺畅
- 计算机一级mcoffice考试题型,计算机一级MSOffice考试试题
- “集五福”瓜分20亿!互联网巨头扎堆春节红包大战,暗藏啥玄机?
- Swarm安装与应用
- 用BibTeX 写 Reference
- html 清除animation,简单删除动画效果
- debian 开发版 移植_Debian 下安装 WineHQ 最新开发版和Staging版的方法
- linux查看cpupower模式,Linux - cpupower调整CPU主频
- 云计算运维需要经常上夜班吗?需要倒班吗?