【解析】Pythonでライブラリを使わずに双曲線関数を計算する

数学

Pythonで双曲線関数を計算する場合

np.sinh(theta)

などとすればいいが、使わずに計算することもできる。双曲線関数の定義

\begin{align}
\sinh x= \frac{e^{x}-e^{-x}}{2}\\
\cosh x= \frac{e^{x}+e^{-x}}{2}
\end{align}

に従い計算すれば

を得る。以下ソースコード

import numpy as np
import matplotlib.pyplot as plt

theta = np.arange(-2 * np.pi, 2 * np.pi, 0.01)
y1 = (np.e ** theta - np.e ** (-theta)) / 2
y2 = (np.e ** theta + np.e ** (-theta)) / 2

plt.plot(theta, y1)
plt.plot(theta, y2)

plt.grid()
plt.xlim([-4, 4])
plt.ylim([-6, 6])
plt.show()

コメント

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