回答編集履歴
1
ですます統一
answer
CHANGED
@@ -3,9 +3,9 @@
|
|
3
3
|
```fortran
|
4
4
|
xrj=sqrt(xj(i)+xj(i)+yj(i)*yj(i)+zj(i)*zj(i))
|
5
5
|
```
|
6
|
-
中の xj(i)*xj(i) が xj(i)+xj(i) になっているところでは? これが負数のため sqrt(負数) ⇒ NaN になっている可能性が高い。
|
6
|
+
中の xj(i)*xj(i) が xj(i)+xj(i) になっているところではと? これが負数のため sqrt(負数) ⇒ NaN になっている可能性が高いと思います。。
|
7
7
|
|
8
|
-
これは最初に間違ったのをコピペしたようで3回繰り返して間違ってい
|
8
|
+
これは最初に間違ったのをコピペしたようで3回繰り返して間違っています。
|
9
9
|
|
10
|
-
デバッグのヒント
|
10
|
+
デバッグのヒントですが、NaN が出る場合を知っておくと少し楽になります。
|
11
|
-
0.0/0.0 (未定義演算)とか sqrt(負) の様な組み込み関数の定義域未定義呼び出しとかが主なので、今の場合は割り算か sqrt が怪しいことにな
|
11
|
+
0.0/0.0 (未定義演算)とか sqrt(負) の様な組み込み関数の定義域未定義呼び出しとかが主なので、今の場合は割り算か sqrt が怪しいことになります。
|