田中太郎
Pythonの標準モジュールであるcmath を使って複素数の計算をします!
複素数を定義する
まず、複素数を定義します
ここではまだ、cmath をimport する必要はないです
"""複素数を定義する"""
z = 2 + 3j
print(z)
print(type(z))
"""出力
(2+3j)
<class 'complex'>
"""
z = 2 + 3*j
とかにすると読み込んでくれません。虚数が変数の時は
z = 2 + a*1j
と書く必要があります。
【cmath.polar】複素数を極座標に変換
複素数を極座標に変換します。引数はcomplex型、戻り値は(大きさ、角度[rad])のタプルが返ってきます。
import cmath
"""虚数(z = a + bj)を極座標(z = (r, θ))に変換する。"""
z = 3 + 4j
z1 = cmath.polar(z)
print(z1)
"""出力
(5.0, 0.9272952180016122)
<class 'tuple'>
"""
【cmath.rect】極座標を複素数に変換する
極座標を複素数に変換します。引数は(大きさ, 角度)、戻り値はcomplex 型です。
import cmath
"""極座標(z = (r, θ))を複素数(z = a + bj)に変換する"""
z = cmath.rect(1, cmath.pi)
print(z)
print(type(z))
"""出力
(-1+1.2246467991473532e-16j)
<class 'complex'>
"""
【cmath.exp】EXPを計算する
exp(x) の計算をします。引数は(大きさ, 角度)、戻り値はcomplex 型です。
import cmath
"""z = exp(r, θ)"""
z = cmath.exp(1, cmath.pi)
print(z)
print(type(z))
"""出力
(-1+1.2246467991473532e-16j)
<class 'complex'>
"""
cmath にある定数
import cmath
"""cmathにある定数"""
print(cmath.pi) # 3.14159...
print(cmath.e) # 2.72828...
print(cmath.tau) # 6.28318
print(cmath.inf) # float("inf")
print(cmath.infj) # float("infj")
print(cmath.nan) # float("nan")
print(cmath.nanj) # float("nanj")
まとめ
python 標準モジュールであるcmath の説明をしました。ほかにも機能があるので、気になる方は公式ドキュメントをご覧ください。
コメント