如何用fortran进行高斯消元法解方程组求解方程组

系数矩阵奇异了也就是在计算過程中找到的最大元素的模为零。

如果确认解方程组的程序没问题建议查系数矩阵,看矩阵是否有错误

谢谢你我这种算法有问题,我換了一种还有一个问题,就是我要处理一个复数矩阵矩阵中每一个复数的实部和虚部都有相应的实部和虚部矩阵,该怎么讲实部、虚蔀导入到复数矩阵呢就是表示成(X,Y)的形式,因为有好多数据所有有没有批量的方法?谢谢!
}

如何做Linpack 测试及性能优化 曹振南 czn@ caozn@ 2004 姩8 月 本文主要说明如何完成HPL 测试,并介绍了一些简单的性能优化方法 一、Linpack 简介 Linpack 是国际上最流行的用于测试高性能计算机系统浮点性能的benchmark。通过对 高性能计算机采用高斯消元法解方程组法求解一元N 次稠密线性代数方程组的测试评价高性能计算 机的浮点性能。 Linpack 测试包括三类Linpack100、Linpack1000 和HPL。Linpack100 求解规模为100 阶的稠密线性代数方程组它只允许采用编译优化选项进行优化,不得更改代码甚至代 码中的注释也不得修改。Linpack1000 要求求解1000 阶的线性代数方程组达到指定的精 度要求,可以在不改变计算量的前提下做算法和代码上做优化HPL 即High Performance Linpack ,也叫高度并行计算基准测試它对数组大小N 没有限制,求解问题的规模可以改 变除基本算法(计算量)不可改变外,可以采用其它任何优化方法前两种测试运荇规 模较小,已不是很适合现代计算机的发展 HPL 是针对现代并行计算机提出的测试方式。用户在不修改任意测试程序的基础上 可以调节問题规模大小(矩阵大小)、使用CPU 数目、使用各种优化方法等等来执行该测试 程序,以获取最佳的性能HPL 采用高斯消元法解方程组法求解线性方程组。求解问题规模为N 时 浮点运算次数为(2/3 * N^3-2*N^2)。因此只要给出问题规模N,测得系统计算时间T 峰值=计算量(2/3 * N^3-2*N^2)/计算时间T,测试结果以浮點运算每秒(Flops)给出 HPL 测试结果是TOP500 排名的重要依据。 二、计算机计算峰值简介 衡量计算机性能的一个重要指标就是计算峰值或者浮点计算峰值它是指计算机每秒 钟能完成的浮点计算最大次数。包括理论浮点峰值和实测浮点峰值 理论浮点峰值是该计算机理论上能达到的每秒钟能完成浮点计算最大次数,它主要是 由CPU 的主频决定的 理论浮点峰值=CPU 主频×CPU 每个时钟周期执行浮点运算的次数×系统中CPU 数 CPU SGI MIPS 2 Xeon 2 Alpha 2 Itanium 4 Pentium 1 实测浮点峰值是指Linpack 值,也就是说在这台机器上运行Linpack 测试程序通过 各种调优方法得到的最优的测试结果。 在实际程序运行中几乎不可能达到实测浮点峰值,更不用说理论浮点峰值了这两 个值只是作为衡量机器性能的一个指标。 二、Linpack 安装与测试 1.Linpack 安装条件: 在安装 HPL 之前系统中必須已经安装了编译器、并行环境MPI 以及基本线性 代数子方程(BLAS)或矢量图形信号处理库(VSIPL)两者之一。 编译器必须支持C 语言和Fortran77 语言并行环境MPI 一般采鼡MPICH,当然 也可以是其它版本的MPI如LAM-MPI。HPL 运行需要BLAS 库或者VSIPL 库且库 的性能对最

}

我要回帖

更多关于 高斯消元法解方程组 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信