跳转到内容

分形/复平面迭代/p misiurewicz

来自 Wikibooks,开放世界中的开放书籍

如何使用 Devaney 算法计算主Misiurewicz 点[1]的外部角唤醒 p/q

  • 唤醒(或肢体或灌木)的主 Misiurewicz 点[2]
  • 灌木的主节点[3]
  • 中心=灌木的中心部分(Pastor 符号),辐条连接的点
  • 直接连接到 p/q 球茎的 q 个辐条的连接点(Devaney 符号)[4]
  • “M p/q 中第一个支配 α-Misiurewicz 点,即具有最低前周期的点”[5]
  • 象眼位于主心形的内部角 1/4 上(Curtis McMullen

p/q 唤醒的主 misiurewicz 点是

  • 它有 q 个臂(辐条,分支),按顺时针方向编号,从 0 到 q-1
  • 它是 q 个外部角的着陆点
  • 临界点在复二次映射下具有前周期 q 和周期 p = 1,对于

着陆在 的 q 条射线的外部角

  • 二进制展开式中,前周期部分和周期部分的长度为 q
  • 角度在倍增映射下的周期和前周期为 q

重要区别

  • Romero-Pastor 符号使用 q/p 而不是 p/q
  • 前周期:通常使用临界值 的前周期,而不是临界点 的前周期。这样做的好处是临界值的角在倍增下具有与该点相同的前周期,并且在参数平面上会找到相同的角

如何使用 移位映射

如果字符串 s 的长度为 q,则

  


以b位为块移位q位

[编辑 | 编辑源代码]

注意

  
 
 
 
 
 
 


 
 
 


 
 


 
 

算法基于 RL Devaney 和 M Moreno-Rocha 在 2000 年 4 月 11 日发表的论文“Mandelbrot 集中天线的几何学”中的定理 5.3[6]


中心(见 Claude 的《书籍》第 3.9 节)或辐条的外部角[7]

球茎(= 双曲分量)有两个外部角着陆在其根点(键)上

 


这样

 

这些角具有

这些角度的其他名称是尾流角。

其中心点(主 Misiurewicz 点) 的外角按升序排列

  
  
 
 
 
 
 


其中

  • s 是一个由 q 个二进制数字组成的有限字符串 = s 包含 q 个二进制数字 = length(s)= q
  • 移位映射
  • 分数具有 Farey 父分数 a/b 和 r/s
  • b 是较低 Farey 父分数的分母



实现

// https://gitlab.com/adammajewski/wake_gmp
printf("p/q = %d/%d\tb=%d\n\n", p, q, b); // input 
	
printf("(s-)\n"); // first wake ray
printf("s-(s+)\n"); // first Misiurewicz ray
	
for (j = 1; j< q-1; j++){ // there are q rays ( from 0 to q-1) but only (q-2) has to be computed

		n = (j*b) % q;
		
		if (j< q-p) 
			{printf("s-(d^%d(s+))\n", n);}
			else printf("s+(d^%d(s+))\n", n);
		
	
}

printf("s+(s-)\n"); // last Misiurewicz ray
printf("(s+)\n"); // last wake ray

输入和输出

[edit | edit source]
  • 输入:尾流的 2 个外角
  • 输出: 主 Misiurewicz 点(中心点)的外角

步骤

[edit | edit source]
  • 输入 =
    • 检查输入
      • p 和 q 都是
        • 整数
        • > 0
      • 真分数:p < q
      • 不可约分数 = 最简分数(不可约分数(或最简分数或约简分数)是指分子和分母是整数,并且除了 1 之外没有其他公因数的分数。当分子和分母的最大公因数(GCD)为 1 时,分数为最简分数。)
    • 如果输入正确,则有 个角需要计算
  • 计算尾流的 2 个角:
  • 计算前 2 个 q 角:
  • 计算最后 个角
    • 计算 Farey 父分数
    • 计算
    • (待办)
-- Haskell code by Claude Heiland-Allen
-- http://mathr.co.uk/blog/
-- http://math.bu.edu/people/bob/papers/monica.pdf
-- Geometry of the Antennas in the Mandelbrot Set
-- by R L Devaney and M Moreno-Rocha, April 11, 2000
-- computa a list of external angles from internal angle
hub :: InternalAngle -> [ExternalAngle]
hub pq =
  -- List comprehension
  [ (sm, shift k sp) | k <- [0, b .. (q - p - 1) * b] ] ++
  [ (sp, shift k sp) | k <- [(q - p) * b, (q - p + 1) * b .. (q - 1) * b] ]
  where
    p = numerator pq
    q = denominator pq
    -- compute tuple of wake angles = bulb, 
    -- sm=s- < sp=s+ 
    (([], sm), ([], sp)) = bulb pq -- preperiod is 0 so empty list :  pre = []
    (ab, cd) = parents pq -- Farey parents
    b = denominator ab
    shift k = genericTake q . genericDrop k . cycle  -- shift map

wake 提供的例子

[编辑 | 编辑源代码]
wake            angles of the wake      angle of principal Misiurewicz point    angles that land on z=0 on the dynamical plane                  period(c)               c 
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
k/r = 1/2	wake 1 ; 2/3		Mis 5/12				zcr 5 ; 17/24	                     				period_landing = 1	c -0.2281554936539618 ; 1.115142508039937
k/r = 1/3	wake 1 ; 2/7		Mis 9/56				zcr 9 ; 65/112  						period_landing = 1	c -0.1010963638456222 ; 0.9562865108091415
k/r = 1/4	wake 1 ; 2/15		Mis 17/240				zcr 17 ; 257/480						period_landing = 1	c -0.01718797733835019 ; 1.037652343793215
k/r = 1/5	wake 1 ; 2/31		Mis 33/992				zcr 33 ; 1025/1984						period_landing = 1	c -0.01660571692147523 ; 1.006001828834065
k/r = 1/6	wake 1 ; 2/63		Mis 65/4032				zcr 65 ; 4097/8064						period_landing = 1	c 0.002241106093233115 ; 1.006987004324957
k/r = 1/7	wake 1 ; 2/127		Mis 129/16256				zcr 129 ; 16385/32512						period_landing = 1	c -0.001369133815686842 ; 1.002755660363466
k/r = 1/8	wake 1 ; 2/255		Mis 257/65280				zcr 257 ; 65537/130560						period_landing = 1	c 0.001159450074256577 ; 1.000609019839529
k/r = 1/9	wake 1 ; 2/511		Mis 513/261632				zcr 513 ; 262145/523264 					period_landing = 1	c 0.0001701882004481036 ; 1.000517331884371
k/r = 1/10	wake 1 ; 2/1023		Mis 1025/1047552			zcr 1025 ; 1048577/2095104       				period_landing = 1	c 0.0002217350415235168 ; 0.9999309294242422
k/r = 1/11	wake 1 ; 2/2047		Mis 2049/4192256			zcr 2049 ; 4194305/8384512       				period_landing = 1	c 8.600871635354104e-05 ; 1.000043520609493
k/r = 1/12	wake 1 ; 2/4095		Mis 4097/16773120			zcr 4097 ; 16777217	/33546240				period_landing = 1	c 1.907198794976112e-05 ; 0.9999636227152136
k/r = 1/13	wake 1 ; 2/8191		Mis 8193/67100672			zcr 8193 ; 67108865	/134201344				period_landing = 1	c 1.619607246569189e-05 ; 0.9999946863543573
k/r = 1/14	wake 1 ; 2/16383	Mis 16385/268419072			zcr 16385 ; 268435457	/536838144				period_landing = 1	c -2.164159763572468e-06 ; 0.9999930692712914
k/r = 1/15	wake 1 ; 2/32767	Mis 32769/1073709056			zcr 32769 ; 1073741825	/2147418112				period_landing = 1	c 1.36020585022823e-06 ; 0.9999973111035358
k/r = 1/16	wake 1 ; 2/65535	Mis 65537/4294901760			zcr 65537 ; 4294967297	/8589803520				period_landing = 1	c -1.136844998313359e-06 ; 0.9999994042152635
k/r = 1/17	wake 1 ; 2/131071	Mis 131073/17179738112			zcr 131073 ; 17179869185	/34359476224			period_landing = 1	c -1.660928890362016e-07 ; 0.9999994938657326
k/r = 1/18	wake 1 ; 2/262143	Mis 262145/68719214592			zcr 262145 ; 68719476737	/137438429184			period_landing = 1	c -2.165774171377629e-07 ; 1.000000067631949
k/r = 1/19	wake 1 ; 2/524287	Mis 524289/274877382656			zcr 524289 ; 274877906945	/549754765312			period_landing = 1	c -8.402826966472988e-08 ; 0.9999999574950604
k/r = 1/20	wake 1 ; 2/1048575	Mis 1048577/1099510579200		zcr 1048577 ; 1099511627777	/2199021158400			period_landing = 1	c -1.861820421561348e-08 ; 1.000000035526125
k/r = 1/21	wake 1 ; 2/2097151	Mis 2097153/4398044413952		zcr 2097153 ; 4398046511105	/8796088827904			period_landing = 1	c -1.581664298449309e-08 ; 1.000000005190412
k/r = 1/22	wake 1 ; 2/4194303	Mis 4194305/17592181850112		zcr 4194305 ; 17592186044417	/35184363700224			period_landing = 1	c 2.11348855536603e-09 ; 1.000000006768042
k/r = 1/23	wake 1 ; 2/8388607	Mis 8388609/70368735789056		zcr 8388609 ; 70368744177665	/140737471578112		period_landing = 1	c -1.32827905765734e-09 ; 1.000000002625882
k/r = 1/24	wake 1 ; 2/16777215	Mis 16777217/281474959933440		zcr 16777217 ; 281474976710657	/562949919866880		period_landing = 1	c 1.110191297822782e-09 ; 1.000000000581819
k/r = 1/25	wake 1 ; 2/33554431	Mis 33554433/1125899873288192		zcr 33554433 ; 1125899906842625	/2251799746576384		period_landing = 1	c 1.62200284270896e-10 ; 1.00000000049427
k/r = 1/26	wake 1 ; 2/67108863	Mis 67108865/4503599560261632		zcr 67108865 ; 4503599627370497	/9007199120523264		period_landing = 1	c 2.115013311798569e-10 ; 0.9999999999339535
k/r = 1/27	wake 1 ; 2/134217727	Mis 134217729/18014398375264256		zcr 134217729 ; 18014398509481985	/36028796750528512	period_landing = 1	c 8.205882795347896e-11 ; 1.000000000041509
k/r = 1/28	wake 1 ; 2/268435455	Mis 268435457/72057593769492480		zcr 268435457 ; 72057594037927937	/144115187538984960	period_landing = 1	c 1.818186256603596e-11 ; 0.9999999999653065
k/r = 1/29	wake 1 ; 2/536870911	Mis 536870913/288230375614840832	zcr 536870913 ; 288230376151711745	/576460751229681664	period_landing = 1	c 1.544590637441404e-11 ; 0.9999999999949313
k/r = 1/30	wake 1 ; 2/1073741823	Mis 1073741825/1152921503533105152	zcr 1073741825 ; 1152921504606846977	/2305843007066210304	period_landing = 1	c -2.063955458366402e-12 ; 0.9999999999933906
k/r = 1/31	wake 1 ; 2/2147483647	Mis 2147483649/4611686016279904256	zcr 2147483649 ; 4611686018427387905	/9223372032559808512	period_landing = 1	c 1.29718610843552e-12 ; 0.9999999999974356
k/r = 1/32	wake 1 ; 2/4294967295	Mis 4294967297/18446744069414584320	zcr 4294967297 ; 1	/18446744065119617024			period_landing = 1	c -1.084197223871117e-12 ; 0.9999999999994318
k/r = 1/33	wake 1 ; 2/8589934591	pow  error 
 






Mandelbrot 集 wake 1/2

以下列出了 4 个角度 (q+2),按升序排列

  • 2 条射线落在根点 (s+ 和 s-) 上
  • q=2 条射线落在 Misiurewicz 点上


1/2 的 Farey 父项分别是 0/1 和 1/1

  0/1 < 1/2 < 1/1 	 0.0000000000000000 < 0.5000000000000000 < 1.0000000000000000 

较小父项的分母

 


  



The angle  5/12  or  01p10 has  preperiod = 2  and  period = 2. The corresponding parameter ray is landing at a Misiurewicz point of preperiod 2 and period dividing 2.

与以下进行比较

  • Myrberg-Feigenbaum 点 c = −1.401155,外部角度为 (0.412454... , 0,58755...)


主要 Misiurewicz 点

瓣 ( = 周期 3 双曲分量) 有两条外部角度落在其根点 (键) 上


 
 

这样

 

主要 Misiurewicz 点 wake 的一个着陆点,它对应着 个外部角度。它表示为

 

其中

  • 第一个数字表示预周期
  • 第二个数字表示周期

其中两个可以很容易地从角度计算出尾迹


 
 


这样

 


因此问题是只计算 1 条射线。


首先找到 的 Farey 父节点[8]

Farey 图


 


这样

  


取较小父节点的分母

 

并计算最后一个分数。

首先找到周期部分

  • 记住移位映射作用于无限序列
  • 从移位映射的结果中只取前 q 个数字
 


然后最后一个角度是

  

因此这里有 5 个角度 (q+2) 按升序排列

   


可以使用 Mandel 检查它

The angle  9/56  or  001p010
has  preperiod = 3  and  period = 3.
The corresponding parameter ray is landing
at a Misiurewicz point of preperiod 3 and
period dividing 3.
Do you want to draw the ray and to shift c
to the landing point?

灯泡 ( = 周期 4 双曲分量) 有 2 个外部角落在其根点 (键) 上


 
 


尾迹的主要 Misiurewicz 点 个外部角的着陆点。

 


其中两个可以很容易地从角度计算出尾迹


 
 


因此问题是只计算 条射线。


首先找到 的 Farey 父节点

Farey 图
 


取较低父节点的分母

 

并计算最后一个分数。

首先为 n 找到周期部分



然后 2 个最后一个角度是

  
  

因此这里有 个角度按升序排列

  

灯泡 ( = 周期 5 双曲分量) 有 2 个外部角落在其根点 (键) 上


 
 

2/5 的 Farey 父节点是 1/3 和 1/2

  1/3 < 2/5 < 1/2 	 		
  0.333333 < 0.400000 < 0.500000 


因此较小父节点的分母为 b = 3。

符号形式的角度

(s-)
 s-(s+)
 s-(d^3(s+))
 s-(d^1(s+))
 s+(d^4(s+))
 s+(s-)
(s+)



*Main> :main 2 5
bulb:
p01001 = 9 % 31
p01010 = 10 % 31

hub:
01001p01010 = 289 % 992
01001p10010 = 297 % 992
01001p10100 = 299 % 992
01010p00101 = 315 % 992
01010p01001 = 319 % 992


The angle  289/992  or  01001p01010 has  preperiod = 5  and  period = 5. 
The corresponding parameter ray is landing at a Misiurewicz point of preperiod 5 and period dividing 5.


二次多项式动态平面的 129/16256 分区

主心形 1/7 的尾迹

 = principal Misiurewicz
c = 0.367375134418445  +0.147183763188559 i = root of the wake 1/7
c = 0.376008681846768  +0.144749371321633 i = period 7 center


外部射线

  • 1/127 = 0.(0000001) = 0.0078740157480315 = 尾迹
  • 129 /16256 = 0.0000001(0000010) = 0.00793553149606299 = pM_{7,1}
  • 131 /16256 = 0.0000001(0000100) = 0.00805856299212598 = pM
  • 135 /16256 = 0.0000001(0001000 = 0.00830462598425197 = pM
  • 143 /16256 = 0.0000001(0010000) = 0.00879675196850394 = pM
  • 159 /16256 = 0.0000001(0100000) = 0.00978100393700787 = pM
  • 191 /16256 = 0.0000001(1000000) = 0.01174950787401575 = pM
  • 255 /16256 = 0.0000010(0000001) = 0.0156865157480315 = pM
  • 1/64 = 0.000000(1) = 0.015625 = M_{6,1} = 最长尖端
  • 2/127 = 0.(0000010) = 0.01574803149606299 = 尾迹
Mandelbrot 集 - 带外部射线的 3/7 尾迹。png

尾迹 3/7 及其主要 Misiurewicz 点 (中心)



*Main> :main 3 7
bulb:
p0101001 = 41 % 127
p0101010 = 42 % 127

hub:
0101001p0101010 = 5249 % 16256
0101001p1001010 = 5281 % 16256
0101001p1010010 = 5289 % 16256
0101001p1010100 = 5291 % 16256
0101010p0010101 = 5355 % 16256
0101010p0100101 = 5371 % 16256
0101010p0101001 = 5375 % 16256


使用 Mandel 检查

The angle  5249/16256  or  0101001p0101010
has  preperiod = 7  and  period = 7.
The corresponding parameter ray is landing
at a Misiurewicz point of preperiod 7 and
period dividing 7.
Mandelbrot 集 - 带外部射线的 5/11 尾迹
ghci
GHCi, version 8.10.7: https://www.haskell.org/ghc/  :? for help
Prelude> :l bh.hs
[1 of 1] Compiling Main             ( bh.hs, interpreted )
Ok, one module loaded.
*Main> :main 5 11
internal angle p/q = 5 / 11
internal angle in lowest terms = 
5 % 11
rays of the bulb:
(01010101001) = 681 % 2047
(01010101010) = 682 % 2047

rays of the principle hub:
01010101001(01010101010) = 1394689 % 4192256
01010101001(10010101010) = 1395201 % 4192256
01010101001(10100101010) = 1395329 % 4192256
01010101001(10101001010) = 1395361 % 4192256
01010101001(10101010010) = 1395369 % 4192256
01010101001(10101010100) = 1395371 % 4192256
01010101010(00101010101) = 1396395 % 4192256
01010101010(01001010101) = 1396651 % 4192256
01010101010(01010010101) = 1396715 % 4192256
01010101010(01010100101) = 1396731 % 4192256
01010101010(01010101001) = 1396735 % 4192256


使用 Mandel 检查

The 5/11-wake of the main cardioid is
bounded by the parameter rays with the angles
681/2047  or  p01010101001  and
682/2047  or  p01010101010 .
Do you want to draw the rays and to shift c to the center of the satellite component?

结果是周期 11 卫星分量的中心 c = -0.697838195122425 +0.279304134101366 i 周期 = 11

The angle  1394689/4192256  or  01010101001p01010101010 has  preperiod = 11  and  period = 11.
The corresponding parameter ray lands at a Misiurewicz point of preperiod 11 and period dividing 11. Do you want to draw the ray and to shift c to the landing point?

结果是 5/11 尾迹的主要 Misiurewicz 点 M_{11,1} = c = -0.724112682973574 +0.286456567676711 i

12/25

[edit | edit source]


*Main> :main 12 25
internal angle p/q = 12 / 25
internal angle in lowest terms = 
12 % 25
rays of the bulb:
(0101010101010101010101001) = 11184809 % 33554431
(0101010101010101010101010) = 11184810 % 33554431

rays of the principle hub:
0101010101010101010101001(0101010101010101010101010) = 375299913023489 % 1125899873288192
0101010101010101010101001(1001010101010101010101010) = 375299921412097 % 1125899873288192
0101010101010101010101001(1010010101010101010101010) = 375299923509249 % 1125899873288192
0101010101010101010101001(1010100101010101010101010) = 375299924033537 % 1125899873288192
0101010101010101010101001(1010101001010101010101010) = 375299924164609 % 1125899873288192
0101010101010101010101001(1010101010010101010101010) = 375299924197377 % 1125899873288192
0101010101010101010101001(1010101010100101010101010) = 375299924205569 % 1125899873288192
0101010101010101010101001(1010101010101001010101010) = 375299924207617 % 1125899873288192
0101010101010101010101001(1010101010101010010101010) = 375299924208129 % 1125899873288192
0101010101010101010101001(1010101010101010100101010) = 375299924208257 % 1125899873288192
0101010101010101010101001(1010101010101010101001010) = 375299924208289 % 1125899873288192
0101010101010101010101001(1010101010101010101010010) = 375299924208297 % 1125899873288192
0101010101010101010101001(1010101010101010101010100) = 375299924208299 % 1125899873288192
0101010101010101010101010(0010101010101010101010101) = 375299940985515 % 1125899873288192
0101010101010101010101010(0100101010101010101010101) = 375299945179819 % 1125899873288192
0101010101010101010101010(0101001010101010101010101) = 375299946228395 % 1125899873288192
0101010101010101010101010(0101010010101010101010101) = 375299946490539 % 1125899873288192
0101010101010101010101010(0101010100101010101010101) = 375299946556075 % 1125899873288192
0101010101010101010101010(0101010101001010101010101) = 375299946572459 % 1125899873288192
0101010101010101010101010(0101010101010010101010101) = 375299946576555 % 1125899873288192
0101010101010101010101010(0101010101010100101010101) = 375299946577579 % 1125899873288192
0101010101010101010101010(0101010101010101001010101) = 375299946577835 % 1125899873288192
0101010101010101010101010(0101010101010101010010101) = 375299946577899 % 1125899873288192
0101010101010101010101010(0101010101010101010100101) = 375299946577915 % 1125899873288192
0101010101010101010101010(0101010101010101010101001) = 375299946577919 % 1125899873288192


着陆点 = 主要 Misiurewicz 点

The angle  375299913023489/1125899873288192  or  0101010101010101010101001p0101010101010101010101010 has  preperiod = 25  and  period = 25.
The corresponding parameter ray lands at a Misiurewicz point of preperiod 25 and period dividing 25.
Do you want to draw the ray and to shift c to the landing point?
c = -0.745846774741742  +0.124374904775875 i    
m-describe 112 100 10000 -0.745846774741742  +0.124374904775875 4 
the input point was -7.4584677474174200000000000000000001e-01 + 1.2437490477587499999999999999999999e-01 i
nearby hyperbolic components to the input point:

- a period 1 cardioid
  with nucleus at 0.00000e+00 + 0.00000e+00 i
  the component has size 1.00000e+00 and is pointing west
  the atom domain has size 0.00000e+00
  the atom domain coordinates of the input point are -nan + -nan i
  the atom domain coordinates in polar form are -nan to the east
  the atom coordinates of the input point are -0.74585 + 0.12437 i
  the atom coordinates in polar form are 0.75615 to the west
  the nucleus is 7.56146e-01 to the east of the input point

- a period 2 circle
  with nucleus at -1.00000e+00 + 0.00000e+00 i
  the component has size 5.00000e-01 and is pointing west
  the atom domain has size 1.00000e+00
  the atom domain coordinates of the input point are 0.25415 + 0.12437 i
  the atom domain coordinates in polar form are 0.28295 to the east-north-east
  the atom coordinates of the input point are 0.50831 + 0.24875 i
  the atom coordinates in polar form are 0.56591 to the east-north-east
  the nucleus is 2.82954e-01 to the west-south-west of the input point
  external angles of this component are:
  .(01)
  .(10)
the point escaped with dwell 4217.96435

nearby Misiurewicz points to the input point:

- 26p4
  with center at -7.45846774741742277327028259457753e-01 + 1.24374904775875452739596099543026e-01 i
  the Misiurewicz domain has size 7.57002e-04
  the Misiurewicz domain coordinate radius is 7.0135e-13
  the center is 5.30927e-16 to the north-north-west of the input point
  the multiplier has radius 1.030029879100029796e+00 and angle -0.078808321127835692 (in turns)
Mandelbrot 集 - 带外部射线的 1/31 尾迹
*Main> :main 1 31
internal angle p/q = 1 / 31
internal angle in lowest terms = 
1 % 31
rays of the bulb:
(0000000000000000000000000000001) = 1 % 2147483647
(0000000000000000000000000000010) = 2 % 2147483647

rays of the principle hub:
0000000000000000000000000000001(0000000000000000000000000000010) = 2147483649 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000000000100) = 2147483651 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000000001000) = 2147483655 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000000010000) = 2147483663 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000000100000) = 2147483679 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000001000000) = 2147483711 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000010000000) = 2147483775 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000000100000000) = 2147483903 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000001000000000) = 2147484159 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000010000000000) = 2147484671 % 4611686016279904256
0000000000000000000000000000001(0000000000000000000100000000000) = 2147485695 % 4611686016279904256
0000000000000000000000000000001(0000000000000000001000000000000) = 2147487743 % 4611686016279904256
0000000000000000000000000000001(0000000000000000010000000000000) = 2147491839 % 4611686016279904256
0000000000000000000000000000001(0000000000000000100000000000000) = 2147500031 % 4611686016279904256
0000000000000000000000000000001(0000000000000001000000000000000) = 2147516415 % 4611686016279904256
0000000000000000000000000000001(0000000000000010000000000000000) = 2147549183 % 4611686016279904256
0000000000000000000000000000001(0000000000000100000000000000000) = 2147614719 % 4611686016279904256
0000000000000000000000000000001(0000000000001000000000000000000) = 2147745791 % 4611686016279904256
0000000000000000000000000000001(0000000000010000000000000000000) = 2148007935 % 4611686016279904256
0000000000000000000000000000001(0000000000100000000000000000000) = 2148532223 % 4611686016279904256
0000000000000000000000000000001(0000000001000000000000000000000) = 2149580799 % 4611686016279904256
0000000000000000000000000000001(0000000010000000000000000000000) = 2151677951 % 4611686016279904256
0000000000000000000000000000001(0000000100000000000000000000000) = 2155872255 % 4611686016279904256
0000000000000000000000000000001(0000001000000000000000000000000) = 2164260863 % 4611686016279904256
0000000000000000000000000000001(0000010000000000000000000000000) = 2181038079 % 4611686016279904256
0000000000000000000000000000001(0000100000000000000000000000000) = 2214592511 % 4611686016279904256
0000000000000000000000000000001(0001000000000000000000000000000) = 2281701375 % 4611686016279904256
0000000000000000000000000000001(0010000000000000000000000000000) = 2415919103 % 4611686016279904256
0000000000000000000000000000001(0100000000000000000000000000000) = 2684354559 % 4611686016279904256
0000000000000000000000000000001(1000000000000000000000000000000) = 3221225471 % 4611686016279904256
0000000000000000000000000000010(0000000000000000000000000000001) = 4294967295 % 4611686016279904256

8/47 = 16/94

[edit | edit source]

Haskell 输出

*Main> :main 16 94
internal angle p/q = 16 / 94
internal angle in lowest terms = 
8 % 47
rays of the bulb:
(00001000001000001000001000001000001000001000001) = 4467856773185 % 140737488355327
(00001000001000001000001000001000001000001000010) = 4467856773186 % 140737488355327

rays of the hub:
00001000001000001000001000001000001000001000001(00001000001000001000001000001000001000001000010)
00001000001000001000001000001000001000001000001(00001000001000001000001000001000001000010000010)
00001000001000001000001000001000001000001000001(00001000001000001000001000001000010000010000010)
00001000001000001000001000001000001000001000001(00001000001000001000001000010000010000010000010)
00001000001000001000001000001000001000001000001(00001000001000001000010000010000010000010000010)
00001000001000001000001000001000001000001000001(00001000001000010000010000010000010000010000010)
00001000001000001000001000001000001000001000001(00001000010000010000010000010000010000010000010)
00001000001000001000001000001000001000001000001(00010000010000010000010000010000010000010000010)
00001000001000001000001000001000001000001000001(00010000010000010000010000010000010000010000100)
00001000001000001000001000001000001000001000001(00010000010000010000010000010000010000100000100)
00001000001000001000001000001000001000001000001(00010000010000010000010000010000100000100000100)
00001000001000001000001000001000001000001000001(00010000010000010000010000100000100000100000100)
00001000001000001000001000001000001000001000001(00010000010000010000100000100000100000100000100)
00001000001000001000001000001000001000001000001(00010000010000100000100000100000100000100000100)
00001000001000001000001000001000001000001000001(00010000100000100000100000100000100000100000100)
00001000001000001000001000001000001000001000001(00100000100000100000100000100000100000100000100)
00001000001000001000001000001000001000001000001(00100000100000100000100000100000100000100001000)
00001000001000001000001000001000001000001000001(00100000100000100000100000100000100001000001000)
00001000001000001000001000001000001000001000001(00100000100000100000100000100001000001000001000)
00001000001000001000001000001000001000001000001(00100000100000100000100001000001000001000001000)
00001000001000001000001000001000001000001000001(00100000100000100001000001000001000001000001000)
00001000001000001000001000001000001000001000001(00100000100001000001000001000001000001000001000)
00001000001000001000001000001000001000001000001(00100001000001000001000001000001000001000001000)
00001000001000001000001000001000001000001000001(01000001000001000001000001000001000001000001000)
00001000001000001000001000001000001000001000001(01000001000001000001000001000001000001000010000)
00001000001000001000001000001000001000001000001(01000001000001000001000001000001000010000010000)
00001000001000001000001000001000001000001000001(01000001000001000001000001000010000010000010000)
00001000001000001000001000001000001000001000001(01000001000001000001000010000010000010000010000)
00001000001000001000001000001000001000001000001(01000001000001000010000010000010000010000010000)
00001000001000001000001000001000001000001000001(01000001000010000010000010000010000010000010000)
00001000001000001000001000001000001000001000001(01000010000010000010000010000010000010000010000)
00001000001000001000001000001000001000001000001(10000010000010000010000010000010000010000010000)
00001000001000001000001000001000001000001000001(10000010000010000010000010000010000010000100000)
00001000001000001000001000001000001000001000001(10000010000010000010000010000010000100000100000)
00001000001000001000001000001000001000001000001(10000010000010000010000010000100000100000100000)
00001000001000001000001000001000001000001000001(10000010000010000010000100000100000100000100000)
00001000001000001000001000001000001000001000001(10000010000010000100000100000100000100000100000)
00001000001000001000001000001000001000001000001(10000010000100000100000100000100000100000100000)
00001000001000001000001000001000001000001000001(10000100000100000100000100000100000100000100000)
00001000001000001000001000001000001000001000010(00000100000100000100000100000100000100000100001)
00001000001000001000001000001000001000001000010(00000100000100000100000100000100000100001000001)
00001000001000001000001000001000001000001000010(00000100000100000100000100000100001000001000001)
00001000001000001000001000001000001000001000010(00000100000100000100000100001000001000001000001)
00001000001000001000001000001000001000001000010(00000100000100000100001000001000001000001000001)
00001000001000001000001000001000001000001000010(00000100000100001000001000001000001000001000001)
00001000001000001000001000001000001000001000010(00000100001000001000001000001000001000001000001)
00001000001000001000001000001000001000001000010(00001000001000001000001000001000001000001000001)

c 输出

~/book/code/bin$ ./mandelbrot_describe_external_angle '.00001000001000001000001000001000001000001000001(00001000001000001000001000001000001000001000010)'
binary: .00001000001000001000001000001000001000001000001(00001000001000001000001000001000001000001000010)
decimal: 628794940589397270782279681/19807040628565943660897632256
preperiod: 47
period: 47

34/89

[edit | edit source]
参数平面 (和 Mandelbrot 集) 34/89 尾迹及带外部射线的主要 Misiurewicz 点
a@zelman:~/haskell/hub$ ghci
GHCi, version 8.0.2: http://www.haskell.org/ghc/  :? for help
Prelude> :l bh.hs
[1 of 1] Compiling Main             ( bh.hs, interpreted )
Ok, modules loaded: Main.
*Main> :main 34 89
internal angle p/q = 34 / 89
internal angle in lowest terms = 
34 % 89
rays of the bulb:
(01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001) = 179622968672387565806504265 % 618970019642690137449562111
(01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010) = 179622968672387565806504266 % 618970019642690137449562111

rays of the principle hub:
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010) = 111181232447426046807770849175978166730445345710407681 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010010100101001001010010100100101001001010010100100101001001010010100100101001010) = 111181232447426046807770849175978166766474142729371649 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010010100101001001010010100100101001001010010100100101001010010010100100101001010) = 111181232447426046807770849175978166766474142731468801 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010100100101001001010010100100101001001010010100100101001010010010100100101001010) = 111181232447426046807770849176053724630200057054887937 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010100100101001001010010100100101001010010010100100101001010010010100100101001010) = 111181232447426046807770849176053724630204455101399041 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010100100101001001010010100100101001010010010100100101001010010010100101001001010) = 111181232447426046807770849176053724630204455101399297 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010100100101001010010010100100101001010010010100100101001010010010100101001001010) = 111181232447426046807770849176053733853576491956175105 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01001010010100100101001010010010100100101001010010010100101001001010010010100101001001010) = 111181232447426046807770849176053733853576492493046017 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100100101001010010010100100101001010010010100101001001010010010100101001001010) = 111181232447426046807770849195396546967410559288344833 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100100101001010010010100101001001010010010100101001001010010010100101001001010) = 111181232447426046807770849195396546968536459195187457 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100100101001010010010100101001001010010010100101001001010010100100101001001010) = 111181232447426046807770849195396546968536459195252993 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100101001001010010010100101001001010010010100101001001010010100100101001001010) = 111181232447426046807770849195398908151777894017859841 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100101001001010010010100101001001010010100100101001001010010100100101001001010) = 111181232447426046807770849195398908151778031456813313 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100101001001010010010100101001001010010100100101001001010010100100101001010010) = 111181232447426046807770849195398908151778031456813321 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100101001001010010100100101001001010010100100101001001010010100100101001010010) = 111181232447426046807770849195398908440008407608525065 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010010100101001001010010100100101001001010010100100101001010010010100100101001010010) = 111181232447426046807770849195398908440008407625302281 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010100100101001001010010100100101001001010010100100101001010010010100100101001010010) = 111181232447426046807770849196003371349815722212655369 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010100100101001001010010100100101001010010010100100101001010010010100100101001010010) = 111181232447426046807770849196003371349850906584744201 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010100100101001001010010100100101001010010010100100101001010010010100101001001010010) = 111181232447426046807770849196003371349850906584746249 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010100100101001010010010100100101001010010010100100101001010010010100101001001010010) = 111181232447426046807770849196003445136827201422952713 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(01010010100100101001010010010100100101001010010010100101001001010010010100101001001010010) = 111181232447426046807770849196003445136827205717920009 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100100101001010010010100100101001010010010100101001001010010010100101001001010010) = 111181232447426046807770849350745950047499740080310537 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100100101001010010010100101001001010010010100101001001010010010100101001001010010) = 111181232447426046807770849350745950056506939335051529 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100100101001010010010100101001001010010010100101001001010010100100101001001010010) = 111181232447426046807770849350745950056506939335575817 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100101001001010010010100101001001010010010100101001001010010100100101001001010010) = 111181232447426046807770849350764839522438417916430601 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100101001001010010010100101001001010010100100101001001010010100100101001001010010) = 111181232447426046807770849350764839522439517428058377 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100101001001010010010100101001001010010100100101001001010010100100101001010010010) = 111181232447426046807770849350764839522439517428058441 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100101001001010010100100101001001010010100100101001001010010100100101001010010010) = 111181232447426046807770849350764841828282526641752393 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010010100101001001010010100100101001001010010100100101001010010010100100101001010010010) = 111181232447426046807770849350764841828282526775970121 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001001010010100100101001001010010100100101001010010010100100101001010010010) = 111181232447426046807770849355600545106741043474794825 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001001010010100100101001010010010100100101001010010010100100101001010010010) = 111181232447426046807770849355600545107022518451505481 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001001010010100100101001010010010100100101001010010010100101001001010010010) = 111181232447426046807770849355600545107022518451521865 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001010010010100100101001010010010100100101001010010010100101001001010010010) = 111181232447426046807770849355601135402832877157173577 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001010010010100100101001010010010100101001001010010010100101001001010010010) = 111181232447426046807770849355601135402832911516911945 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001010010010100100101001010010010100101001001010010010100101001001010010100) = 111181232447426046807770849355601135402832911516911947 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001010010010100101001001010010010100101001001010010010100101001001010010100) = 111181232447426046807770849355601135474890505554839883 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100100101001010010010100101001001010010010100101001001010010100100101001001010010100) = 111181232447426046807770849355601135474890505559034187 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100101001001010010010100101001001010010010100101001001010010100100101001001010010100) = 111181232447426046807770849355752251202342334205872459 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100101001001010010010100101001001010010100100101001001010010100100101001001010010100) = 111181232447426046807770849355752251202351130298894667 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100101001001010010010100101001001010010100100101001001010010100100101001010010010100) = 111181232447426046807770849355752251202351130298895179 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100101001001010010100100101001001010010100100101001001010010100100101001010010010100) = 111181232447426046807770849355752269649095204008446795 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10010100101001001010010100100101001001010010100100101001010010010100100101001010010010100) = 111181232447426046807770849355752269649095205082188619 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001001010010100100101001001010010100100101001010010010100100101001010010010100) = 111181232447426046807770849394437895876763338672786251 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001001010010100100101001010010010100100101001010010010100100101001010010010100) = 111181232447426046807770849394437895879015138486471499 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001001010010100100101001010010010100100101001010010010100101001001010010010100) = 111181232447426046807770849394437895879015138486602571 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001010010010100100101001010010010100100101001010010010100101001001010010010100) = 111181232447426046807770849394442618245498008131816267 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001010010010100100101001010010010100101001001010010010100101001001010010010100) = 111181232447426046807770849394442618245498283009723211 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001010010010100100101001010010010100101001001010010010100101001001010010100100) = 111181232447426046807770849394442618245498283009723227 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001010010010100101001001010010010100101001001010010010100101001001010010100100) = 111181232447426046807770849394442618821959035313146715 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100100101001010010010100101001001010010010100101001001010010100100101001001010010100100) = 111181232447426046807770849394442618821959035346701147 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100101001001010010010100101001001010010010100101001001010010100100101001001010010100100) = 111181232447426046807770849395651544641573664521407323 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100101001001010010010100101001001010010100100101001001010010100100101001001010010100100) = 111181232447426046807770849395651544641644033265584987 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100101001001010010010100101001001010010100100101001001010010100100101001010010010100100) = 111181232447426046807770849395651544641644033265589083 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100101001001010010100100101001001010010100100101001001010010100100101001010010010100100) = 111181232447426046807770849395651692215596622942002011 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001(10100101001001010010100100101001001010010100100101001010010010100100101001010010010100100) = 111181232447426046807770849395651692215596631531936603 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001001010010100100101001001010010100100101001010010010100100101001010010010100101) = 111181232447426046807770849705136702036941700256717659 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001001010010100100101001010010010100100101001010010010100100101001010010010100101) = 111181232447426046807770849705136702054956098766199643 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001001010010100100101001010010010100100101001010010010100101001001010010010100101) = 111181232447426046807770849705136702054956098767248219 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001010010010100100101001010010010100100101001010010010100101001001010010010100101) = 111181232447426046807770849705174480986819055928957787 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001010010010100100101001010010010100101001001010010010100101001001010010010100101) = 111181232447426046807770849705174480986821254952213339 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001010010010100100101001010010010100101001001010010010100101001001010010100100101) = 111181232447426046807770849705174480986821254952213467 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001010010010100101001001010010010100101001001010010010100101001001010010100100101) = 111181232447426046807770849705174485598507273379601371 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00100101001010010010100101001001010010010100101001001010010100100101001001010010100100101) = 111181232447426046807770849705174485598507273648036827 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010010100101001001010010010100101001001010010100100101001001010010100100101) = 111181232447426046807770849714845892155424307045686235 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010010100101001001010010100100101001001010010100100101001001010010100100101) = 111181232447426046807770849714845892155987256999107547 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010010100101001001010010100100101001001010010100100101001010010010100100101) = 111181232447426046807770849714845892155987256999140315 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010100100101001001010010100100101001001010010100100101001010010010100100101) = 111181232447426046807770849714847072747607974410443739 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010100100101001001010010100100101001010010010100100101001010010010100100101) = 111181232447426046807770849714847072747608043129920475 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010100100101001001010010100100101001010010010100100101001010010010100101001) = 111181232447426046807770849714847072747608043129920479 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010100100101001010010010100100101001010010010100100101001010010010100101001) = 111181232447426046807770849714847072891723231205776351 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001001010010100100101001010010010100100101001010010010100101001001010010010100101001) = 111181232447426046807770849714847072891723231214164959 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001010010010100100101001010010010100100101001010010010100101001001010010010100101001) = 111181232447426046807770849715149304346626888507841503 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001010010010100100101001010010010100101001001010010010100101001001010010010100101001) = 111181232447426046807770849715149304346644480693885919 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001010010010100100101001010010010100101001001010010010100101001001010010100100101001) = 111181232447426046807770849715149304346644480693886943 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001010010010100101001001010010010100101001001010010010100101001001010010100100101001) = 111181232447426046807770849715149341240132628112990175 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(00101001010010010100101001001010010010100101001001010010100100101001001010010100100101001) = 111181232447426046807770849715149341240132630260473823 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010010100101001001010010010100101001001010010100100101001001010010100100101001) = 111181232447426046807770849792520593695468897441669087 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010010100101001001010010100100101001001010010100100101001001010010100100101001) = 111181232447426046807770849792520593699972497069039583 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010010100101001001010010100100101001001010010100100101001010010010100100101001) = 111181232447426046807770849792520593699972497069301727 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010100100101001001010010100100101001001010010100100101001010010010100100101001) = 111181232447426046807770849792530038432938236359729119 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010100100101001001010010100100101001010010010100100101001010010010100100101001) = 111181232447426046807770849792530038432938786115543007 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010100100101001001010010100100101001010010010100100101001010010010100101001001) = 111181232447426046807770849792530038432938786115543039 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010100100101001010010010100100101001010010010100100101001010010010100101001001) = 111181232447426046807770849792530039585860290722390015 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001001010010100100101001010010010100100101001010010010100101001001010010010100101001001) = 111181232447426046807770849792530039585860290789498879 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001010010010100100101001010010010100100101001010010010100101001001010010010100101001001) = 111181232447426046807770849794947891225089549138911231 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001010010010100100101001010010010100101001001010010010100101001001010010010100101001001) = 111181232447426046807770849794947891225230286627266559 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001010010010100100101001010010010100101001001010010010100101001001010010100100101001001) = 111181232447426046807770849794947891225230286627274751 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001010010010100101001001010010010100101001001010010010100101001001010010100100101001001) = 111181232447426046807770849794948186373135465980100607 % 383123885216472214589586756168607276261994643096338432
01001010010010100101001001010010010100101001001010010100100101001001010010100100101001010(01001010010010100101001001010010010100101001001010010100100101001001010010100100101001001) = 111181232447426046807770849794948186373135483159969791 % 383123885216472214589586756168607276261994643096338432
*Main>
*Main> :main 15 94
internal angle p/q = 15 / 94
internal angle in lowest terms = 
15 % 94
rays of the bulb:
(0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001) = 314396870629096754623553665 % 19807040628566084398385987583
(0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010) = 314396870629096754623553666 % 19807040628566084398385987583

rays of the hub:
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000010000010000010000010000001000001000001000000100000100000100000100000010000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000010000010000010000010000001000001000001000001000000100000100000100000010000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000010000010000010000010000001000001000001000001000000100000100000100000100000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000010000010000010000001000001000001000001000000100000100000100000100000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000010000010000010000010000001000001000001000000100000100000100000100000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000010000010000010000010000001000001000001000001000000100000100000100000010000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000010000010000010000010000001000001000001000001000000100000100000100000100000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000010000010000010000001000001000001000001000000100000100000100000100000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000010000010000010000010000001000001000001000000100000100000100000100000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000010000010000010000010000001000001000001000001000000100000100000100000010000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000010000010000010000010000001000001000001000001000000100000100000100000100000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000010000010000010000001000001000001000001000000100000100000100000100000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000010000010000010000010000001000001000001000000100000100000100000100000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000010000010000010000010000001000001000001000001000000100000100000100000010)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000010000010000010000010000001000001000001000001000000100000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000100000010000010000010000001000001000001000001000000100000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000100000010000010000010000010000001000001000001000000100000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0000100000100000100000100000010000010000010000010000001000001000001000001000000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000000100000100000100000010000010000010000010000001000001000001000001000000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000000100000100000100000100000010000010000010000001000001000001000001000000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000000100000100000100000100000010000010000010000010000001000001000001000000100000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000000100000100000100000100000010000010000010000010000001000001000001000001000000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000000100000100000100000010000010000010000010000001000001000001000001000000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000000100000100000100000100000010000010000010000001000001000001000001000000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000000100000100000100000100000010000010000010000010000001000001000001000000100000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000000100000100000100000100000010000010000010000010000001000001000001000001000000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000000100000100000100000010000010000010000010000001000001000001000001000000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000000100000100000100000100000010000010000010000001000001000001000001000000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000000100000100000100000100000010000010000010000010000001000001000001000000100)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000000100000100000100000100000010000010000010000010000001000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000001000000100000100000100000010000010000010000010000001000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000001000000100000100000100000100000010000010000010000001000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0001000001000001000001000000100000100000100000100000010000010000010000010000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000001000001000001000000100000100000100000100000010000010000010000010000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000001000001000001000001000000100000100000100000010000010000010000010000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000001000001000001000001000000100000100000100000100000010000010000010000001000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000001000001000001000001000000100000100000100000100000010000010000010000010000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000001000001000001000000100000100000100000100000010000010000010000010000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000001000001000001000001000000100000100000100000010000010000010000010000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000001000001000001000001000000100000100000100000100000010000010000010000001000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000001000001000001000001000000100000100000100000100000010000010000010000010000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000001000001000001000000100000100000100000100000010000010000010000010000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000001000001000001000001000000100000100000100000010000010000010000010000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000010000001000001000001000000100000100000100000100000010000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000010000001000001000001000001000000100000100000100000010000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0010000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000010000010000010000010000001000001000001000000100000100000100000100000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000010000010000010000010000001000001000001000001000000100000100000100000010000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000010000010000010000010000001000001000001000001000000100000100000100000100000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000010000010000010000001000001000001000001000000100000100000100000100000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000010000010000010000010000001000001000001000000100000100000100000100000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000010000010000010000010000001000001000001000001000000100000100000100000010000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000010000010000010000010000001000001000001000001000000100000100000100000100000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000010000010000010000001000001000001000001000000100000100000100000100000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000010000010000010000010000001000001000001000000100000100000100000100000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000010000010000010000010000001000001000001000001000000100000100000100000010000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000010000010000010000010000001000001000001000001000000100000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000100000010000010000010000001000001000001000001000000100000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000100000010000010000010000010000001000001000001000000100000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(0100000100000100000100000010000010000010000010000001000001000001000001000000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000000100000100000100000010000010000010000010000001000001000001000001000000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000000100000100000100000100000010000010000010000001000001000001000001000000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000000100000100000100000100000010000010000010000010000001000001000001000000100000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000000100000100000100000100000010000010000010000010000001000001000001000001000000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000000100000100000100000010000010000010000010000001000001000001000001000000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000000100000100000100000100000010000010000010000001000001000001000001000000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000000100000100000100000100000010000010000010000010000001000001000001000000100000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000000100000100000100000100000010000010000010000010000001000001000001000001000000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000000100000100000100000010000010000010000010000001000001000001000001000000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000000100000100000100000100000010000010000010000001000001000001000001000000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000000100000100000100000100000010000010000010000010000001000001000001000000100000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000000100000100000100000100000010000010000010000010000001000001000001000001000000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000001000000100000100000100000010000010000010000010000001000001000001000001000000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000001000000100000100000100000100000010000010000010000001000001000001000001000000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001(1000001000001000001000000100000100000100000100000010000010000010000010000001000001000001000000)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000001000001000001000000100000100000100000100000010000010000010000010000001000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000001000001000001000001000000100000100000100000010000010000010000010000001000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000001000001000001000001000000100000100000100000100000010000010000010000001000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000001000001000001000001000000100000100000100000100000010000010000010000010000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000001000001000001000000100000100000100000100000010000010000010000010000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000001000001000001000001000000100000100000100000010000010000010000010000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000001000001000001000001000000100000100000100000100000010000010000010000001000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000001000001000001000001000000100000100000100000100000010000010000010000010000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000001000001000001000000100000100000100000100000010000010000010000010000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000001000001000001000001000000100000100000100000010000010000010000010000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000001000001000001000001000000100000100000100000100000010000010000010000001000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000001000001000001000001000000100000100000100000100000010000010000010000010000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000010000001000001000001000000100000100000100000100000010000010000010000010000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000010000001000001000001000001000000100000100000100000010000010000010000010000001)
0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000010(0000010000010000010000001000001000001000001000000100000100000100000100000010000010000010000001)

中枢的第一个角度是

  6227271590044554501136183694529415329491604978647695361% 392318858461667547739736838930672110377831130880616169472

Haskell 代码

[编辑 | 编辑源代码]
-- Haskell code by Claude Heiland-Allen
-- http://mathr.co.uk/blog/
-- http://math.bu.edu/people/bob/papers/monica.pdf
-- Geometry of the Antennas in the Mandelbrot Set
-- by R L Devaney and M Moreno-Rocha, April 11, 2000

import Control.Monad (forM_)
import Data.List (genericTake, genericDrop, intercalate)
import Data.Fixed (mod')
import Data.Ratio ((%), numerator, denominator)
import Numeric (readInt)
import System.Environment (getArgs)

type InternalAngle = Rational -- let pq = p % q

type ExternalAngle = ([Bool], [Bool]) -- tuple of lists ([preperiodic], [periodic])

-- convert bool value to char 0 or 1 
bit :: Bool -> Char
bit False = '0'
bit True = '1'


-- convert list of bool values to string of bits
bits :: [Bool] -> String
bits = map bit

-- converts tuple of the lists (pre, per) to the string
pretty :: ExternalAngle -> String
pretty (pre, per) =  bits pre ++ "(" ++ bits per ++")"

-- converts a list of bits to an Integer, by parsing a String.
binary :: [Bool] -> Integer
binary [] = 0
binary s = case readInt 2 (`elem`"01") (\c -> case c of '0' -> 0 ; '1' -> 1) (bits s) of
  [(b, "")] -> b

-- external angle from tuple form to rational number 
rational :: ExternalAngle -> Rational
rational (pre, per) = (binary pre % 2^p) + (binary per % (2^p * (2^q - 1)))
  where
    p = length pre
    q = length per


-- compute a tuple of external angles from internal angle
-- rays for such angles land on the root of pq wake =  wake angles = bulb
bulb :: InternalAngle -> (ExternalAngle, ExternalAngle) 
bulb pq = (([], bs ++ [False, True]), ([], bs ++ [True, False]))
  where
    q = denominator pq
    bs
      = genericTake (q - 2)
      . map (\x -> 1 - pq < x && x < 1)
      . iterate (\x -> (x + pq) `mod'` 1)
      $ pq
      
-- parents in the Farey tree
-- http://mathr.co.uk/blog/2016-10-31_finding_parents_in_the_farey_tree.html
parents :: InternalAngle -> (InternalAngle, InternalAngle)
parents pq = go q 1 0 p 0 1
  where
    p = numerator pq
    q = denominator pq
    go r1 s1 t1 r0 s0 t0
      | r0 == 0 =
          let ab = - s1 % t1
              a = numerator ab
              b = denominator ab
              c = p - a
              d = q - b
              cd = c % d
          in  (min ab cd, max ab cd)
      | otherwise =
          let (o, r) = divMod r1 r0
              s = s1 - o * s0
              t = t1 - o * t0
          in  go r0 s0 t0 r s t     
          
           
-- computa a list of external angles from internal angle
hub :: InternalAngle -> [ExternalAngle]
hub pq =
  -- List comprehension
  [ (sm, shift k sp) | k <- [0, b .. (q - p - 1) * b] ] ++
  [ (sp, shift k sp) | k <- [(q - p) * b, (q - p + 1) * b .. (q - 1) * b] ]
  where
    p = numerator pq
    q = denominator pq
    -- compute tuple of wake angles = bulb, 
    -- sm=s- < sp=s+ 
    (([], sm), ([], sp)) = bulb pq -- preperiod is 0 so empty list :  pre = []
    (ab, cd) = parents pq -- Farey parents
    b = denominator ab
    shift k = genericTake q . genericDrop k . cycle  -- shift map

main :: IO ()
main = do
  -- read the input 
  [sp, sq] <- getArgs
  p <- readIO sp
  q <- readIO sq
  -- compute
  let pq = p % q
      (lo, hi) = bulb pq
      hs = hub pq
  -- output the results    
  putStrLn $ "internal angle p/q = " ++ sp ++ " / " ++ sq 
  putStrLn $ "internal angle in lowest terms = "
  print pq
  putStrLn $ "rays of the bulb:"
  putStrLn $ pretty lo ++ " = " ++ show (rational lo)
  putStrLn $ pretty hi ++ " = " ++ show (rational hi)
  putStrLn $ ""
  putStrLn $ "rays of the principle hub:"
  forM_ hs $ \h -> putStrLn $ pretty h  ++ " = " ++ show (rational h)

将其保存为 bh.hs 并以交互方式从控制台使用它

ghci
GHCi, version 7.10.3: http://www.haskell.org/ghc/  :? for help
Prelude> :l bh.hs
[1 of 1] Compiling Main             ( bh.hs, interpreted )
Ok, modules loaded: Main.

*Main> :main 1 2
bulb:
p01 = 1 % 3
p10 = 2 % 3

hub:
01p10 = 5 % 12
10p01 = 7 % 12


*Main> :main 1 3
bulb:
p001 = 1 % 7
p010 = 2 % 7

hub:
001p010 = 9 % 56
001p100 = 11 % 56
010p001 = 15 % 56

*Main> :main 1 4
bulb:
p0001 = 1 % 15
p0010 = 2 % 15

hub:
0001p0010 = 17 % 240
0001p0100 = 19 % 240
0001p1000 = 23 % 240
0010p0001 = 31 % 240

:main 1 5
bulb:
p00001 = 1 % 31
p00010 = 2 % 31

hub:
00001p00010 = 33 % 992
00001p00100 = 35 % 992
00001p01000 = 39 % 992
00001p10000 = 47 % 992
00010p00001 = 63 % 992

*Main> :main 1 6
bulb:
p000001 = 1 % 63
p000010 = 2 % 63

hub:
000001p000010 = 65 % 4032
000001p000100 = 67 % 4032
000001p001000 = 71 % 4032
000001p010000 = 79 % 4032
000001p100000 = 95 % 4032
000010p000001 = 127 % 4032

*Main> :main 1 7
bulb:
p0000001 = 1 % 127
p0000010 = 2 % 127

hub:
0000001p0000010 = 129 % 16256
0000001p0000100 = 131 % 16256
0000001p0001000 = 135 % 16256
0000001p0010000 = 143 % 16256
0000001p0100000 = 159 % 16256
0000001p1000000 = 191 % 16256
0000010p0000001 = 255 % 16256

*Main> :main 1 8
bulb:
p00000001 = 1 % 255
p00000010 = 2 % 255

hub:
00000001p00000010 = 257 % 65280
00000001p00000100 = 259 % 65280
00000001p00001000 = 263 % 65280
00000001p00010000 = 271 % 65280
00000001p00100000 = 287 % 65280
00000001p01000000 = 319 % 65280
00000001p10000000 = 383 % 65280
00000010p00000001 = 511 % 65280


*Main> :main 1 9
bulb:
p000000001 = 1 % 511
p000000010 = 2 % 511

hub:
000000001p000000010 = 513 % 261632
000000001p000000100 = 515 % 261632
000000001p000001000 = 519 % 261632
000000001p000010000 = 527 % 261632
000000001p000100000 = 543 % 261632
000000001p001000000 = 575 % 261632
000000001p010000000 = 639 % 261632
000000001p100000000 = 767 % 261632
000000010p000000001 = 1023 % 261632


*Main> :main 1 10
bulb:
p0000000001 = 1 % 1023
p0000000010 = 2 % 1023

hub:
0000000001p0000000010 = 1025 % 1047552
0000000001p0000000100 = 1027 % 1047552
0000000001p0000001000 = 1031 % 1047552
0000000001p0000010000 = 1039 % 1047552
0000000001p0000100000 = 1055 % 1047552
0000000001p0001000000 = 1087 % 1047552
0000000001p0010000000 = 1151 % 1047552
0000000001p0100000000 = 1279 % 1047552
0000000001p1000000000 = 1535 % 1047552
0000000010p0000000001 = 2047 % 1047552

*Main> :main 1 5
bulb:
p00001 = 1 % 31
p00010 = 2 % 31

hub:
00001p00010 = 33 % 992
00001p00100 = 35 % 992
00001p01000 = 39 % 992
00001p10000 = 47 % 992
00010p00001 = 63 % 992

*Main> :main 3 5
bulb:
p10101 = 21 % 31
p10110 = 22 % 31

hub:
10101p10110 = 673 % 992
10101p11010 = 677 % 992
10110p01011 = 693 % 992
10110p01101 = 695 % 992
10110p10101 = 703 % 992
*Main>  :main 4 5
bulb:
p11101 = 29 % 31
p11110 = 30 % 31

hub:
11101p11110 = 929 % 992
11110p01111 = 945 % 992
11110p10111 = 953 % 992
11110p11011 = 957 % 992
11110p11101 = 959 % 992
*Main>


*Main> :main 1  7
bulb:
p0000001 = 1 % 127
p0000010 = 2 % 127

hub:
0000001p0000010 = 129 % 16256
0000001p0000100 = 131 % 16256
0000001p0001000 = 135 % 16256
0000001p0010000 = 143 % 16256
0000001p0100000 = 159 % 16256
0000001p1000000 = 191 % 16256
0000010p0000001 = 255 % 16256


*Main> :main 2  7
bulb:
p0010001 = 17 % 127
p0010010 = 18 % 127

hub:
0010001p0010010 = 2177 % 16256
0010001p0100010 = 2193 % 16256
0010001p0100100 = 2195 % 16256
0010001p1000100 = 2227 % 16256
0010001p1001000 = 2231 % 16256
0010010p0001001 = 2295 % 16256
0010010p0010001 = 2303 % 16256

*Main> :main 4  7
bulb:
p1010101 = 85 % 127
p1010110 = 86 % 127

hub:
1010101p1010110 = 10881 % 16256
1010101p1011010 = 10885 % 16256
1010101p1101010 = 10901 % 16256
1010110p0101011 = 10965 % 16256
1010110p0101101 = 10967 % 16256
1010110p0110101 = 10975 % 16256
1010110p1010101 = 11007 % 16256

*Main> :main 5  7
bulb:
p1101101 = 109 % 127
p1101110 = 110 % 127

hub:
1101101p1101110 = 13953 % 16256
1101101p1110110 = 13961 % 16256
1101110p0110111 = 14025 % 16256
1101110p0111011 = 14029 % 16256
1101110p1011011 = 14061 % 16256
1101110p1011101 = 14063 % 16256
1101110p1101101 = 14079 % 16256


*Main> :main 6  7
bulb:
p1111101 = 125 % 127
p1111110 = 126 % 127

hub:
1111101p1111110 = 16001 % 16256
1111110p0111111 = 16065 % 16256
1111110p1011111 = 16097 % 16256
1111110p1101111 = 16113 % 16256
1111110p1110111 = 16121 % 16256
1111110p1111011 = 16125 % 16256
1111110p1111101 = 16127 % 16256
*Main>

 :main 1 65
bulb:
p00000000000000000000000000000000000000000000000000000000000000001 = 1 % 36893488147419103231
p00000000000000000000000000000000000000000000000000000000000000010 = 2 % 36893488147419103231

hub:
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000000000010 = 36893488147419103233 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000000000100 = 36893488147419103235 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000000001000 = 36893488147419103239 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000000010000 = 36893488147419103247 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000000100000 = 36893488147419103263 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000001000000 = 36893488147419103295 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000010000000 = 36893488147419103359 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000000100000000 = 36893488147419103487 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000001000000000 = 36893488147419103743 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000010000000000 = 36893488147419104255 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000000100000000000 = 36893488147419105279 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000001000000000000 = 36893488147419107327 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000010000000000000 = 36893488147419111423 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000000100000000000000 = 36893488147419119615 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000001000000000000000 = 36893488147419135999 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000010000000000000000 = 36893488147419168767 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000000100000000000000000 = 36893488147419234303 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000001000000000000000000 = 36893488147419365375 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000010000000000000000000 = 36893488147419627519 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000000100000000000000000000 = 36893488147420151807 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000001000000000000000000000 = 36893488147421200383 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000010000000000000000000000 = 36893488147423297535 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000000100000000000000000000000 = 36893488147427491839 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000001000000000000000000000000 = 36893488147435880447 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000010000000000000000000000000 = 36893488147452657663 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000000100000000000000000000000000 = 36893488147486212095 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000001000000000000000000000000000 = 36893488147553320959 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000010000000000000000000000000000 = 36893488147687538687 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000000100000000000000000000000000000 = 36893488147955974143 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000001000000000000000000000000000000 = 36893488148492845055 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000010000000000000000000000000000000 = 36893488149566586879 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000000100000000000000000000000000000000 = 36893488151714070527 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000001000000000000000000000000000000000 = 36893488156009037823 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000010000000000000000000000000000000000 = 36893488164598972415 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000000100000000000000000000000000000000000 = 36893488181778841599 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000001000000000000000000000000000000000000 = 36893488216138579967 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000010000000000000000000000000000000000000 = 36893488284858056703 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000000100000000000000000000000000000000000000 = 36893488422297010175 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000001000000000000000000000000000000000000000 = 36893488697174917119 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000010000000000000000000000000000000000000000 = 36893489246930731007 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000000100000000000000000000000000000000000000000 = 36893490346442358783 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000001000000000000000000000000000000000000000000 = 36893492545465614335 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000010000000000000000000000000000000000000000000 = 36893496943512125439 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000000100000000000000000000000000000000000000000000 = 36893505739605147647 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000001000000000000000000000000000000000000000000000 = 36893523331791192063 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000010000000000000000000000000000000000000000000000 = 36893558516163280895 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000000100000000000000000000000000000000000000000000000 = 36893628884907458559 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000001000000000000000000000000000000000000000000000000 = 36893769622395813887 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000010000000000000000000000000000000000000000000000000 = 36894051097372524543 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000000100000000000000000000000000000000000000000000000000 = 36894614047325945855 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000001000000000000000000000000000000000000000000000000000 = 36895739947232788479 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000010000000000000000000000000000000000000000000000000000 = 36897991747046473727 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000000100000000000000000000000000000000000000000000000000000 = 36902495346673844223 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000001000000000000000000000000000000000000000000000000000000 = 36911502545928585215 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000010000000000000000000000000000000000000000000000000000000 = 36929516944438067199 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000000100000000000000000000000000000000000000000000000000000000 = 36965545741457031167 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000001000000000000000000000000000000000000000000000000000000000 = 37037603335494959103 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000010000000000000000000000000000000000000000000000000000000000 = 37181718523570814975 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00000100000000000000000000000000000000000000000000000000000000000 = 37469948899722526719 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00001000000000000000000000000000000000000000000000000000000000000 = 38046409652025950207 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00010000000000000000000000000000000000000000000000000000000000000 = 39199331156632797183 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p00100000000000000000000000000000000000000000000000000000000000000 = 41505174165846491135 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p01000000000000000000000000000000000000000000000000000000000000000 = 46116860184273879039 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000001p10000000000000000000000000000000000000000000000000000000000000000 = 55340232221128654847 % 1361129467683753853816604941579653742592
00000000000000000000000000000000000000000000000000000000000000010p00000000000000000000000000000000000000000000000000000000000000001 = 73786976294838206463 % 1361129467683753853816604941579653742592
*Main>

与以下进行比较

[编辑 | 编辑源代码]


参考资料

[编辑 | 编辑源代码]
  1. 维基百科:Misiurewicz 点
  2. 维基百科:Misiurewicz 点
  3. G. Pastor、M. Romera、G. Alvarez、J. Nunez、D. Arroyo 和 F. Montoya 使用 Douady 和 Hubbard 的外部参数进行运算
  4. RL Devaney 和 M Moreno-Rocha 的 Mandelbrot 集中天线的几何
  5. Mandelbrot 集肢体之间同胚的扩展,作者 Bodil Branner 和 Nuria Fagella
  6. Mandelbrot 集中天线的几何(2000 年),作者 R. L. Devaney、M. Moreno-rocha
  7. 通过 Mandelbrot 集中的辐条进行导航,作者 Claude Heiland-Allen
  8. 在 Farey 树中查找父节点,作者 Claude Heiland-Allen

另请参阅

[编辑 | 编辑源代码]
华夏公益教科书