element90
|
|
« on: February 17, 2014, 11:31:51 AM » |
|
Mandelbrot formulae with the general formula z = z^n + c where n is an integer >= 2 only have one critical point. If extra z terms are added the number of critical points increases. For example: z = z^3 - z + c f'(z) = 3z^2 - 1 + c = 0 z^2 = 1/3 There are two critical points one at +sqrt(1/3) and one at -sqrt(1/3). There number of critical points are generally equal to one less than the high power in the formula, so for a formula containing z^5 there are 4 critical points, sometimes the derivative of the fractal formula can be factored out such that a power z multiples the rest of the derivative e.g. z = z^5 + z^4 + c f'(z) = 5z^4 + 4z^3 = 0 z^3(5z + 4) = 0 There are only two critical points in this case, 0 and -0.8. There two ways of dealing with multiple critical points, one it to produce a picture for each critical point and the other is to merge all the pictures together. I'm currently developing new software called Neptune and Triton which are based based on Saturn and Titan to produce these multiple critical point fractals. The core of the programs is complete and I have some pictures produced by Neptune and expanded to much higher resolutions by Triton. https://copy.com/Iaya1OXIjw8shttps://copy.com/0kW40N0D0ENHhttps://copy.com/uAZcnIz7Z2mhhttps://copy.com/GBYGzufccgMaAll the pictures above are for z = z^4 + z^3 + c f'(z) = 4z^3 + 3z^2 = 0 z^2(4z + 3) = 0 which has two critical points at 0 and -0.75.
|
|
« Last Edit: May 26, 2014, 01:06:56 PM by element90, Reason: Replaced file links. »
|
Logged
|
|
|
|
Pauldelbrot
|
|
« Reply #1 on: February 17, 2014, 07:33:01 PM » |
|
I'm currently developing new software called Neptune and Triton which are based based on Saturn and Titan to produce these multiple critical point fractals. The core of the programs is complete and I have some pictures produced by Neptune and expanded to much higher resolutions by Triton.
<Quoted Image Removed> <Quoted Image Removed> <Quoted Image Removed> <Quoted Image Removed>
All the pictures above are for What pictures? There's just a few blank lines there.
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #2 on: February 17, 2014, 07:55:22 PM » |
|
Adblock Plus (for firefox) interferes the display for pictures hosted on Ubuntu One. I don't why. It is possible that other plugins may also prevent display of pictures.
Can anyone recommend an alternative host for pictures?
|
|
|
Logged
|
|
|
|
kram1032
|
|
« Reply #3 on: February 17, 2014, 08:38:06 PM » |
|
imgur.com is a good one.
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #4 on: February 21, 2014, 11:05:31 AM » |
|
https://copy.com/y7JPxQSxzMwoFormula z = z^4 + z^3 + z^2 + c f'(z) = 4z^3 + 3z^2 + 2z = 0 z(4z^2 + 3z + 2) = 0 which gives critical points at 0, -0.375 + 0.599478940414089942699679i and -0.375 - 0.599478940414089942699679i. Finding critical points for formula when the derivative formula boils down to factors of a power of z and a quadratic or a power of z and a number it is easy to deal with from a programming perspective. Which is why so far Neptune's formulae have been all of that sort with parameters multiplied to each term, when there are more factors to deal with the Newton-Raphson method can be used to find the roots but I don't yet know how to reliably choose the starting points to find all the roots. The following formulae: z = z^4 + z^3 + z^2 + z + c z = z^5 + z^4 + z^3 + z^2 + z + c currently have no parameters and their critical points are predefined and not determined at run time.
|
|
« Last Edit: May 26, 2014, 01:25:33 PM by element90, Reason: Replace file links. »
|
Logged
|
|
|
|
kram1032
|
|
« Reply #5 on: February 21, 2014, 12:31:48 PM » |
|
did you compress the image so much or was that the forum? :-/ nice but horribly artifacted. A lot of the detail is blurred out.
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #6 on: February 21, 2014, 02:35:55 PM » |
|
did you compress the image so much or was that the forum? :-/ nice but horribly artifacted. A lot of the detail is blurred out. I always produce high resolution pictures at 12000x8000 or 12000x12000 and scale them to 1200x8000 and 1000x1000 using GIMP without problems before posting them here or on my blog. I don't see any "horrible artifacts. The only change is the move from Ubuntu One to Photobucket. I was going to put a link to the same picture hosted on Ubuntu One but creation of folders and upload of files is current unavailable. Here is an other Photobucket hosted file: https://copy.com/Gu4Rw0hH9gnewhich looks fine to me (via preview).
|
|
« Last Edit: May 26, 2014, 01:36:40 PM by element90, Reason: Replaced file link. »
|
Logged
|
|
|
|
jdebord
|
|
« Reply #7 on: February 21, 2014, 03:42:23 PM » |
|
when there are more factors to deal with the Newton-Raphson method can be used to find the roots but I don't yet know how to reliably choose the starting points to find all the roots.
For polynomials up to degree 4 there are formulas to compute the roots. For degree > 4 the roots can be obtained from the eigenvalues of the companion matrix. You will find examples in my libraries: - FBMath for FreeBasic: http://sourceforge.net/projects/fbmath- DMath for Delphi / FreePascal: http://sourceforge.net/projects/dmathAnother method is to compute the polynomial from its critical points. See for instance Ingvar Kullberg's site: http://klippan.seths.se/fractals/articles/28.pdf
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #8 on: February 21, 2014, 06:02:25 PM » |
|
Thanks I'll have a look. I think I've got a simple reliable method for finding the roots of a general polynomial using Newton-Raphson, ensuring that the starting value is never a real number otherwise complex roots can never be found.
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #9 on: February 21, 2014, 07:17:39 PM » |
|
I think I've got a simple reliable method for finding the roots of a general polynomial using Newton-Raphson, ensuring that the starting value is never a real number otherwise complex roots can never be found. After testing the code, I find that it often does not find all the roots and in one case it just found the same root four times (I was expecting 4 roots). The problem is determining the initial guesses for the roots, I used equally spaced values on the unit circle. I've since dug out an old book "Numerical Recipes in Pascal" and the section on polynomial root finding shows that it is much more complicated than I'd thought. I've also found statements that Newton-Raphson has some serious drawbacks regarding finding roots. Ideally an existing C++ library for finding roots of a general polynomials would ave me a lot of time. Failing that I'll have a go at building the DMath on Linux, I'm in the process of downloading Lazarus.
|
|
|
Logged
|
|
|
|
jdebord
|
|
« Reply #10 on: February 22, 2014, 09:31:54 AM » |
|
The latest edition of "Numerical Recipes" is in C++ You can access a limited number of pages of the book for free at: http://apps.nrbook.com/empanel/index.html#Laguerre's method (suitable for polynomials with complex coef.) is decribed at page 466 sq. The eigenvalue method is described at p. 469 but the source code is not complete. The complement is at http://www.nr.com/webnotes/nr3web17.pdf
|
|
|
Logged
|
|
|
|
element90
|
|
« Reply #11 on: February 22, 2014, 01:01:45 PM » |
|
I've looked at the laguer routine on page 466 and I think there's a typo in it: dx = MAX(abp, abm) > 0.0 ? Doub(m)/gb : polar(1*abx,Doub(iter)); I don't think it should be 1*abx as the first parameter of polar. I checked with the Pascal laguer routine in my edition and it doesn't have any code involving the use of polar, there's also no code for breaking any limit cycle.
|
|
|
Logged
|
|
|
|
Kalles Fraktaler
|
|
« Reply #12 on: February 22, 2014, 04:46:18 PM » |
|
Very nice indeed. Unfortunately perturbation seems only work on second degree functions
|
|
|
Logged
|
|
|
|
Fractal Ken
Fractal Lover
Posts: 246
Proud to be 2D
|
|
« Reply #13 on: February 22, 2014, 10:27:59 PM » |
|
I always produce high resolution pictures at 12000x8000 or 12000x12000 and scale them to 1200x8000 and 1000x1000 using GIMP without problems before posting them here or on my blog. I don't see any "horrible artifacts.
The only change is the move from Ubuntu One to Photobucket. I was going to put a link to the same picture hosted on Ubuntu One but creation of folders and upload of files is current unavailable.
Here is an other Photobucket hosted file:
<Quoted Image Removed>
which looks fine to me (via preview).
Sometimes Photobucket compresses JPEG images. It doesn't happen when you first upload, but rather days or weeks later. I suspect the compression is almost unnoticeable on photographs, but fractals are a different matter. PNGs seem to remain untouched, so that may be a better format when using Photobucket.
|
|
|
Logged
|
Fortran will rise again
|
|
|
xenodreambuie
|
|
« Reply #14 on: February 23, 2014, 08:35:53 AM » |
|
I've looked at the laguer routine on page 466 and I think there's a typo in it:
dx = MAX(abp, abm) > 0.0 ? Doub(m)/gb : polar(1*abx,Doub(iter));
I don't think it should be 1*abx as the first parameter of polar. I checked with the Pascal laguer routine in my edition and it doesn't have any code involving the use of polar, there's also no code for breaking any limit cycle.
The 3rd edition has it as 1+abx. I would consider this method but I need functions other than just polynomials. I'm using Newton-Raphson now and have already run into the typical problems with it, such as non-convergence.
|
|
|
Logged
|
|
|
|
|