mpa模式下的abaqus fortran使用matmul给出了不同的结果

时间:2014-04-13 18:08:25

标签: mpi fortran90 intel-fortran

我正在使用Fortran90 freeformat编码和intel ifort编译器来创建一个用户子程序,该子程序在ABAQUS中的有限元计算中进一步使用。 这个例程只需一个核心即可。 然而,当在并行模式(MPI)中使用它时,模拟崩溃(信号11) 我将其跟踪到以下代码行。 这将导致错误

BBAR1           = J**(-2d0/3d0)*( MATMUL( F1,TRANSPOSE(F1) ) )

此版本将执行此操作:

BBAR1           = ( MATMUL( F1,TRANSPOSE(F1) ) )
BBAR1           = J**(-2d0/3d0)*BBAR1

这让我发疯了。有没有人知道为什么会这样?

感谢任何建议

1 个答案:

答案 0 :(得分:0)

最后我得到了解决方案。 今天我随机尝试将我的intel编译器版本从ifort 14.0降级到ifort 12.1.5 现在一切正常...... 这真奇怪。不知何故,ABAQUS中的并行解决方案与最新的英特尔版本无法正常工作。