Pythonで複素数の計算をしてみた。

数学

数学では、実数(Real Number)の他に複素数 (Complex number)も扱います。

それをPythonを使って計算してみましょう。

この記事はこんな人におすすめ。

  • Pythonによる複素数の表し方を知りたい。
  • 複素数の大きさの求め方を知りたい。

プログラミング無料体験はこちら↓↓↓


Python の複素数

Pythonを使って複素数を計算するときは、複素数の虚部に使われる記号  をjで表します。

例えば、

複素数 3+4 を3+4j と表します。

では実際に複素数を見てみましょう。

下記では、3+4j に a を割り当て、type 関数で a を指定すると complex 型のオブジェクトと返してきました。

同じように4+4j に b を割り当て、type 関数で b を指定すると、同じように complex 型と返してきます。

a=3+4j
a
(3+4j)

type(a)
complex

b=4+4j
b
(4+4j)

type(b)
complex

複素数同士での四則演算もすることができます。

a+b
(7+8j)

a-b
(-1+0j)

a*b
(-4+28j)

a/b
(0.875+0.125j)

では複素数の実部と虚部を取り出してみましょう。

複素数の実部は3+4jで言えば、3の部分で、虚部は4jの部分。

属性realと属性imagを使って実部と虚部の部分を取り出していきます。

a.real
3.0

a.imag
4.0

b.real
4.0

b.imag
4.0

a.conjugate()
(3-4j)

b.conjugate()
(4-4j)

4+4jでも実部と虚部を取り出すことができます。

b.real によって 実部 4 、b.imagによって同じく虚部 4をとる出すことができました。

複素数の共役

また、複素数の共役 (conjugate) とは、実部が同じで虚部の符号が逆になったものを言います。

例えば 3+4j の共役は 3-4j。

4+4jの共役は4-4jになりますね。

conjugate()メソッドを使って取り出してみると、

a.conjugate()が 3-4j になっていますね。

bでも同じことで、b.conjugate()で4-4jが取り出せます。

複素数の大きさ

では複素数の大きさを求めてみましょう。

複素数 a とbの大きさ、  および を求める場合の式は以下の通り。

この式をもとに、pythonで計算してみましょう。

(a.real**2 + a.imag**2)**0.5
5.0

(b.real**2+b.imag**2)**0.5
5.656854249492381

# abs関数を使って複素数の大きさを求める
abs(a)
5.0

abs(b)
5.656854249492381

複素数 a の大きさ は 5.0。

複素数 b の大きさ は 5.656854249492381になりました。

このように式を記述しなくても、実は複素数の大きさをabs()関数で求めることができます。

abs()関数を使うことで、

は 5.0

は 5.656854249492381

と記述式と同じように、複素数の大きさを求めることができましたね。

プログラミング無料体験はこちら↓↓↓



 

関連記事:

python で重さの単位変換プログラムを書いてみた
重さの単位は世界共通ではありません。 イギリスやアメリカなどでは、私たちが使っているキログラムではなく、ポンドやオンスが重量の単位です。 当然そのままでは都合が悪いので、どちらに単位の変換をしなければなりません。 そこで、...
python を使った整数の因数計算プログラム
整数の因数を計算するプログラムです。 因数ですが、ある数 a を他の整数 b で割り、余りが無ければ a は b の因数ということになります。 この記事はこんな人におすすめ。 Pythonで因数を割...

コメント

タイトルとURLをコピーしました