指数と対数 その2 + 累乗と累乗根 - 対数グラフ

ICTTECH(工科)

 その1はこちら
 指数と対数が逆関数の関係で、
 対数 logの足し算(引き算)は指数の掛け算(割り算)に対応する、という内容。

  •  logk xz = logk x ± logk z
  •  kx±z = kx × k±z

 底のkが1未満の場合(0<k<1)の場合も同じだが、減っていく。
 y=(1/2)xは、例えば半減期のグラフ。

 k=0は、普通は0のままだが、0=1とすることが多い。
 kが負の数の場合(k<0)、掛け合わせることはできるが、普通は考えない。

 Pythonのコード

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-1,5,50)
y2 = 2**x
y4 = 1/2**x
y5 = 32*1/2**x
y6 = 32*0.8**x
plt.plot(x,y2,"-",color="purple",lw=5,label="2^x")
plt.plot(x,y4,"-",color="blue",lw=5,label="1/2^x")
plt.plot(x,y5,"-",color="skyblue",lw=5,label="32 * 1/2^x")
plt.plot(x,y6,"-",color="yellow",lw=5,label="32 * 0.8^x")
plt.legend()
plt.grid()
plt.show()

 y=kxは曲線になるが、対数を使えば、
 log y = log kx = log k × x
となり、「log yはxに比例する」と言って直線に変えられる。
 もしもy=αkxならばlog y = (log k)x + log α

 指数のグラフに

plt.yscale("log")

を加えるとy軸が対数目盛になって直線の対数グラフになる。

 Y=log10 yで、

  •  Y = (log10 2)x ≒ 0.301x
  •  Y = (log10 e)x ≒ 0.434x
  •  Y = (log10 3)x ≒ 0.477x
  •  Y = (log10 1/2)x ≒ -0.301x

 Y = (log10 2)xとY = (log10 1/2)xがY=0すなわちy=100=1に対して対称になっている。
 Y = (log 1/k)x ⇒ Y =-(log k)x。
 一般にy=f(x)とy=-f(x)はy=0に対して対称。

累乗と累乗根

 今度はy=xkの場合。
 kxと同じく累乗の形だが、xは指数ではなく底。
 k=2ならば2次、k=3ならば3次、……のk次の式。
 逆関数はlogではなく、x=y1/k
 指数が分数の形になる。

 例えばy=x1/2の場合、三角形を描くと現れる平方根(2乗根)で、ルートx √x
 y=x1/3の場合、立方根(3乗根) 3√x。
 y=x1/nの場合、n乗根 n√x。
 n乗根はn乗するとxになる数。

 例えばy=x3/4ならば4x3
 これら累乗根。

 なお、ルート(根号)の記号は正しくは、

$$ \sqrt{x}、\sqrt[3]{x}、\sqrt[n]{x}、\sqrt[4]{x^3} $$

 √5はPython Numpyでnp.sqrt(5)。
 53は5**3もしくはpow(5,3)。Numpy不要。Excelだと5^3もしくはpower(5,3)。

 y=xkは曲線になるが、対数を使えば、
 log y = log xk = log x × k
となり、「log yはlog xに比例する」と言って直線に変えられる。
 もしもy=αxkならばlog y = k(log x) + log α。
 「yはxkに比例する」 ⇔ 「log yはlog xに比例する(比例定数k)」

 例えばy=3x2、y=2x3、y=√xのグラフに

plt.xscale("log")
plt.yscale("log")

を加えるとx軸、y軸が対数目盛になって直線の対数グラフになる。
 サブプロット subplotを使う場合は、set_xscale("log")set_yscale("log")

ax1 = plt.subplot(2,1,1)
ax2 = plt.subplot(2,1,2)
x = np.linspace(-1,5,50)
z = 3*x**2 
z2 = 2*x**3
z3 = np.sqrt(x)
ax1.plot(x,z,"-",label="3 * x^2")
ax1.plot(x,z2,"-",label="2 * x^3")
ax1.plot(x,z3,"-",label="x^0.5")
ax2.plot(x,z,"-",label="3 * x^2")
ax2.plot(x,z2,"-",label="2 * x^3")
ax2.plot(x,z3,"-",label="x^0.5")
ax1.legend(loc="upper left")
ax2.legend(loc="upper left")
ax2.set_xscale("log")
ax2.set_yscale("log")
ax1.set_xlabel("x")
ax1.set_ylabel("y")
ax2.set_xlabel("X")
ax2.set_ylabel("Y")
ax1.grid()
ax2.grid()
plt.show()

 y=xkではなくy=xk + …… + x + αになると
 いわゆるk次方程式を解くことになり、難しくなっていく。

 xが負の数の場合(x<0)、普通は考えない。虚。
 だが、k次の方程式を真面目に解こうとすると考えないわけにもいかない。
 2乗すると-1になる数すなわち虚数 iが導入されるのであった。

スポンサーリンク
ふシゼン
タイトルとURLをコピーしました