Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Fractals/Iterations in the complex plane/subwake

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

How to find the angles of external rays that land on the root point of any Mandelbrot set's component which is accessible from main cardioid ( M0) by a finite number of boundary crossing ?Shaun Bullett : Lectures on one-dimensional complex dynamics' (7th-10th November 2005), lecture 4, page 43, section 4.5 Key words Tuning external ray external angle in the binary number form Algorithm = Douady tuning "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 accessible from by a finite number of boundary crossing." ( Shaun Bullett ) Douady tuning Ordered orbits of the shift, square roots, and the devil's staircase by Shaun Bulletta and Pierrette Sentenac Examples by number of internal angles thumb|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). 1 angle 1/2 family 2 angles Angled internal address: describes a way: from center of period 1 hyberbolic component c=0 along internal ray for angle p/q toward root point ( p/q-bond ) along internal ray for angle r/s toward center ( nucleus) of s*q component of hyperbolic component where: 1, q,s are periods of hyperbolic components p/q, r/s are internal angles (1/2, 1/3) Angled internal address: First compute external angles for p/q = 1/2 and r/s=1/3 wakes : then in replace : digit 0 by block of length q from digit 1 by block of length q from Using this c program one gets: input string = sIn = 0.(001) Input Length = 3 replace string for digit 0 = sR0 = 0.(01) Length of sR0 = 2 replace string for digit 1 = sR1 = 0.(10) Length of sR1 = 2 output string in plain form sOut = 0.(010110) Output Length = 6 output string in wikipedia math formula form = sOutf = 0.(\ {\color{Blue}01}\ {\color{Blue}01}\ {\color{Red}10}) sR0 displayed as a blue and sR1 as a red font input string = sIn = 0.(010) Input Length = 3 replace string for digit 0 = sR0 = 0.(01) Length of sR0 = 2 replace string for digit 1 = sR1 = 0.(10) Length of sR1 = 2 output string in plain form sOut = 0.(011001) Output Length = 6 output string in wikipedia math formula form = sOutf = 0.(\ {\color{Blue}01}\ {\color{Red}10}\ {\color{Blue}01}) sR0 displayed as a blue and sR1 as a red font Result: Check it with Mandel by Wolf Jung The angle 22/63 or p010110 has preperiod = 0 and period = 6. The conjugate angle is 25/63 or p011001 . The kneading sequence is ABABA* and the internal address is 1-2-6 . The corresponding parameter rays land at the root of a satellite component of period 6. root c = -1.125000000000000 +0.216506350946110 i period = 10000 It bifurcates from period 2. Center = c = -1.138000666650965 +0.240332401262098 i period = 6 (1/3,1/25) Angled internal address: 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 Using this c program one gets: input string = sIn = 0.(0000000000000000000000001) Input Length = 25 replace string for digit 0 = sR0 = 0.(001) Length of sR0 = 3 replace string for digit 1 = sR1 = 0.(010) Length of sR1 = 3 output string in plain form sOut = 0.(001001001001001001001001001001001001001001001001001001001001001001001001010) Output Length = 75 output string in wikipedia math formula form = sOutf = 0.(\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Blue}001}\ {\color{Red}010}) so the result is: One can not check it using : program Mandel by Wolf Jung because period 75 exceeds the capacity of Mandel (version 5.14) 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" knowledgedoor calculator Binary to Decimal converter from xploringbinary because : ***ERROR: invalid characters in inputexploring binary : binary-converter Floating point decimal value can be computed ( xploringbinary calculator): 0.00100100100100100100100100100100100100100100100100100100100100100100100101001001001001001001001001001001001001001001001001001001001001001001001001010010010010010010010010010010010010010010010010010010010010010010010010010100100100100100100100100100100100100100100100100100100100100100100100100101000100100100100100100100100100100100100100100100100100100100100100100100101000100100100100100100100100100100100100100100100100100100100100100100100101000100100100100100100100100100100100100100100100100100100100100100100100101 = 0.14285714285714285714288739403383051072639529883365108929843563075583153775763414823768752002069960029227911125999721923628800596414804821292109009060239475901499810101181257672784693799296426200506484998155193353019205064595746824097168836030939675768822757699065155639759014879516081816465598503673993914613650270765449619097486325642647311484333459622592887076714167693559186268814330532241007104844902043043591808926221035405535394453260989380025345642382995407618853788922160842622677279223353252746164798736572265625 note that 1/7 = 0.(001) = 0.(142857)= 0.1428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428... so the difference is on the 23 decimal position Using mandelbrot-symbolics: ./m-binangle-to-rational ".(001001001001001001001001001001001001001001001001001001001001001001001001010)" 5396990266136737387082/37778931862957161709567 ./m-binangle-to-rational ".(001001001001001001001001001001001001001001001001001001001001001001001010001)" 5396990266136737387089/37778931862957161709567 Or using web interface with input : 1_1/3->3_1/25->75 (1/3,1/2) Angled internal address: 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 check it using program Mandel by Wolf Jung : 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) : then in replace : digit 0 by block of length q from digit 1 by block of length q from Result is : One can check it using program Mandel by Wolf Jung : 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 : then in replace : digit 0 by block of length q from digit 1 by block of length q from Result is : One can check it using program Mandel by Wolf Jung : 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 : then in replace : digit 0 by block of length q from digit 1 by block of length q from Result is : One can check it in program Mandel by Wolf Jung : 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/3,1/89) thumb|right|Part of parameter plane with external 5 rays landing on the Mandelbrot set. Angled internal address: (1/4, 1/5) 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 check it using program Mandel by Wolf Jung : 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) thumb|right|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 One can check it online using web interface by Claude .(1110111101111011110111101111011110111101111011110111101111011110111101111011110111110) .(1110111101111011110111101111011110111101111011110111101111011110111101111011111011101) 3 angles (1/2, 1/3, 1/4) We go thru the list of angles from right to left First compute (1/3,1/4) wake which will be used as a a new r/s wake : After that compute 1/2 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 Result is : in plain text format ( for copy ) : theta_minus(1/2, 1/3, 1/4) = 0.(010110010110010110011001) theta_plus( 1/2, 1/3, 1/4) = 0.(010110010110010110010110) One can check this wake in program Mandel by Wolf Jung using ray to point command ( Ctrl+e) : 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 Result is : One can check it using program Mandel by Wolf Jung : 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 adders 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 : First compute (1/3, 1/4, 1/5) wake which will be used as a a new r/s wake : After that compute 1/2 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 Result is ( to check !!!!) : theta_minus(1/2, 1/3, 1/4, 1/5) = 0.(010110010110010110011001010110010110010110011001010110010110010110011001010110010110010110011001010110010110011001010110) theta_plus(1/2, 1/3, 1/4, 1/5) = 0.(010110010110010110011001010110010110010110011001010110010110010110011001010110010110011001010110010110010110010110011001) One can check it visually using book program by Claude Heiland-Allen 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 multi angle period 776 1-(1/2)-> 2 -(1/3)-> 6 -(1/2)-> 12 -(1/3)-> 36 -(1/2)-> 72 -(2/3)-> 216 -(1/2)-> 432 -(1/3)-> 1296 -(1/2)-> 2592 -(2/3)-> 7776 -> main misiurewicz point -> right branch Try mandelbrot-webmandelbrot web period 20 Info from Mandelbrot-web by Claude External Angle ( wiggled external ray ) binary = .(00000000001111111111) decimal in Rational form = 1/1025 Period = 20 Kneading 1111111111000000000★ Internal Address : 1→11→12→13→14→15→16→17→18→19→20 Landings .00000000001111111111 1/1025 .00000000010000000000 1024/1048575 Angled internal addres: Info from program Mandel by Wolf Jung The angle 1023/1048575 or p00000000001111111111 has preperiod = 0 and period = 20. The conjugate angle is 1024/1048575 or p00000000010000000000 . The kneading sequence is AAAAAAAAAABBBBBBBBB* and the internal address is 1-11-12-13-14-15-16-17-18-19-20 . The corresponding parameter rays land at the root of a primitive component of period 20 with center c = 0.329617350093832 +0.042415693708911 i Code /* ------------ git -------------------- https://gitlab.com/adammajewski/c-string-replaceing cd existing_folder git init git remote add origin git@gitlab.com:adammajewski/c-string-replace.git git add . git commit git push -u origin master -------------- asprintf -------------------------------------- Using asprintf instead of sprintf or snprintf by james http://www.stev.org/post/2012/02/10/Using-saprintf-instead-of-sprintf-or-snprintf.aspx http://ubuntuforums.org/showthread.php?t=279801 gcc c.c -D_GNU_SOURCE -Wall // without #define _GNU_SOURCE gcc c.c -Wall ----------- run ---------------------- ./a.out */ #define _GNU_SOURCE // asprintf #include <stdio.h> #include <stdlib.h> #include <string.h> // strlen int main() { // output = theta+(p/q, r/s) or theta-(p/q, r/s) char *sOut = ""; // in plaint text format char *sOutf = ""; // formatted for wikipedia math formula // input char *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+ int iMax; // length of the input string int i; 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 sR1 if (((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); return 0; } 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 See also islands Mandelbrot symbolics in the browser by Claude Heiland-Allen automatically_finding_external_angles by Claude Heiland-Allen book program by Claude Heiland-Allen Trees of visible components in the Mandelbrot set by Virpi K a u k o - the tree structures of the sublimbs of the Mandelbrot set M, using internal addresses of hyperbolic components References