稀疏线性方程组的求解共轭梯度算法步骤.PPT

稀疏线性方程组的求解共轭梯度算法步骤.PPT

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
稀疏线性方程组的求解共轭梯度算法步骤

* 13.2 稀疏线性方程组的求解 最速下降法的迭代图示: 优点: 1. 程序简单,每步迭代计算量少,存储省。 2. 对于不太好的初始点X(0),往往也能收敛。 缺点:  最速下降法是名不符实的,一般来说,它只有线性的收敛速度。 椭球面簇图: q(x)=Ci q(x1,x2)=Ci * 13.2 稀疏线性方程组的求解 (3)共轭梯度法 1952年,Hestenes和Stiefel发现了共轭梯度法,对于n阶的线性方程组, 至多只要n步就能得到解。 以n=2为例 从椭圆q(X)=q(X(0))上的X(0)点出发,用最优斜量法得到X(1), d(0)=-r(0)=b-AX(0) (负梯度方向) r(1)=AX(1)-b, 可以验证(r(0), r(1))=0, 说明-r(1)是q(X)=q(X(1))的内法向(负梯度). 第二步不走-r(1)方向,而走共轭方向p(1), 可以验证p(1),过椭圆中心X*. p(1)方向的极小点就是X*. * 13.2 稀疏线性方程组的求解 共轭梯度算法步骤: * 13.2 稀疏线性方程组的求解 共轭梯度法的并行化分析(思考题): 考虑PRAM模型 - 数据划分 每个处理器存有A的若干行,以及b、d、r的部分分量 - 计算和通讯 计算:矩阵和向量乘积、向量内积 时间? 通讯:矩阵和向量乘积、向量内积计算时的数据交换 时间? - 总时间? * 13.2 稀疏线性方程组的求解 稀疏系数矩阵的存储方法 * 13.2 稀疏线性方程组的求解 稀疏系数矩阵的存储方法 * 讲授内容 13.1 稠密线性方程组求解 13.2 稀疏线性方程组的求解 13.3 非线性方程的求根 * 13.3 非线性方程的求根 13.3.1 SIMD-CREW上的等分求根算法 1. 二分法求根原理 若f(x)在[a, b]上是连续的, 且有f(a)f(b)0, 则存在z∈(a, b) 使f(z)=0 2. SISD上的二分求根算法: P458算法13.6 3. SIMD-CREW上的等分求根算法 repeat ①将[a,b]分为N等分, 等分点a=x0x1x2…xN=b, Pi计算f(xi) ②存在某个f(xi)=0, 输出xi ③若②不成立, 找xi,xi+1, 使f(xi)f(xi+1)0, a?xi, b?xi+1 until |a-b|c 并行时间O(logN+1|a-b|) * 13.3 非线性方程的求根 13.3.2 MIMD-CREW上的Newton求根算法 1. Newton求根法 设f(x)在[a, b]上是连续且f’(x)0, f”(x)0, f(a)f(b)0, 则 初始值: 若f”(x)0, 取x0=a; 若f”(x)0, 取x0=b 第n+1次迭代: xn+1=xn-f(xn)/f’(xn) 直至|xn+1-xn|c 2. 算法分析 Newton迭代法是二次收敛, 当x0充分接近z时, 收敛速度很快。 若①f(x), f’(x), f”(x)在含有z的区间内连续有界 ②|x0-z|1 则对较大n, 有|xn+1-z|≤k|xn-z|2 * 13.3 非线性方程的求根 3. MIMD上的Newton迭代法 N个处理器 ①将[a, b]等分成N份; ②产生N个进程, 每个进程独立迭代, 初始值取等分点; ③一旦某进程收敛, 写根, 算法结束。当多个进程收敛时,

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档