複素関数の挙動について

概要

(森 and 杉原 2003) の 第3章の複素変数の初等関数のプロットを実際にやってみる。

複素関数のプロット

import numpy as np
import matplotlib.pyplot as plt

def plot(in_curves, func):
    f, (ax1, ax2) = plt.subplots(1, 2)
    ax1.axis('equal')
    ax2.axis('equal')
    for crv in in_curves:
        ax1.plot(crv.real, crv.imag)
        y = func(crv)
        ax2.plot(y.real, y.imag)

in_curves = []
N = 10
for i in range(N):
    crv = np.linspace(-2, 2, 100)  + 1j * (-3*np.pi + i * (3*np.pi-(-3*np.pi)) / N)
    in_curves.append(crv)
for i in range(N):
    crv = -2 + i * (2 - (-2)) / N + 1j * np.linspace(-3*np.pi, 3*np.pi, 100)
    in_curves.append(crv)
print(in_curves)
plt.cla()
plot(in_curves, np.exp)
plt.savefig(ofile)
ofile
ed9ktsxznLcGi.png

参考文献

森 正武, and 杉原 正顯. 2003. 複素関数論. 単行本. 岩波書店. https://lead.to/amazon/jp/?op=bt&la=ja&key=4000059505.