線形関数(Liner Function)と反比例関数(Inverse Proportional Function)の連続性
冪乗関数$y=a^x(a,x \in \mathbb{R})$を用いれば、線形関数(Liner Function)y=x(y=x^1)と、その逆関数たる反比例関数(Inverse Proportional Function)$y=\frac{1}{x}(y=x^{-1})$を連続する関数表現(Continuous Function Expression)に収める事が出来ます。ただしaが特異点(Singular Point)0に収束する時、1対1対応が崩れた多価関数(Multivalued Function)となってしまうのです。
y=\lim_{a \to 0}a^x = \left\{
\begin{array}{ll}
y=-1 & (x>0) \\
-1 < y < 1 & (x=0) \\
y=1 & (x<0)
\end{array}
\right.
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 等差数列を生成
X = np.linspace(0,10,101,endpoint =True)
plt.style.use('default')
fig = plt.figure()
tcode=np.linspace(-1,1,41,endpoint =True)
Tcode=tcode[::-1]
def exponential(n):
plt.cla()
# 可視化
plt.plot(X,X,color="green", label="y=x")
plt.plot(-X,-X,color="green")
plt.plot(X,1/X,color="purple", label="y=1/x")
plt.plot(-X,-1/X,color="purple")
Y1=X**Tcode[n]
es="{:0<+5}".format(round(Tcode[n],3))
ex01="y=X^("+es+")"
plt.plot(X,Y1,color="blue", label=ex01)
plt.plot(-X,-Y1,color="blue")
#頂点
plt.plot(1, 1,color="black", marker="o")
plt.plot(-1, -1,color="black", marker="o")
plt.plot(0, 1,color="black", marker="o")
plt.plot(0, -1,color="black", marker="o")
plt.plot(1,0,color="black", marker="o")
plt.plot(-1,0,color="black", marker="o")
#座標
plt.hlines(0,-10,10,color="black")
plt.hlines(1,-10,10,color="black",lw=0.5)
plt.hlines(-1,-10,10,color="black",lw=0.5)
plt.vlines(0,-10,10,color="black")
plt.vlines(1,-10,10,color="black",lw=0.5)
plt.vlines(-1,-10,10,color="black",lw=0.5)
plt.ylim([-4,4])
plt.xlim([-4,4])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Lineer Function → Inverse Proportional Function")
ax = fig.add_subplot(111)
ax.text(1, 1," (1,1)",color="black", size=9)
ax.text(-1, -1," (-1,-1)",color="black", size=9)
ax.text(0, 1," (0,1)",color="black", size=9)
ax.text(0, -1," (0,-1)",color="black", size=9)
ax.text(1, 0," (0,1)",color="black", size=9)
ax.text(-1,0," (0,-1)",color="black", size=9)
ax.set_aspect('equal')
ax.legend(loc='lower center')
#plt.show()
ani = animation.FuncAnimation(fig, exponential, interval=50,frames=len(Tcode))
ani.save("LtIP004.gif", writer="pillow")
- わーい、ステップ関数。まさかの時にステップ関数…
【数理考古学】ディラックのデルタ関数とヘヴィサイドのステップ関数
ちなみにa>1の場合は以下の形に収束します。
y=\lim_{a=1 \to ∞}a^x = \left\{
\begin{array}{ll}
y=0 & (0<x<1) \\
0 < y <∞ & (x=1)
\end{array}
\right.
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 等差数列を生成
X = np.linspace(0,10,101,endpoint =True)
plt.style.use('default')
fig = plt.figure()
Tcode=np.linspace(1,12,41,endpoint =True)
def exponential(n):
plt.cla()
# 可視化
plt.plot(X,X,color="green", label="y=x")
plt.plot(-X,-X,color="green")
plt.plot(X,1/X,color="purple", label="y=1/x")
plt.plot(-X,-1/X,color="purple")
Y1=X**Tcode[n]
es="{:0<+7}".format(round(Tcode[n],3))
ex01="y=X^("+es+")"
plt.plot(X,Y1,color="blue", label=ex01)
plt.plot(-X,-Y1,color="blue")
#頂点
plt.plot(1, 1,color="black", marker="o")
plt.plot(-1, -1,color="black", marker="o")
plt.plot(0, 1,color="black", marker="o")
plt.plot(0, -1,color="black", marker="o")
plt.plot(1,0,color="black", marker="o")
plt.plot(-1,0,color="black", marker="o")
#座標
plt.hlines(0,-10,10,color="black")
plt.hlines(1,-10,10,color="black",lw=0.5)
plt.hlines(-1,-10,10,color="black",lw=0.5)
plt.vlines(0,-10,10,color="black")
plt.vlines(1,-10,10,color="black",lw=0.5)
plt.vlines(-1,-10,10,color="black",lw=0.5)
plt.ylim([-4,4])
plt.xlim([-4,4])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Lineer Function → Inverse Proportional Function")
ax = fig.add_subplot(111)
ax.text(1, 1," (1,1)",color="black", size=9)
ax.text(-1, -1," (-1,-1)",color="black", size=9)
ax.text(0, 1," (0,1)",color="black", size=9)
ax.text(0, -1," (0,-1)",color="black", size=9)
ax.text(1, 0," (0,1)",color="black", size=9)
ax.text(-1,0," (0,-1)",color="black", size=9)
ax.set_aspect('equal')
ax.legend(loc='lower center')
#plt.show()
ani = animation.FuncAnimation(fig, exponential, interval=50,frames=len(Tcode))
ani.save("LtIP006.gif", writer="pillow")
またa>-1の場合は以下の形に収束します。
y=\lim_{a=-1 \to -∞}a^x = \left\{
\begin{array}{ll}
0 < y< ∞ & (x=1) \\
y = 0 & (x>1)
\end{array}
\right.
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 等差数列を生成
X = np.linspace(0,10,101,endpoint =True)
plt.style.use('default')
fig = plt.figure()
tcode=np.linspace(-12,-1,41,endpoint =True)
Tcode=tcode[::-1]
def exponential(n):
plt.cla()
# 可視化
plt.plot(X,X,color="green", label="y=x")
plt.plot(-X,-X,color="green")
plt.plot(X,1/X,color="purple", label="y=1/x")
plt.plot(-X,-1/X,color="purple")
Y1=X**Tcode[n]
es="{:0<+7}".format(round(Tcode[n],3))
ex01="y=X^("+es+")"
plt.plot(X,Y1,color="blue", label=ex01)
plt.plot(-X,-Y1,color="blue")
#頂点
plt.plot(1, 1,color="black", marker="o")
plt.plot(-1, -1,color="black", marker="o")
plt.plot(0, 1,color="black", marker="o")
plt.plot(0, -1,color="black", marker="o")
plt.plot(1,0,color="black", marker="o")
plt.plot(-1,0,color="black", marker="o")
#座標
plt.hlines(0,-10,10,color="black")
plt.hlines(1,-10,10,color="black",lw=0.5)
plt.hlines(-1,-10,10,color="black",lw=0.5)
plt.vlines(0,-10,10,color="black")
plt.vlines(1,-10,10,color="black",lw=0.5)
plt.vlines(-1,-10,10,color="black",lw=0.5)
plt.ylim([-4,4])
plt.xlim([-4,4])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Lineer Function → Inverse Proportional Function")
ax = fig.add_subplot(111)
ax.text(1, 1," (1,1)",color="black", size=9)
ax.text(-1, -1," (-1,-1)",color="black", size=9)
ax.text(0, 1," (0,1)",color="black", size=9)
ax.text(0, -1," (0,-1)",color="black", size=9)
ax.text(1, 0," (0,1)",color="black", size=9)
ax.text(-1,0," (0,-1)",color="black", size=9)
ax.set_aspect('equal')
ax.legend(loc='lower center')
#plt.show()
ani = animation.FuncAnimation(fig, exponential, interval=50,frames=len(Tcode))
ani.save("LtIP010.gif", writer="pillow")
関数$y=a^x(a=-∞ \to 0 \to +∞)$の全体像を俯瞰すると以下。$1 \to -1$区間の通過なんて瞬く間に終わってしまいますね。
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 等差数列を生成
X = np.linspace(0,10,101,endpoint =True)
plt.style.use('default')
fig = plt.figure()
tcode=np.linspace(-12,12,41,endpoint =True)
Tcode=tcode[::-1]
def exponential(n):
plt.cla()
# 可視化
plt.plot(X,X,color="green", label="y=x")
plt.plot(-X,-X,color="green")
plt.plot(X,1/X,color="purple", label="y=1/x")
plt.plot(-X,-1/X,color="purple")
Y1=X**Tcode[n]
es="{:0<+5}".format(round(Tcode[n],3))
ex01="y=X^("+es+")"
plt.plot(X,Y1,color="blue", label=ex01)
plt.plot(-X,-Y1,color="blue")
#頂点
plt.plot(1, 1,color="black", marker="o")
plt.plot(-1, -1,color="black", marker="o")
plt.plot(0, 1,color="black", marker="o")
plt.plot(0, -1,color="black", marker="o")
plt.plot(1,0,color="black", marker="o")
plt.plot(-1,0,color="black", marker="o")
#座標
plt.hlines(0,-10,10,color="black")
plt.hlines(1,-10,10,color="black",lw=0.5)
plt.hlines(-1,-10,10,color="black",lw=0.5)
plt.vlines(0,-10,10,color="black")
plt.vlines(1,-10,10,color="black",lw=0.5)
plt.vlines(-1,-10,10,color="black",lw=0.5)
plt.ylim([-4,4])
plt.xlim([-4,4])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Lineer Function → Inverse Proportional Function")
ax = fig.add_subplot(111)
ax.text(1, 1," (1,1)",color="black", size=9)
ax.text(-1, -1," (-1,-1)",color="black", size=9)
ax.text(0, 1," (0,1)",color="black", size=9)
ax.text(0, -1," (0,-1)",color="black", size=9)
ax.text(1, 0," (0,1)",color="black", size=9)
ax.text(-1,0," (0,-1)",color="black", size=9)
ax.set_aspect('equal')
ax.legend(loc='lower center')
#plt.show()
ani = animation.FuncAnimation(fig, exponential, interval=50,frames=len(Tcode))
ani.save("RS001.gif", writer="pillow")
ちなみにlog、すなわちx座標とy座標を入れ替えた場合の計算は以下。
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 等差数列を生成
X = np.linspace(0,10,101,endpoint =True)
plt.style.use('default')
fig = plt.figure()
tcode=np.linspace(-12,12,41,endpoint =True)
Tcode=tcode[::-1]
def exponential(n):
plt.cla()
# 可視化
plt.plot(X,X,color="green", label="y=x")
plt.plot(-X,-X,color="green")
plt.plot(X,1/X,color="purple", label="y=1/x")
plt.plot(-X,-1/X,color="purple")
Y1=X**Tcode[n]
es="{:0<+5}".format(round(Tcode[n],3))
ex01="y=log("+es+",X)"
plt.plot(Y1,X,color="blue", label=ex01)
plt.plot(-Y1,-X,color="blue")
#頂点
plt.plot(1, 1,color="black", marker="o")
plt.plot(-1, -1,color="black", marker="o")
plt.plot(0, 1,color="black", marker="o")
plt.plot(0, -1,color="black", marker="o")
plt.plot(1,0,color="black", marker="o")
plt.plot(-1,0,color="black", marker="o")
#座標
plt.hlines(0,-10,10,color="black")
plt.hlines(1,-10,10,color="black",lw=0.5)
plt.hlines(-1,-10,10,color="black",lw=0.5)
plt.vlines(0,-10,10,color="black")
plt.vlines(1,-10,10,color="black",lw=0.5)
plt.vlines(-1,-10,10,color="black",lw=0.5)
plt.ylim([-4,4])
plt.xlim([-4,4])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("log Function")
ax = fig.add_subplot(111)
ax.text(1, 1," (1,1)",color="black", size=9)
ax.text(-1, -1," (-1,-1)",color="black", size=9)
ax.text(0, 1," (0,1)",color="black", size=9)
ax.text(0, -1," (0,-1)",color="black", size=9)
ax.text(1, 0," (0,1)",color="black", size=9)
ax.text(-1,0," (0,-1)",color="black", size=9)
ax.set_aspect('equal')
ax.legend(loc='lower center')
#plt.show()
ani = animation.FuncAnimation(fig, exponential, interval=50,frames=len(Tcode))
ani.save("RS101.gif", writer="pillow")
それとなく感じられる特異点(Singular Point)としての観測原点0($a^{-∞}$)と観測限界∞($a^{+∞}$)の連続性…
交換法則(Commutative Law)の成立条件。
今度は別方向からのアプローチを試みましょう。交換法則は、例えば関数$Y=a^x$において対称式X=Y(a=1)か対称式XY=1(a=-1)になる場合に成立します。
X=Yの場合…y=x,-y=-xのなす平面がy=-x,-y=xのなす平面と直交します。
#Inverse_Proportional_Function
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as animation
#反比例データ作成
X=np.linspace(-5,5,41,endpoint = True)
#グラフ表示
plt.style.use('default')
fig = plt.figure()
ax = Axes3D(fig)
#関数定義
def Inverse_Proportional_Function(n):
plt.cla()
#比例曲線描画(0度)
ax.plot(X,X,X,color="blue",lw=1)
for num in range(len(X)):
ax.plot([0,X[num]],[0,X[num]],[X[num],X[num]],color="gray",lw=0.5)
#比例曲線描画(180度)
ax.plot(-X,-X,X,color="red",lw=1)
for num in range(len(X)):
ax.plot([0,-X[num]],[0,-X[num]],[X[num],X[num]],color="gray",lw=0.5)
#比例曲線描画(90度)
ax.plot(X,-X,X,color="green",lw=1)
for num in range(len(X)):
ax.plot([0,X[num]],[0,-X[num]],[X[num],X[num]],color="gray",lw=0.5)
#比例曲線描画(-90度)
ax.plot(-X,X,X,color="green",lw=1)
for num in range(len(X)):
ax.plot([0,-X[num]],[0,X[num]],[X[num],X[num]],color="gray",lw=0.5)
#軸線追加
ax.plot([-10,10],[0,0],[0,0],color="black",lw=1)
ax.plot([0,0],[-10,10],[0,0],color="black",lw=1)
ax.plot([0,0],[0,0],[-10,10],color="black",lw=1)
#諸元追加
ax.set_ylim([-5,5])
ax.set_xlim([-5,5])
ax.set_zlim([-5,5])
ax.set_title("Unit Cylinder")
ax.set_xlabel("X")
ax.set_ylabel("X")
ax.set_zlabel("X")
# グラフを回転
ax.view_init(elev=45, azim=Time_code[n])
Time_code0=np.arange(0,360,6)
Time_code=Time_code0[::-1]
#Inverse_Proportional_Function(59)
#plt.show()
#xy=1=14
#-xy=1=44
#exp(X)=29
#-exp(X)=59
ani = animation.FuncAnimation(fig, Inverse_Proportional_Function, interval=50,frames=len(Time_code))
ani.save("PF003.gif", writer="pillow")
垂直軸に沿って眺めるとこう見えます。
水平軸に沿って眺めるとこう見えます。
全体として円錐を構成してますね。
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as animation
#円柱データ作成
c0=np.linspace(0,m.pi*120,1201,endpoint = True)
s0=[]
for nm in range(len(c0)):
s0.append(complex(m.cos(c0[nm]),m.sin(c0[nm])))
s1=np.array(s0)
z0=np.linspace(-1,1,1201,endpoint = True)
#「曲率」を計算
cv1=np.linspace(-1,1,1201,endpoint = True)
#cv1=num.sqrt(1-cv0**2)
#断面線(z)
cutz0=np.linspace(-1,1,61,endpoint = True)
cutz=cutz0[::-1]
cutx=np.abs(cutz)
cuty=np.repeat(0,61)
#単位円データ作成
u0=np.linspace(0,m.pi*2,61,endpoint = True)
u1=[]
for nm in range(len(u0)):
u1.append(complex(m.cos(u0[nm]),m.sin(u0[nm])))
uc=np.array(u1)
uz0=np.repeat(-1,61)
uz1=np.repeat(-0,61)
uz2=np.repeat(1,61)
#グラフ表示
plt.style.use('default')
fig = plt.figure()
ax = Axes3D(fig)
#関数定義
def unit_cylinder(n):
plt.cla()
#円柱描画
ax.plot(s1.real*cv1,s1.imag*cv1,z0,color="gray",lw=0.5)
#スポーク描画
for num in range(len(uc)):
ax.plot([0,uc[num].real],[0,uc[num].imag],[0,0],color="purple",lw=0.5)
#単位円描画
ax.plot(uc.real,uc.imag,uz0,color="red",lw=1)
ax.plot(uc.real,uc.imag,uz1,color="purple",lw=1)
ax.plot(uc.real,uc.imag,uz2,color="blue",lw=1)
#実数線追加
ax.plot([0,0],[0,0],[-1,1],color="black",lw=1)
ax.plot([0,0],[-1,1],[0,0],color="black",lw=1)
ax.plot([-1,1],[0,0],[0,0],color="black",lw=1)
ax.plot([-1,1],[0,0],[-1,1],color="blue",lw=1)
ax.plot([1,-1],[0,0],[-1,1],color="red",lw=1)
ax.plot([0,0],[-1,1],[-1,1],color="green",lw=1)
ax.plot([0,0],[1,-1],[-1,1],color="green",lw=1)
#諸元追加
ax.set_ylim([-1.1,1.1])
ax.set_xlim([-1.1,1.1])
ax.set_zlim([-1.1,1.1])
ax.set_title("Unit Cylinder")
ax.set_xlabel("X")
ax.set_ylabel("X")
ax.set_zlabel("X")
# グラフを回転(elev=0にすると水平表示に)
ax.view_init(elev=25, azim=Time_code[n])
Time_code0=np.arange(0,360,6)
Time_code=Time_code0[::-1]
#unit_cylinder(len(s1))
#plt.show()
ani = animation.FuncAnimation(fig, unit_cylinder, interval=50,frames=len(Time_code))
ani.save("PF101.gif", writer="pillow")
自然指数関数y=exp(x)と反比例関数xy=1の関係…こちらも完全に対称式の枠内で展開。
xy=1=e^0=e^{p-p}(0<p<∞)=e^p e^{-p}(0<p<∞)
#Inverse_Proportional_Function
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as animation
#反比例データ作成
Z=np.linspace(-2,2,41,endpoint = True)
X1=np.exp(Z)
X2=np.exp(-Z)
#グラフ表示
plt.style.use('default')
fig = plt.figure()
ax = Axes3D(fig)
#関数定義
def Inverse_Proportional_Function(n):
plt.cla()
#反比例曲線描画
ax.plot(X1,X2,Z,color="blue",lw=1)
# ax.plot(X2,X1,Z,color="red",lw=1)
for num in range(len(Z)):
ax.plot([0,X1[num]],[0,X2[num]],[Z[num],Z[num]],color="gray",lw=0.5)
#軸線追加
ax.plot([-10,10],[0,0],[0,0],color="black",lw=1)
ax.plot([0,0],[-10,10],[0,0],color="black",lw=1)
ax.plot([0,0],[0,0],[-10,10],color="black",lw=1)
#諸元追加
ax.set_ylim([-5,5])
ax.set_xlim([-5,5])
ax.set_zlim([-5,5])
ax.set_title("Unit Cylinder")
ax.set_xlabel("exp(X)")
ax.set_ylabel("exp(-X)")
ax.set_zlabel("X")
# グラフを回転
ax.view_init(elev=45, azim=Time_code[n])
Time_code0=np.arange(0,360,6)
Time_code=Time_code0[::-1]
#Inverse_Proportional_Function(44)
#plt.show()
#exp(X)=14
#-exp(X)=44
#exp(-X)=29
#-exp(-X)=59
ani = animation.FuncAnimation(fig, Inverse_Proportional_Function, interval=50,frames=len(Time_code))
ani.save("IPF003.gif", writer="pillow")
垂直軸に沿って眺めると反比例関数xy=1のグラフが回転しています。
水平軸に沿って眺めるとこう見えます。
X軸
exp(X)…exp(-X)と直交
exp(X)(逆位相)…exp(-X)(逆位相)と直交
Y軸
exp(-X)…exp(X)と直交
exp(-X)(逆位相)…exp(X)(逆位相)と直交
自然対数関数y=log(x)と反比例関数xy=1の関係…自然対数関数y=log(x)の中身は自然指数関数y=exp(x)のxy逆転、すなわちx=exp(y)に他なりませんが、xy=1はexp(x)とexp(-x)の直積の結果なので以下の2通りの展開が存在するのです。いずれにせよどちらの展開も対称式の条件は満たしません。
#Inverse_Proportional_Function
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as animation
#反比例データ作成
Z=np.linspace(-2,2,41,endpoint = True)
X1=np.exp(Z)
X2=np.exp(-Z)
#グラフ表示
plt.style.use('default')
fig = plt.figure()
ax = Axes3D(fig)
#関数定義
def Inverse_Proportional_Function(n):
plt.cla()
#反比例曲線描画
ax.plot(X1,Z,X2,color="blue",lw=1)
for num in range(len(Z)):
ax.plot([0,X1[num]],[0,Z[num]],[X2[num],X2[num]],color="gray",lw=0.5)
#軸線追加
ax.plot([-10,10],[0,0],[0,0],color="black",lw=1)
ax.plot([0,0],[-10,10],[0,0],color="black",lw=1)
ax.plot([0,0],[0,0],[-10,10],color="black",lw=1)
#諸元追加
ax.set_ylim([-5,5])
ax.set_xlim([-5,5])
ax.set_zlim([-5,5])
ax.set_title("Unit Cylinder")
ax.set_xlabel("exp(X)")
ax.set_ylabel("X")
ax.set_zlabel("exp(-X)")
# グラフを回転
ax.view_init(elev=0, azim=Time_code[n])
Time_code0=np.arange(0,360,6)
Time_code=Time_code0[::-1]
#Inverse_Proportional_Function(59)
#plt.show()
#xy=1=14
#-xy=1=44
#exp(X)=29
#-exp(X)=59
ani = animation.FuncAnimation(fig, Inverse_Proportional_Function, interval=50,frames=len(Time_code))
ani.save("IPF203.gif", writer="pillow")
垂直軸に沿って眺めるとx=exp(y)すなわちy=log(x)が回転しています。
水平軸に沿って眺めるとこう見えます。
X軸
xy=1…x=exp(-y)と直交
xy=1(逆位相)…x=exp(-y)(逆位相)と直交
Y軸
x=exp(-y)(逆位相)…1/X(逆位相)と直交
x=exp(-y)…xy=1と直交
#Inverse_Proportional_Function
%matplotlib nbagg
import math as m
import cmath as c
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as animation
#反比例データ作成
Z=np.linspace(-2,2,41,endpoint = True)
X1=np.exp(Z)
X2=np.exp(-Z)
#グラフ表示
plt.style.use('default')
fig = plt.figure()
ax = Axes3D(fig)
#関数定義
def Inverse_Proportional_Function(n):
plt.cla()
#反比例曲線描画
ax.plot(Z,X2,X1,color="blue",lw=1)
for num in range(len(Z)):
ax.plot([0,Z[num]],[0,X2[num]],[X1[num],X1[num]],color="gray",lw=0.5)
#軸線追加
ax.plot([-10,10],[0,0],[0,0],color="black",lw=1)
ax.plot([0,0],[-10,10],[0,0],color="black",lw=1)
ax.plot([0,0],[0,0],[-10,10],color="black",lw=1)
#諸元追加
ax.set_ylim([-5,5])
ax.set_xlim([-5,5])
ax.set_zlim([-5,5])
ax.set_title("Unit Cylinder")
ax.set_xlabel("X")
ax.set_ylabel("exp(-X)")
ax.set_zlabel("exp(X)")
# グラフを回転
ax.view_init(elev=0, azim=Time_code[n])
Time_code0=np.arange(0,360,6)
Time_code=Time_code0[::-1]
#Inverse_Proportional_Function(59)
#plt.show()
#xy=1=14
#-xy=1=44
#exp(X)=29
#-exp(X)=59
ani = animation.FuncAnimation(fig, Inverse_Proportional_Function, interval=50,frames=len(Time_code))
ani.save("IPF303.gif", writer="pillow")
垂直軸に沿って眺めるとx=exp(-y)が回転しています。
水平軸に沿って眺めるとこう見えます。
X軸
log(x)…1/xと直交
log(x)(逆位相)…1/X(逆位相)と直交
Y軸
1/X(逆位相)…log(x)(逆位相)と直交
- 以前からどうして対数尺(Logarithmic Scale)はあるのに指数尺(Exponential scale)**がないのか疑問だったのですが、「指数写像(Exponential Map)の定義域はあくまで均等尺(Even Scale)」「これを均等尺に戻す為に対数写像(Logarithmic Map)の定義域は対数尺である必要がある」が正解で、その由来はかかる座標置換にあった訳です。中高生でも理解出来てる人はちゃんと理解出来てる数理?
【Python演算】オイラーの公式と等比数列④「中学生には難しいが高校生なら気付くレベル」? - で、指数尺といえば思い出すのが「ヴェーバー‐フェヒナーの法則」。この概念自体は「識閾=1を超えてからの認識展開」が対象ですが、ある意味「識閾=1を超えるまでの認識展開」を扱うニューロンコンピューティング(機械学習の始祖)と補完関係にある?
【数理考古学】ヴェーバー‐フェヒナーの法則
もはや対称式の条件は満たしていませんが、全てがZ軸に対して正方向のみの展開となる点に有用性が見受けられます。
そんな感じで以下続報…