How to find the angles of external rays that land on the root point of any Mandelbrot set's component which is accesible from main cardioid ( M0) by a finite number of boundary crossing ?[1]
"The r/s internal ray in is the landing point of external rays obtained from by replacing:
the digit 0 by repeating block ( of length q) from
the digit 1 by repeating block ( of length q) from "
"By repeating the same process ( which is known as 'tuning') we can compute the arguments of external rays landing on the boundary of any component which is accesible from by a finite number of boundary crossing." ( Shaun Bullett )
Wakes near the period 1 continent in the Mandelbrot set. Boundary of the Mandelbrot set rendered with distance estimation (exterior and interior). Labelled with periods (blue), internal angles and rays (green) and external angles and rays (red).
knowledgedoor calculator : "There are more than 100000 fractional digits in the new number. We are sorry, but we had to abort the calculation to control the loading on our server" [3]
Binary to Decimal converter from xploringbinary because : ***ERROR: invalid characters in input[4]
Floating point decimal value can be computed ( xploringbinary calculator):
The angle 10/63 or p001010
has preperiod = 0 and period = 6.
The conjugate angle is 17/63 or p010001 .
The kneading sequence is AABAA* and
the internal address is 1-3-6 .
The corresponding parameter rays are landing
at the root of a satellite component of period 6.
It is bifurcating from period 3.
Do you want to draw the rays and to shift c
to the corresponding center?
(1/3,1/3)
First compute external angles for p/q and r/s wakes ( here p/q=r/s) :
The angle 74/511 or p001001010
has preperiod = 0 and period = 9.
The conjugate angle is 81/511 or p001010001 .
The kneading sequence is AABAABAA* and
the internal address is 1-3-9 .
The corresponding parameter rays are landing
at the root of a satellite component of period 9.
It is bifurcating from period 3.
Do you want to draw the rays and to shift c
to the corresponding center?
(1/3,1/4)
First compute external angles for p/q and r/s wakes :
The angle 586/4095 or p001001001010
has preperiod = 0 and period = 12.
The conjugate angle is 593/4095 or p001001010001 .
The kneading sequence is AABAABAABAA* and
the internal address is 1-3-12 .
The corresponding parameter rays are landing
at the root of a satellite component of period 12.
It is bifurcating from period 3.
Do you want to draw the rays and to shift c
to the corresponding center?
(1/3,3/4)
First compute external angles for p/q and r/s wakes :
The angle 1162/4095 or p010010001010
has preperiod = 0 and period = 12.
The conjugate angle is 1169/4095 or p010010010001 .
The kneading sequence is AABAABAABAA* and
the internal address is 1-3-12 .
The corresponding parameter rays are landing
at the root of a satellite component of period 12.
It is bifurcating from period 3.
Do you want to draw the rays and to shift c
to the corresponding center?
(1/4, 1/5)
Input is :
First compute external angles for p/q and r/s wakes :
The angle 69906/1048575 or p00010001000100010010
has preperiod = 0 and period = 20.
The conjugate angle is 69921/1048575 or p00010001000100100001 .
The kneading sequence is AAABAAABAAABAAABAAA* and
the internal address is 1-4-20 .
The corresponding parameter rays are landing
at the root of a satellite component of period 20.
It is bifurcating from period 4.
Do you want to draw the rays and to shift c
to the corresponding center?
(4/5, 1/17)
Mandelbrot set - subwake 1-( 4/5)->5-(1/17)->85
Angled internal address is :
1-(4/5)-> 5 -(1/17)-> 85
Input is :
First compute external angles for p/q and r/s wakes :
then in replace :
digit 0 by block of length q from
digit 1 by block of length q from
Result is :
One can not check it using program Mandel by Wolf Jung because period is too big. It gives answers only for period up to 64
The angle 5858713/16777215 or p010110010110010110011001
has preperiod = 0 and period = 24.
The conjugate angle is 5858902/16777215 or p010110010110011001010110 .
The kneading sequence is ABABAAABABAAABABAAABABA* and
the internal address is 1-2-6-24 .
The corresponding parameter rays are landing
at the root of a satellite component of period 24.
It is bifurcating from period 6.
Do you want to draw the rays and to shift c
to the corresponding center?
(1/3, 1/4, 1/5)
Input is a list :
(1/3, 1/4, 1/5)
We go thru the list of angles from right to left and divide list into 2 sublists :
First compute (1/4,1/5) wake which will be used as a a new r/s wake :
After that compute 1/3 wake ( most left), which will be used as a p/q wake :
then in replace :
digit 0 by repeating block (of length q, color blue) from
digit 1 by repeating block (of length q, color red) from
The angle 164984615799661137/1152921504606846975 or p001001001010001001001010001001001010001001001010001001010001
has preperiod = 0 and period = 60.
The conjugate angle is 164984615799689802/1152921504606846975 or p001001001010001001001010001001001010001001010001001001001010 .
The kneading sequence is AABAABAABAAAAABAABAABAAAAABAABAABAAAAABAABAABAAAAABAABAABAA* and
the internal address is 1-3-12-60 .
The corresponding parameter rays are landing
at the root of a satellite component of period 60.
It is bifurcating from period 12.
Do you want to draw the rays and to shift c
to the corresponding center?
4 angles list
(1/2, 1/3, 1/4, 1/5)
Input is a list :
(1/2, 1/3, 1/4, 1/5)
so the internal addres should be :
1-2-6-24-120
One can not check it using program Mandel because it is limited to period 64.
We go thru the list of input angles from right to left and divide list into 2 sublists :
size 640 360
view 53 -1.113644126576409e+00 2.5205986428803329e-01 3.9234950282896473e-04
ray_in 2000 .(010110010110010110011001010110010110010110011001010110010110010110011001010110010110011001010110010110010110010110011001)
ray_in 2000 .(010110010110010110011001010110010110010110011001010110010110010110011001010110010110010110011001010110010110011001010110)
text 53 -1.1152327443471231e+00 2.5276283972645397e-01 1/4
text 53 -1.1136201098499858e+00 2.5201617701965662e-01 1/5
text 53 -1.1152327443471231e+00 2.5276283972645397e-01 1/4
text 53 -1.1138472738947567e+00 2.5348331923684125e-01 24
Code
/*------------ git --------------------https://gitlab.com/adammajewski/c-string-replaceingcd existing_foldergit initgit remote add origin git@gitlab.com:adammajewski/c-string-replace.gitgit add .git commitgit push -u origin master-------------- asprintf --------------------------------------Using asprintf instead of sprintf or snprintf by jameshttp://www.stev.org/post/2012/02/10/Using-saprintf-instead-of-sprintf-or-snprintf.aspxhttp://ubuntuforums.org/showthread.php?t=279801gcc c.c -D_GNU_SOURCE -Wall // without #define _GNU_SOURCEgcc c.c -Wall----------- run ----------------------./a.out*/#define _GNU_SOURCE // asprintf#include<stdio.h>#include<stdlib.h>#include<string.h> // strlenintmain(){// output = theta+(p/q, r/s) or theta-(p/q, r/s)char*sOut="";// in plaint text formatchar*sOutf="";// formatted for wikipedia math formula // inputchar*sIn="00000000000000010";// rs+ or rs-// strings which will replace 0 and 1 digit in the input // length(sR0) = length(sR1)char*sR0="11101";// pq-char*sR1="11110";// pq+intiMax;// length of the input stringinti;iMax=(int)strlen(sIn);for(i=0;i<iMax;i++){// printf("i = %d, sIn[i] = %c = %d\n", i, sIn[i], sIn[i] - '0');// create sOut by replaceing digit (0 or 1) from aIn by a block of digits : sR0 or sR1if(((int)sIn[i]-'0')==0)// http://stackoverflow.com/questions/868496/how-to-convert-char-to-integer-in-c{asprintf(&sOut,"%s%s",sOut,sR0);asprintf(&sOutf,"%s\\ {\\color{Blue}%s}",sOutf,sR0);}else// if sIn[i]==1 {asprintf(&sOut,"%s%s",sOut,sR1);asprintf(&sOutf,"%s\\ {\\color{Red}%s}",sOutf,sR1);}}printf("input string = sIn = 0.(%s)\n",sIn);printf("Input Length = %d\n\n",iMax);printf("replace string for digit 0 = sR0 = 0.(%s)\n",sR0);printf("Length of sR0 = %d\n\n",(int)strlen(sR0));printf("replace string for digit 1 = sR1 = 0.(%s)\n",sR1);printf("Length of sR1 = %d\n",(int)strlen(sR1));printf("output string in plain form sOut = 0.(%s)\n",sOut);printf("Output Length = %d\n\n",(int)strlen(sOut));printf("output string in wikipedia math formula form = sOutf = \n 0.(%s)\n",sOutf);printf("sR0 displayed as a blue and sR1 as a red font\n");free(sOut);free(sOutf);return0;}
Output:
input string = sIn = 0.(00000000000000010)
Input Length = 17
replace string for digit 0 = sR0 = 0.(11101)
Length of sR0 = 5
replace string for digit 1 = sR1 = 0.(11110)
Length of sR1 = 5
output string in plain form sOut = 0.(1110111101111011110111101111011110111101111011110111101111011110111101111011111011101)
Output Length = 85
output string in wikipedia math formula form = sOutf =
0.(\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Blue}11101}\ {\color{Red}11110}\ {\color{Blue}11101})
sR0 displayed as a blue and sR1 as a red font