主题:fortran 中精度问题该如何克服?
现在在调试一个程序,发现下面问题:
编译器 intel visual fortran ( linux)
kind=16
按说这个精度也应该足够了。但是我做的是一个高斯积分(结点npoint),其中涉及一个矩阵的逆运算(误差epsl),
epsl可以调到最高,npoint ,按说30足够了,但是调到40后,还是只有五位有效数字,这个精度对后面的计算还是不够的。
我分析了一下具体原因,可能是我求解的表达式太多,要对上百个式子积分,累计误差导致了这样吧。
有没有具体的办法来改进啊? 表达式是不能改了。
谢谢!
编译器 intel visual fortran ( linux)
kind=16
按说这个精度也应该足够了。但是我做的是一个高斯积分(结点npoint),其中涉及一个矩阵的逆运算(误差epsl),
epsl可以调到最高,npoint ,按说30足够了,但是调到40后,还是只有五位有效数字,这个精度对后面的计算还是不够的。
我分析了一下具体原因,可能是我求解的表达式太多,要对上百个式子积分,累计误差导致了这样吧。
有没有具体的办法来改进啊? 表达式是不能改了。
谢谢!