File:Backward Iteration.svg

Summary

Description
English: Backward iteration of complex quadratic polynomial with proper chose of the preimage
Date
Source Own work
Author Adam majewski
 
This plot was created with Gnuplot by v.
Category:Valid SVG created with Gnuplot#Backward%20Iteration.svg

Compare


Summary

"In the dynamic plane, external rays can be drawn by backwards iteration. It is most effective for a periodic or preperiodic angle.

You must keep track of points on the finite collection of rays with angles

Say corresponds to a radius and the angle .

Then maps to .

This point, which was constructed before, has two preimages under .

The one that is closer to is the correct one. This criterion was proved by Thierry Bousch. The ray will look better when you introduce intermediate points." Wolf Jung

Maxima CAS src code

/* 

batch file for Maxima CAS 
It shows how to choose one from 2 preimages under complex quadratic polynomial

comments  are from Wolf Jung program Mandel 
http://www.mndynamics.com/indexp.html

*/

kill(all);
remvalue(all);

/* 
Say z_{l, j } corresponds to:
- a radius = R^{(1/2) ^l } 
-  the angle = t*(2^j) 
Then fc(z) maps z_{l,j}  to  z_{(l-1),(j+1)}.
Inverse function maps z_{l,j} to 
z_{(l+1),(j-1)}

 */
p(radius, angle, l,j):= radius^((1/2)^l) * %e^(%i*angle*(2^j)*2*%pi);

/* 
circle D={w:abs(w)=1 } where w=l(t,r) 
t is angle in turns ; 1 turn = 360 degree = 2*Pi radians 
*/
tMax:100;
/* exponential for of complex number with angle in turns */
GiveCirclePoint(t):=R*%e^(%i*t*2*%pi)$ /* gives point of unit circle for angle t in turns */
/*-------------- unit circle ------------*/
R:1;
circle_angles:makelist(t/tMax,t,0,tMax-1)$
CirclePoints:map(GiveCirclePoint,circle_angles)$

/* initial points on the rays t and 2*t */

R:20;

t:1/3; /* initial angle */
/* 
initial points on periodic rays 
" 
You must keep track of points on the finite collection of rays with angles t, 2t, 4t... 
Say z_{l, j } corresponds to:
- a radius = R^{(1/2) ^l } 
-  the angle = t*(2^j) 
"
*/
z00:p(R,t,0,0); /* on ray 1/3 */
z01:p(R,t,0,1); /* on ray 2*1/3=2/3 */

z1m1:p(R,t,1,-1); /* preimages of z00  */

pre1:[z1m1,-z1m1];

if (z1m1.z01>0) then z11:z1m1 else z11:-z1m1;

ray1:[z01,z11];

load(draw); /* Mario Rodriguez Riotorto   http://www.telefonica.net/web2/biomates/maxima/gpdraw/index.html */
draw2d(file_name = "iteration6",
	pic_width=1000, 
	pic_height= 1000,
     terminal  = 'svg,
	 
	
	
	title = "Backward iteration with proper chose of preimage ",
		user_preamble = "set angles degrees; set grid polar 30; set xtics 5; set mxtics 5; 
							set size square;set key out;set key top right",
		yrange = [-20,20],
		xrange = [-20,20],
		points_joined =true,
		color         = black,
	     point_type = filled_circle,
		 point_size    = 0.1,
	     points(map(realpart, CirclePoints),map(imagpart, CirclePoints)),
		 

                 points_joined =true,
		 point_size    = 0.9,
                 line_width = 3,
                 color = black,
                 key = "ray 2/3",
                 points(map(realpart,ray1),map(imagpart,ray1)),
		 color         = red,
                 point_size    = 1.0,
                  points_joined =false,
		 key = "z0 on ray 1/3",
		 label(["z00",realpart(z00)+2,imagpart(z00)+2]),
		 points([realpart(z00)],[imagpart(z00)]),
		 color         = green,
		 key = "z0 on ray 2/3",
		 label(["z01",realpart(z01)+2,imagpart(z01)-2]),
		 points([realpart(z01)],[imagpart(z01)]),
                 color         = blue,
		 key = "good preimage of z0 from ray 1/3",
		 points([realpart(z11)],[imagpart(z11)]),
		color         = black,
		 key = "bad preimage of z0 from ray 1/3",
		 points([realpart(-z11)],[imagpart(-z11)])	
		 
		);

Licensing

I, the copyright holder of this work, hereby publish it under the following licenses:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
Category:CC-BY-SA-3.0#Backward%20Iteration.svg
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.
Category:License migration redundant#Backward%20Iteration.svgCategory:GFDL#Backward%20Iteration.svg
You may select the license of your choice.
Category:Self-published work
 
This W3C-unspecified plot was created with Gnuplot.
Category:Unspec SVG created with Gnuplot#00070207Backward%20Iteration.svg Category:Complex quadratic map Category:Images with Maxima CAS source code Category:External rays
Category:CC-BY-SA-3.0 Category:Complex quadratic map Category:External rays Category:GFDL Category:Images with Maxima CAS source code Category:License migration redundant Category:Self-published work Category:Unspec SVG created with Gnuplot Category:Valid SVG created with Gnuplot