Logo by bib - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. April 25, 2024, 11:51:36 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Hi, I have some algorithms - and a program you might want to check out  (Read 2240 times)
Description: Hello
0 Members and 1 Guest are viewing this topic.
CS
Guest
« on: June 13, 2009, 05:28:12 PM »

Hello all,
I have been working with fractals for about a year now. It all started when I was writing a program that generated a few different types of mathematical image, which got me looking into fractals.
I’ve experimented a bit with different types of fractals, and think I’ve found a few modifications to existing fractal algorithms that could be interesting. One of these involves the Newton fractal algorithm, which I found a fun method to experiment with because it can be defined for any function you choose. With my modification, smaller images of the fractal are recursively generated at a smaller scale than the original.
Here’s an example:



This is the standard newton fractal for the equation x^9 – 1.



This is the modified version of the algorithm. The palette is slightly different, but you get the idea. Essentially, the main structure of the fractal repeats itself at each attractor, and the repeats are scaled down.

I’ve incorporated this algorithm, along with several others, in a fractal generator I’ve written called Kaleidoscope (http://sourceforge.net/projects/kal-fractal/). It also supports multiple layers, specific formulas for color values and some other goodies. It is free (open – source), and I hope you’ll check it out.
I can post an explanation of the algorithm I used if anyone’s interested. I also put a brief explanation in the documentation of Kaleidoscope.
Right now my main focus is improving Kaleidoscope, so I’d be really grateful for any comments/suggestions etc. Look forward to seeing you on the forum .
CS
Logged
cKleinhuis
Administrator
Fractal Senior
*******
Posts: 7044


formerly known as 'Trifox'


WWW
« Reply #1 on: June 15, 2009, 02:50:10 PM »

hello and welcome to the forum,

i think we are all interested in the method you used to generate this image, in fact i can see the resemblings of the original image, but i do not really get the method

cheers
 afro
Logged

---

divide and conquer - iterate and rule - chaos is No random!
CS
Guest
« Reply #2 on: June 15, 2009, 10:51:29 PM »

OK, the method is as follows:
For the basic newton fractal (the upper image in my first post), you first choose any function you like. I happened to use f(x) = x^9 – 1 for the images I generated. You have to then determine the derivative of the function, which I’ll write as f’(x). Now you take each pixel in the image and use its two coordinates, x and y, to create a complex number z.  You then iterate z using the formula z_{n+1} = z_n - f(z_n)/f'(z_n). The iteration is repeated until z seems to have converged or you’ve gone over the maximum number of iterations. At this point, you take the number of iterations and use it to determine a color (via a palette for instance), which you assign to the pixel.
This is the method I used to generate the upper image. Newton fractals are implemented in most fractal generators, but usually only for certain equations. With Kaleidoscope, the program I wrote, you can use any equation you want (usually what you’ll want to generate neat images is a complicated function with trigonometric and polynomial parts). The program takes care of the icky complex differentiation part, you just need to enter the equation.
This was all just for the regular Newton fractal, though, i.e. the upper image in my previous post. In order to generate the more complex lower image, an additional step is involved. After iterating the value z, you have to determine the value z_n – z_0 , which is the difference of z after the iteration and z before the iteration. You then use this as the starting value for a new iteration. After the second iteration is finished, you can determine z_n – z_0 again, and iterate it again, as many times as you like. You then have to take the total number of iterative steps from every iteration in order to determine a color for the pixel.
The result is that multiple secondary copies of the fractal are generated, in addition to the original. These are centered in the attractors ( http://en.wikipedia.org/wiki/Attractor) of the original fractal, which you can see really well in the images from the previous post (the 9 blue dots in the upper image are attractors).
I implemented this fractal as the “Hyper Newton” fractal type in Kaleidoscope.
I’ve figured out why the algorithm has exactly the effect it has, and put an explanation in the documentation for the Kaleidoscope program. I also included an implementation in pseudocode (and the program is open – source anyway, so you can find the implementation in Java if you really want to).
Wow, this has been a long post. See the Kaleidoscope doc for details, or feel free to use the program if you want to see more examples of the fractal.
CS
Logged
Nahee_Enterprises
World Renowned
Fractal Senior
******
Posts: 2250


use email to contact


nahee_enterprises Nahee.Enterprises NaheeEnterprise
WWW
« Reply #3 on: July 02, 2009, 01:32:25 AM »

    Hello all,    I have been working with fractals for about a year now.   It all started when I was writing a
    program that generated a few different types of mathematical image, which got me looking into fractals.
    I’ve experimented a bit with different types of fractals, and think I’ve found a few modifications to
    existing fractal algorithms that could be interesting.   One of these involves the Newton fractal algorithm,
    which I found a fun method to experiment with because it can be defined for any function you choose.
        ...........
    I’ve incorporated this algorithm, along with several others, in a fractal generator I’ve written called
    Kaleidoscope (http://sourceforge.net/projects/kal-fractal/).

Greetings, and Welcome to this particular Forum !!!     cheesy

Your modified version of the Newton fractal algorithm, along with the fractal repeating itself and scaling down, is very interesting.

Have just downloaded your program, and hope to have time this upcoming weekend to give a try.
 
« Last Edit: September 25, 2013, 11:15:28 AM by Nahee_Enterprises » Logged

Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Check this out Non-Fractal related Chit-Chat The Rev 1 1881 Last post April 07, 2011, 12:36:14 AM
by Ike1970
Can someone check these parameters? Mandelbulb 3d Lee Oliver 7 1778 Last post March 11, 2012, 12:34:02 AM
by Lee Oliver
Anyone ever implement the period 3 check as described by Stephenson? Programming saijanai 6 2022 Last post August 17, 2012, 03:39:24 PM
by Adam Majewski
check it Let's collaborate on something! sinpix 1 988 Last post October 10, 2012, 10:25:23 AM
by cKleinhuis
Check out MarkJayBeeFractal.com Fractal Website of the Month MarkJayBee 13 4464 Last post January 29, 2015, 10:12:32 PM
by Madman

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.172 seconds with 24 queries. (Pretty URLs adds 0.009s, 2q)