有没有办法将NaN
和普通数字以不同的方式组合,然后通常在Fortran中完成?
我有几个摘要,其中包含“安全”术语,不能是NaN
,还有一些其他术语可以是NaN
。
我希望对表达式的评估忽略加数,以防它们是NaN
。
我不能把它们除去它们乘以空因子NaN
,因为NaN x 0
无论如何都会NaN
。
想法?
由于
答案 0 :(得分:4)
没有传播NaN
的算术运算。因此,乘以0的想法将无效。
您唯一的解决方案是错过总和中的NaN
条款。用基于
IF (IEEE_IS_NAN(x))
如果您没有使用IEEE754或使用较旧的FORTRAN标准,那么您可以使用
IF(x .NE. x)
当且仅当x是NaN时才为TRUE。