「諸概念の迷宮(Things got frantic)」用語集

本編で頻繁に使うロジックと関連用語のまとめ。

【多角形情報倉庫】正07角形(Regular heptagon)

正7角形Regular heptagon、外角の大きさはpi/7=0.5235988ラジアンあるいは180/7=30度、内角の大きさは2*pi*(7-2)/7=4.48799ラジアンあるいは180*(7-2)/7=128.5714度)の場合

f:id:ochimusha01:20190818002122p:plain

 

人間にとって有意味な特徴を一切備えていないので無視されがちとなる最初の多角形。そもそも三角定規やコンパスで正確に作図出来ない。

  • 2*tan(pi/7)=0.9631492
  • 2*tan(pi/7)/cos(pi/7)=1.069015
  • cos(pi/7)=0.9009689

一辺の長さがaの正7角形に内接する円の半径r

  • r=a*(2*tan(pi/7))=a*0.9631492
  • a=r/(2*tan(pi/7))=r/0.9631492

一辺の長さがaの正7角形に外接する円の半径R

  • R=a/(2*tan(pi/7))/cos(pi/7)=a/1.069015
  • a=R*(2*tan(pi/7))/cos(pi/7)=R*1.069015

一辺の長さがaの正3角形の外接円の半径と内接円の関係

  • r=R*cos(pi/7)=R*0.9009689
  • R=r/cos(pi/7)=r/0.9009689

結果は「6.742045<=π<=7.483105」で正解範囲。概ね古代エジプトバビロニア、インド、ギリシア幾何学者達が挟み撃ち法で円周率を求める時はこの辺りから出発している。

統計言語Rによる作表例

target_size<-c("7^-1","7^-1","7^-1","7^-0.9464085","...","7^-0.05359165","7^0","7^0","7^0","7^0","7^0","7^0.05359155","...","7^0.9464083","7^1","7^1","7^1")

target_names<-c("7^-1","7^-1a1","7^-1a1*7","7^-0.9464085","...","7^-0.05359165","7^0a0","7^0a0*7","7^0","7^0a1","7^0a1*7","7^0.05359155","...","7^0.9464083","7^1a0","7^1a0*7","7^1")

target_values<-c("1/7=0.1428571","0.1428571*1.069015=0.1527164","0.1527164*7=1.069015","0.1428571/0.9009689=0.1585594","...","0.9009689","0.9009689*1.069015=1*0.9631492=0.96314933","6.742045","1.0","1.069015","1.069015*7=7.483105","1/0.9009689=1.109916","...","7*0.9009689=6.306782","6/1.333333=4.500001","4.500001*6=27.00001","7.0")

Regula_falsi06<-data.frame(Target_size=target_size,Target_names=target_names,Target_values=target_values)
library(xtable)
print(xtable(Regula_falsi06), type = "html")  

  Target_size Target_names Target_values
1 7^-1 7^-1 1/7=0.1428571
2 7^-1 7^-1a1 0.1428571*1.069015=0.1527164
3 7^-1 7^-1a1*7 0.1527164*7=1.069015
4 7^-0.9464085 7^-0.9464085 0.1428571/0.9009689=0.1585594
5 ... ... ...
6 7^-0.05359165 7^-0.05359165 0.9009689
7 7^0 7^0a0 0.9009689*1.069015=1*0.9631492=0.96314933
8 7^0 7^0a0*7 6.742045
9 7^0 7^0 1.0
10 7^0 7^0a1 1.069015
11 7^0 7^0a1*7 1.069015*7=7.483105
12 7^0.05359155 7^0.05359155 1/0.9009689=1.109916
13 ... ... ...
14 7^0.9464083 7^0.9464083 7*0.9009689=6.306782
15 7^1 7^1a0 6/1.333333=4.500001
16 7^1 7^1a0*7 4.500001*6=27.00001
17 7^1 7^1 7.0

1の原始冪根級数One Primitive Sone series)」の一環としてζ^7のの条件を満たす7点を結べば基本円(Basic circle,半径1,円周2π)に内接する正7角形を描く。

#計算によって数値は得られるが代数的定義は不明。
Rtime<-seq(0,2,length=8)
tr01<-exp(seq(0,2*pi,length=8)*(0+1i))
tr01

  • 1.0000000+0.0000000i
  • 0.6234898+0.7818315i
  • -0.2225209+0.9749279i
  • -0.9009689+0.4338837i
  • -0.9009689-0.4338837i
  • -0.2225209-0.9749279i
  • 0.6234898-0.7818315i

統計言語Rによる作図例

#正7角形
library(rgl)
Rtime<-seq(0,2,length=8)
tr01<-exp(seq(0,2*pi,length=8)*(0+1i))
Real<-Re(tr01)
Imag<-Im(tr01)
#plot(Real,Imag,type="l")
plot3d(Real,Imag,Rtime,type="l",xlim=c(-1,1),ylim=c(-1,1),zlim=c(0,2))
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/test13")

f:id:ochimusha01:20190908093107g:plain

f:id:ochimusha01:20190908093210p:plain

正七角形 統計言語Rによる実装例

Three_square_theorem07<-function(x){
c0<-seq(0,2*pi,length=8)
c0_cos<-cos(c0)
c0_sin<-sin(c0)
plot(c0_cos,c0_sin,type="l",main="Regular polygon rotation",xlab="Cos(θ)",ylab="Sin(θ)")
text(c0_cos,c0_sin, labels=c("a","b","c","d","e","f","g",""),col=c(rgb(1,0,0),rgb(1,0,0),rgb(1,0,0),rgb(1,0,0),rgb(1,0,0),rgb(1,0,0),rgb(1,0,0),rgb(1,0,0)),cex=c(2,2,2,2,2,2,2,2))
line_scale_01_cos<-seq(cos(c0[1]),cos(c0[2]),length=15)
line_scale_01_sin<-seq(sin(c0[1]),sin(c0[2]),length=15)
line_scale_02_cos<-seq(cos(c0[2]),cos(c0[3]),length=15)
line_scale_02_sin<-seq(sin(c0[2]),sin(c0[3]),length=15)
line_scale_03_cos<-seq(cos(c0[3]),cos(c0[4]),length=15)
line_scale_03_sin<-seq(sin(c0[3]),sin(c0[4]),length=15)
line_scale_04_cos<-seq(cos(c0[4]),cos(c0[5]),length=15)
line_scale_04_sin<-seq(sin(c0[4]),sin(c0[5]),length=15)
line_scale_05_cos<-seq(cos(c0[5]),cos(c0[6]),length=15)
line_scale_05_sin<-seq(sin(c0[5]),sin(c0[6]),length=15)
line_scale_06_cos<-seq(cos(c0[6]),cos(c0[7]),length=15)
line_scale_06_sin<-seq(sin(c0[6]),sin(c0[7]),length=15)
line_scale_07_cos<-seq(cos(c0[7]),cos(c0[1]),length=15)
line_scale_07_sin<-seq(sin(c0[7]),sin(c0[1]),length=15)
text(c(line_scale_01_cos[x],line_scale_02_cos[x],line_scale_03_cos[x],line_scale_04_cos[x],line_scale_05_cos[x],line_scale_06_cos[x],line_scale_07_cos[x]),c(line_scale_01_sin[x],line_scale_02_sin[x],line_scale_03_sin[x],line_scale_04_sin[x],line_scale_05_sin[x],line_scale_06_sin[x],line_scale_07_sin[x]), labels=c("ab","bc","cd","de","ef","fg","ga",""),col=c(rgb(0,0,1),rgb(0,0,1),rgb(0,0,1),rgb(0,0,1),rgb(0,0,1),rgb(0,0,1),rgb(0,0,1),rgb(0,0,1)),cex=c(2,2,2,2,2,2,2,2))

#塗りつぶし
polygon(c(c0_cos[1],line_scale_07_cos[x],line_scale_01_cos[x],c0_cos[1]), #x
c(c0_sin[1],line_scale_07_sin[x],line_scale_01_sin[x],c0_sin[1]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))   

#塗りつぶし
polygon(c(c0_cos[2],line_scale_01_cos[x],line_scale_02_cos[x],c0_cos[2]), #x
c(c0_sin[2],line_scale_01_sin[x],line_scale_02_sin[x],c0_sin[2]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))   

#塗りつぶし
polygon(c(c0_cos[3],line_scale_02_cos[x],line_scale_03_cos[x],c0_cos[3]), #x
c(c0_sin[3],line_scale_02_sin[x],line_scale_03_sin[x],c0_sin[3]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))  

#塗りつぶし
polygon(c(c0_cos[4],line_scale_03_cos[x],line_scale_04_cos[x],c0_cos[4]), #x
c(c0_sin[4],line_scale_03_sin[x],line_scale_04_sin[x],c0_sin[4]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))  

#塗りつぶし
polygon(c(c0_cos[5],line_scale_04_cos[x],line_scale_05_cos[x],c0_cos[5]), #x
c(c0_sin[5],line_scale_04_sin[x],line_scale_05_sin[x],c0_sin[5]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))  
#塗りつぶし
polygon(c(c0_cos[6],line_scale_05_cos[x],line_scale_06_cos[x],c0_cos[6]), #x
c(c0_sin[6],line_scale_05_sin[x],line_scale_06_sin[x],c0_sin[6]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))

#塗りつぶし
polygon(c(c0_cos[7],line_scale_06_cos[x],line_scale_07_cos[x],c0_cos[7]), #x
c(c0_sin[7],line_scale_06_sin[x],line_scale_07_sin[x],c0_sin[7]), #y
density=c(30), #塗りつぶす濃度
angle=c(45),     #塗りつぶす斜線の角度
col=rgb(0,1,0))

}

#アニメーション
library("animation")
Time_Code=c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
saveGIF({
for (i in Time_Code){
 Three_square_theorem07(i)
}
}, interval = 0.1, movie.name = "TEST07.gif") 

f:id:ochimusha01:20190918204149g:plain

基本円(Basic circle)上に同心円を描く任意の正7角形内で正7角形を回すと、その片長の比は1と内接円や外接円のサイズ比cos(pi/7)=0.9009689の間を反復し続ける。

f:id:ochimusha01:20191018150917p:plain