Fortran Coder

标题: Fortran计算奇异矩阵问题 [打印本页]

作者: xinrenxuef    时间: 2020-6-16 18:08
标题: Fortran计算奇异矩阵问题
编写的程序中,有一段代码是计算矩阵的逆矩阵的,但是计算到求逆矩阵的时候就会提示这个矩阵的逆矩阵是奇异矩阵, Singular matrix from CMatrixInv with D =
(0.000000000000000E+000,0.000000000000000E+000),但是我在代码的下面输入write(*,*)命令让其显示该矩阵时,就会直接显示矩阵,也不会在提示奇异矩阵,请教各位大佬这是怎么回事?

作者: li913    时间: 2020-6-16 19:56
代码有bug,只能自己调试
作者: necrohan    时间: 2020-6-17 08:14
近似奇异矩阵求逆有专门的算法,另找吧。输出和奇异矩阵没任何关系。
作者: xinrenxuef    时间: 2020-6-17 10:57
necrohan 发表于 2020-6-17 08:14
近似奇异矩阵求逆有专门的算法,另找吧。输出和奇异矩阵没任何关系。

刚开始用Fortran也不太懂,这是个1024次循环变量的,变量在其他数值时都没事,但是循环到4,5,11时就出现了这个问题,让变量在4时,单独计算也会出现这样的显示,但是这时候在这个代码前后在输入write命令,让它显示矩阵,这个时候矩阵就会正常显示,也不会显示出错误,所以一直没搞懂怎么回事,另外虽然都这样显示,但是每次都能计算出结果。有没有什么能查找一下问题,请大佬赐教
作者: necrohan    时间: 2020-6-18 08:03
这不是fortran的问题,是算法的问题




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2