「Python3」math(三角関数と双曲線関数・ラジアン角度変換)

math math

mathは名前の通り数学関数を提供しているモジュールになります。
mathはPython標準モジュールです。なので、使用したい場合にインストールする必要がありません。
このモジュールで提供されている各関数の説明と、分かりやすくmatplotlibライブラリを用いて図で表したいと思います。

今回説明する数学関数を表にまとめます。

数学関数 説明
math.acos(x) xの逆余弦をラジアンで返す
math.asin(x) xの逆正弦をラジアンで返す
math.atan(x) xの逆正接をラジアンで返す
math.atan2(y, x) y/xの逆正接をラジアンで返す
math.cos(x) xラジアンの余弦を返す
math.sin(x) xラジアンの正弦を返す
math.tan(x) xラジアンの正接を返す
math.hypot(x, y) math.hypot(x, y) ユークリッドノルム(ベクトルの長さ)
sqrt(x**2 + y**2)を返す
math.degrees(x) xラジアンから度に変換する
math.radians(x) x度からラジアンに変換する
math.acosh(x) xの逆双曲線余弦を返す
math.asinh(x) xの逆双曲線正弦を返す
math.atanh(x) xの逆双曲線正接を返す
math.cosh(x) xの双曲線余弦を返す
math.sinh(x) xの双曲線正弦を返す
math.tanh(x) xの双曲線正接を返す

また、インポートしたライブラリはこちらになります。

import math
import numpy as np
import matplotlib.pyplot as plt

math.acos(x)

math.acos(x)は、xの逆余弦をラジアンで返します。

<ソースコード>
print(math.acos(0.5))

x = np.arange(-1.0, 1.00, 0.01)
y = list(map(math.acos , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
1.0471975511965979

math 指数関数と対数関数 説明07

math.asin(x)

math.asin(x)は、xの逆正弦をラジアンで返します。

<ソースコード>
print(math.asin(0.5))

x = np.arange(-1.0, 1.00, 0.01)
y = list(map(math.asin , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.5235987755982989

math 指数関数と対数関数 説明08

math.atan(x)

math.atan(x)は、xの逆正接をラジアンで返します。

<ソースコード>
print(math.atan(0.5))
x = np.arange(-5.0, 5.0, 0.01)
y = list(map(math.atan , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.4636476090008061

math 指数関数と対数関数 説明09

math.atan2(y, x)

math.atan2(y, x)は、y/xの逆正接をラジアンで返します。

<ソースコード>
print(math.atan2(3, 6))
<出力結果>
0.4636476090008061

math.cos(x)

math.cos(x)は、xラジアンの余弦を返します。

<ソースコード>
print(math.cos(0.5))

x = np.arange(-math.pi, math.pi, 0.01)
y = list(map(math.cos , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.8775825618903728

math 三角関数 説明04

math.sin(x)

math.sin(x)は、xラジアンの正弦を返します。

<ソースコード>
print(math.sin(0.5))

x = np.arange(-math.pi, math.pi, 0.01)
y = list(map(math.sin , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.479425538604203

math 三角関数 説明05

math.tan(x)

math.tan(x)は、xラジアンの正接を返します。

<ソースコード>
print(math.tan(0.5))

x = np.arange(-math.pi, math.pi, 0.05)
y = list(map(math.tan , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.5463024898437905

math 三角関数 説明06

math.hypot(x, y)

math.hypot(x, y)は、math.hypot(x, y) ユークリッドノルム(ベクトルの長さ)sqrt(x**2 + y**2)を返します。

<ソースコード>
print(math.hypot(3, 4))
<出力結果>
5.0

math.degrees(x)

math.degrees(x)は、xラジアンから度に変換します。

<ソースコード>
print(math.degrees(math.pi/2))
<出力結果>
90.0

math.radians(x)

math.radians(x)は、x度からラジアンに変換します。

<ソースコード>
print(math.radians(90))
<出力結果>
1.5707963267948966

math.acosh(x)

math.acosh(x)は、xの逆双曲線余弦を返します。

<ソースコード>
print(math.acosh(2))

x = np.arange(1, 5, 0.01)
y = list(map(math.acosh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
1.3169578969248166

math 三角関数 説明07

math.asinh(x)

math.asinh(x)は、xの逆双曲線正弦を返します。

<ソースコード>
print(math.asinh(2))

x = np.arange(-5, 5, 0.01)
y = list(map(math.asinh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
1.4436354751788103

math 三角関数 説明08

math.atanh(x)

math.atanh(x)は、xの逆双曲線正接を返します。

<ソースコード>
print(math.atanh(0.5))
x = np.arange(-0.99, 0.99, 0.01)
y = list(map(math.atanh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.5493061443340549

math 三角関数 説明09

math.cosh(x)

math.cosh(x)は、xの双曲線余弦を返します。

<ソースコード>
print(math.cosh(2))

x = np.arange(-3, 3, 0.01)
y = list(map(math.cosh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
3.7621956910836314

math 三角関数 説明10

math.sinh(x)

math.sinh(x)は、xの双曲線正弦を返します。

<ソースコード>
print(math.sinh(2))

x = np.arange(-3, 3, 0.01)
y = list(map(math.sinh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
3.6268604078470186

math 三角関数 説明11

math.tanh(x)

math.tanh(x)は、xの双曲線正接を返します。

<ソースコード>
print(math.tanh(2))

x = np.arange(-4, 4, 0.01)
y = list(map(math.tanh , x))
plt.scatter(x, y, s=10, color='black')
plt.plot(x, y, linewidth = 0.1, color='black')
plt.show()
<出力結果>
0.9640275800758169

math 三角関数 説明12

コメント

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