Numpyの複素数の絶対値について質問です。
z = [10.+0.j -2.+2.j -2.+0.j -2.-2.j]
print(numpy.abs(z[0]))
print(numpy.abs(z[1]))
print(numpy.abs(z[2]))
print(numpy.abs(z[3]))
上記コードで以下の出力が得られました。
10.0
2.8284271247461903
2.0
2.8284271247461903
複素数の定義に従って計算をすれば
z = a + bi
|z| = √(a^2 + b^2)
より
z[3]を例にすると
2 = √(-2)^2 + (-2)^2 になるはずで
2.828...のような中途半端な数字にならないと思います。
何が起こっているのでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。