Все мои выходные данные - NaN, и стандартная ошибка - «IEEE_INVALID_FLAG». Я отлаживаю код в gdb и обнаруживаю, что первая строка IEEE_INVALID_FLAG - это строка 281:
Program received signal SIGFPE, Arithmetic exception.
0x000055555555c830 in calcu () at SIMPLE-2D.f:281
281 & +(1.-URFU)*U(I,J)
Код для строки 281 - это выражение для введите здесь описание изображения , а полный код:
U(I,J)=URFU/APU(I,J)*
& (AEEU(I,J)*U(I+2,J)+AEU(I,J)*U(I+1,J)
& +AWWU(I,J)*U(I-2,J)+AWU(I,J)*U(I-1,J)
& +ANNU(I,J)*U(I,J+2)+ANU(I,J)*U(I,J+1)
& +ASSU(I,J)*U(I,J-2)+ASU(I,J)*U(I,J-1)
& +(P(I,J)-P(I+1,J))*DY)
& +(1.-URFU)*U(I,J)
I = 1: 79, J = 1: 80. AEEU, AEU, ... - это матрица 79 * 80. Может ли кто-нибудь дать мне некоторое представление об этой ошибке? Большое спасибо!