「冪(べき)e^tがx自身に一致するような指数t」のことをxの自然対数eといいます。
*実際には微積分によって対象の状態そのものが変化してる訳ではない。我々がその都度(360度の次は1度とカウントする様に)累積した誤謬上の誤謬をクリアしてるに過ぎないとも。
①ヤコブ・ベルヌーイ(Jakob Bernoulli、1654年〜1705年)が1683年の導出に用いた複利計算式「(1+1/N)^N」に立脚する導出方法。
#ヤコブ・ベルヌイの複利計算法に基づく算出方法
f0=function(x){(1+1/x)^x}
#グラフ化してみる。
plot(f0, xlim=c(0,50),ylim=c(0,3),lty =1,main="Natural logarithm", xlab="N", ylab="(1+1/N)^N")
#自然対数eと比較。
abline(h=exp(1))#exp(1)=2.718282...
結果として極限値「exp(1)^1=exp(1)」すなわち「2.718282…」を求める形となった。
Eulers_identity<-function(n){
rim01<-pi*complex(real=0,imaginary=1)
Tarm=c(complex(real=1,imaginary=0),seq(rim01/n,rim01/n,length=n))
Reduce(function(a,b) {a+a*b}, Tarm, accumulate = T)}
theta <- seq(pi, -pi, length=360) #円周率(ラジアン表記)Eulers_identity00_plot<-function(n){
plot(cos(theta), sin(theta), xlim=c(-2,1),ylim=c(0,4),type="l",col=rgb(0,1,0), main="Euler’s identity", xlab="Real Expanse", ylab="Imaginary Expanse")
par(new=T) # 上書き指定plot(Re(Eulers_identity(n)),Im(Eulers_identity(n)),xlim=c(-2,1),ylim=c(0,4),type="l",main="", xlab="", ylab="")
text(0, 0, "0",col=rgb(0,0,0))
text(1, 0, "1",col=rgb(0,0,1))
text(-1, 0, "-1",col=rgb(1,0,0))
text(0, 1, "π",col=rgb(0,1,0))
segments(0,0,1,0,col=rgb(0,0,1))
segments(0,0,-1,0,col=rgb(1,0,0))
}#アニメーションさせてみる。
library("animation")
Time_Code=c(1,2,4,8,16,32,64,128)
saveGIF({
for (i in Time_Code){
Eulers_identity00_plot(i)
}
}, interval = 0.1, movie.name = "TEST.gif")
②レオンハルト・オイラー(Leonhard Euler, 1707年〜1783年)がジョン・ネイピア(John Napier, 1550年〜1617年)の対数表の底「0.9999999」から導出した式「(1-1/N)^N」に立脚する導出方法。
#オイラーの「ネイピアの対数表」に基づく算出方法
f0=function(x){(1-1/x)^x}
#グラフ化してみる。
plot(f0, xlim=c(0,50),ylim=c(0,0.5),lty =1,main="Natural logarithm", xlab="N", ylab="(1-1/N)^N")
#自然対数1/eと比較。
abline(h=exp(-1))#exp(-1)=0.3678794...
結果として極限値「exp(1)^-1=exp(-1)=1/exp(1)」すなわち「0.3678794…」を求める形となった。
Eulers_identity<-function(n){
rim01<-pi*complex(real=0,imaginary=1)
Tarm=c(complex(real=1,imaginary=0),seq(rim01/n,rim01/n,length=n))
Reduce(function(a,b) {a-a*b}, Tarm, accumulate = T)}
theta <- seq(pi, -pi, length=360) #円周率(ラジアン表記)Eulers_identity00_plot<-function(n){
plot(cos(theta), sin(theta), xlim=c(-2,1),ylim=c(-4,0),type="l",col=rgb(0,1,0), main="Euler’s identity", xlab="Real Expanse", ylab="Imaginary Expanse")
par(new=T) # 上書き指定plot(Re(Eulers_identity(n)),Im(Eulers_identity(n)),xlim=c(-2,1),ylim=c(-4,0),type="l",main="", xlab="", ylab="")
text(0, 0, "0",col=rgb(0,0,0))
text(1, 0, "1",col=rgb(0,0,1))
text(-1, 0, "-1",col=rgb(1,0,0))
text(0, 1, "π",col=rgb(0,1,0))
segments(0,0,1,0,col=rgb(0,0,1))
segments(0,0,-1,0,col=rgb(1,0,0))
}#アニメーションさせてみる。
library("animation")
Time_Code=c(1,2,4,8,16,32,64,128)
saveGIF({
for (i in Time_Code){
Eulers_identity00_plot(i)
}
}, interval = 0.1, movie.name = "TEST.gif")
③この2つの計算結果は複素図表上において共役関係にある。というよりどちらも距離1の線分にして、その旋回範囲に(これを半径とする)円や球面を形成する「オイラーの原始量(Euler's primitive sweep)=観測原点をすっぽり包む全球型スクリーン」の一部に過ぎないとも。
#オイラーの等式(全周分)
Eulers_identity<-function(n){
rim01<-pi*complex(real=0,imaginary=1)
Tarm=c(complex(real=1,imaginary=0),seq(rim01/n,rim01/n,length=n))
Reduce(function(a,b) {a+a*b}, Tarm, accumulate = T)}
theta <- seq(pi, -pi, length=360) #円周率(ラジアン表記)
#グラフを描画してみる。
Eulers_identity01_plot<-function(n){
ei01<-Eulers_identity(n)
ei02<-Conj(ei01)
plot(cos(theta), sin(theta), xlim=c(-2,1),ylim=c(-4,4),type="l",col=rgb(0,1,0), main="Euler’s identity", xlab="Real Expanse", ylab="Imaginary Expanse")
par(new=T) # 上書き指定
plot(Re(ei01),Im(ei01),xlim=c(-2,1),ylim=c(-4,4),type="l",main="", xlab="", ylab="")
par(new=T) # 上書き指定
plot(Re(ei02),Im(ei02),xlim=c(-2,1),ylim=c(-4,4),type="l",main="", xlab="", ylab="")
text(0, 0, "0",col=rgb(0,0,0))
text(1, 0, "1",col=rgb(0,0,1))
text(-1, 0, "-1",col=rgb(1,0,0))
text(0, 1, "π",col=rgb(0,1,0))
text(0, -1, "π",col=rgb(0,1,0))
segments(0,0,1,0,col=rgb(0,0,1))
segments(0,0,-1,0,col=rgb(1,0,0))
}#アニメーションさせてみる。
library("animation")
Time_Code=c(1,2,4,8,16,32,64,128)
saveGIF({
for (i in Time_Code){
Eulers_identity01_plot(i)
}
}, interval = 0.1, movie.name = "TEST.gif")
ちなみに指数関数/級数関数は一定以上の規模に到達しないと、その指数関数的増大を顕現させません。従って両者の中間たる「e^0=1」すなわち「(1/N)^N」を計算しても急激に0に近付く減衰曲線を描くのみです。
#オイラーの「ネイピアの対数表」に基づく算出方法
f0=function(x){(1/x)^x}
#グラフ化してみる。
plot(f0, xlim=c(0,50),ylim=c(0,0.5),lty =1,main="n-th root of 1 / n", xlab="N", ylab="(1/N)^N")
ちなみに確率論上の最重要概念の一つである「ベルヌーイ試行(Bernoulli trial)」は、後者に鑑みて「N回の試行におけるN回目の成功確率は0.6321…(1-1/e)に収束する」となる特徴を有しています。要するに単なる(1/N)^N計算ではないという事…