- 40
- 0
- 约3.42万字
- 约 33页
- 2017-02-02 发布于天津
- 举报
1.6矩阵运算
6 矩阵运算
矩阵运算是数值计算中最重要的一类运算,特别是在线性代数和数值分析中,它是一种最基本的运算。本章讨论的矩阵运算包括矩阵转置、矩阵向量相乘、矩阵乘法、矩阵分解以及方阵求逆等。在讨论并行矩阵算法时分三步进行:①算法描述及其串行算法;②算法的并行化及其实现算法框架以及简单的算法分析;③算法实现的MPI源程序,以利于读者实践操作。
矩阵转置
矩阵转置及其串行算法
对于一个n阶方阵A=[aij],将其每一下三角元素aij (ij)沿主对角线与其对称元素aji互换就构成了转置矩阵AT。假设一对数据的交换时间为一个单位时间,则下述矩阵转置(Matrix Transposing)算法18.1的运行时间为(n2-n)/2=O(n2)。
算法18.1 单处理器上矩阵转置算法
输入:矩阵An×n
输出:矩阵An×n的转置ATn×n
Begin
for i=2 to n do
for j=1 to i-1 do
交换a[i,j]和a[j,i]
endfor
endfor
End
图 18.1 子块转置
矩阵转置并行算法
此处主要讨论网孔上的块棋盘划分(Block-Checker Board Partitioning,又称为块状划分)的矩阵转置算法,它对循环棋盘划分(Cyclic-Checker Board Partitioning)也同样适用。另外,超立方上块棋盘划分的矩阵转置算法
原创力文档

文档评论(0)