Title: Feature request: Specify seed for initial Z value Post by: stardust4ever on May 28, 2016, 11:49:56 PM Sorry if this has been discussed before, but concerning fractals with polynomial coeeficients, for instance the HPDZ buffalo:
Z1 = |Z0|^2 - |Z| + C where |Z| is defined as abs(Zr) + abs(Zi)*i It was brought up several times that polynomial formula can often have multiple critical points, defined by taking the derivative of the equation and solving for zero. For the HPDZ Buffalo, the critical points are (±0.5 + 0i) which should result in a solid fractal image with minis that do not disintegrate. Laser Blaster brought this up some time ago here in this post in the Kalles Fraktaler 2.7 thread. http://www.fractalforums.com/kalles-fraktaler/kalles-fraktaler-2-7/msg77526/#msg77526 (http://www.fractalforums.com/index.php?action=dlattach;topic=20033.0;attach=10479;image) On immediate observation of this fractal, it has similar shape to the zero reference starting point, but upon closer observation, one can see the presence of minibrots within the set, and an unbroken western needle that does not decay into cantor dust. So if possible, it would be nice to allow for setting the seed value of Z in software, or at least adding a "Fixed HPDZ Buffalo" formula with a correct seed value of Z0 = (±0.5 + 0i) Either option would allow fractal explorers to zoom into both variations of the HPDZ Buffalo fractal, since the fractal characteristics of the HPDZ Buffalo, and possibly others as well, are markedly changed by setting the seed value. Thanks and take care... :dink: Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 29, 2016, 08:46:05 PM I made some tests however I cannot find any centered pattern when using seed (0.5,0) or (-0.5,0)
Title: Re: Feature request: Specify seed for initial Z value Post by: xenodreambuie on May 30, 2016, 12:10:25 AM I agree with stardust4ever. Using correct critical points is necessary to get a correct Mandelbrot. For the purposes of art or curiosity one isn't limited to what is correct, but I think it preferable to at least include the correct results in the available choices where possible.
Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on May 30, 2016, 07:31:55 AM I agree as well, if there isn't the correct shapestacking does not mean the formula can't be interesting is some way. I thought the same when seeing f(x)=z^2+z+c.
Title: Re: Feature request: Specify seed for initial Z value Post by: stardust4ever on May 30, 2016, 11:56:59 AM I made some tests however I cannot find any centered pattern when using seed (0.5,0) or (-0.5,0) So it did not look anything like the above render in the OP? Curious.I agree as well, if there isn't the correct shapestacking does not mean the formula can't be interesting is some way. I thought the same when seeing f(x)=z^2+z+c. I think the critical points are necessary when using polynomial equations that contain first order terms, but as is the case with the HPDZ buffalo, even with a seed of zero you have an equation with highly unique properties. The plus Z variant seems like it might be interesting as well.The critical points are always going to be complex solutions to f'(Z)=0. For any formula without a first order term, one of these critical points will always be zero, though more may exist. Oftentimes you get a chaotic fractal as a result of not choosing critical points. The connected version of the HPDZ mini, if the screenshot provided by Lazer Blaster is accurate, the fractal has minibrots, a solid needle, and masts on the west mini with obvious fractal detail. Upon inspection, the west minibrot most closely resembles the perpendicular Buffalo fractal in shape. Title: Re: Feature request: Specify seed for initial Z value Post by: xenodreambuie on May 30, 2016, 12:37:20 PM ... if the screenshot provided by Lazer Blaster is accurate... FWIW, Jux automatically finds 0.5,0 as the critical point and gets the same shape as that. (-0.5,0 is only a solution for z^2+z+c.) Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 30, 2016, 02:45:40 PM I think this image is pretty close :)
Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 30, 2016, 02:46:33 PM For comparison, here is the same with seed=(0,0)
Title: Re: Feature request: Specify seed for initial Z value Post by: stardust4ever on May 30, 2016, 04:12:57 PM Yes, that's it! ;D
Notice that while both fractals look similar at first glance, there is a notable absence of minis in the zero seed version. Hence your "where's the minibrot?" zoom movie. I think both implementations of this formula should be included in the next version of KF. I would assume the use of non-zero seed value does not adversely impact perturbation calculations? Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 30, 2016, 06:31:28 PM I've uploaded an update, version 2.10.1
You can now specify seed values for all fractals :) Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on May 30, 2016, 11:40:11 PM Thanks for implementing this. It looks very interesting (just looking at the examples here). Ill have a look at it as soon as I'm home.
Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 30, 2016, 11:48:13 PM Thanks for implementing this. It looks very interesting (just looking at the examples here). Ill have a look at it as soon as I'm home. Thanks, unfortunately there is a precision issue when going beyond e30 already in the HPDZ formula with seed (0.5,0)Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on May 30, 2016, 11:50:08 PM Ok, that probably won't be a big deal. What about the others?
Title: Re: Feature request: Specify seed for initial Z value Post by: stardust4ever on May 31, 2016, 12:29:29 AM I've uploaded an update, version 2.10.1 Whoo-hooo!!! ;DYou can now specify seed values for all fractals :) :thumbsup1: Thanks, unfortunately there is a precision issue when going beyond e30 already in the HPDZ formula with seed (0.5,0) Could this be the result of using a float value for the seed? Perhaps it should use integer like the coordinate window. Number of digits should be unlimited. For instance, a seed of 1/3 would need at least a thousand "3"s at e1000. Ditto for irrational or arbitrary values, for instance setting the seed to the location of a deep zoomed mini. Number of digits should't be an issue with a value like 0.5 though.Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on May 31, 2016, 09:54:16 AM Could this be the result of using a float value for the seed? Perhaps it should use integer like the coordinate window. Number of digits should be unlimited. For instance, a seed of 1/3 would need at least a thousand "3"s at e1000. Ditto for irrational or arbitrary values, for instance setting the seed to the location of a deep zoomed mini. Number of digits should't be an issue with a value like 0.5 though. The seed float value is converted to arbitrary precision before the iterations begin.Code: CFixedFloat xr = 0, xi = 0; Code: CFixedFloat xr = g_SeedR, xi = g_SeedI; The problem is when zooming into a minibrot deeper than something like e30. The problem lies in the piece of code that is calculating the perturbation. Perhaps it is the double abs values that are causing this. a=delta real b=delta imag a2 = a*a b2 = b*b x=reference real y=reference imag Code: Dnr = (-2*b*y+2*a*x-b2+a2) - lb_abs_db(x,a) + a0; It is not possible to see if this would affect other formulas with seed, since using a seed value makes the minibrots disappear in all the other formulas. Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on June 02, 2016, 06:06:56 PM Seeds seem to reset if large integer seeds are used, is there a current limit on how precise the seeds can be?
Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on June 02, 2016, 10:04:23 PM the seeds are of double datatypes.
The dialog shows max 7 seven decimals, but you can specify a more precise value Max value is not useful if it is larger than 2. The AP library cannot have a too large value, since its puprose is to handle values less than 2 Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on June 02, 2016, 10:17:16 PM I have noticed values larger than two don't work. Im currently trying to prepare for a zoom I am planning to make. The zoom itself isn't any different but the final minibrot will be different. But for that I would need to use a seed value of 1.0E-100 or smaller which did not work. Would it be possible to specify the seeds in scientific notation?
Title: Re: Feature request: Specify seed for initial Z value Post by: Kalles Fraktaler on June 02, 2016, 11:15:29 PM I have noticed values larger than two don't work. Im currently trying to prepare for a zoom I am planning to make. The zoom itself isn't any different but the final minibrot will be different. But for that I would need to use a seed value of 1.0E-100 or smaller which did not work. Would it be possible to specify the seeds in scientific notation? Yes you should be able to enter "1.0E-100"But if you open the dialog again it will unfortunately only display 0, since I display only 7 digits. That's something that should be improved Title: Re: Feature request: Specify seed for initial Z value Post by: stardust4ever on June 03, 2016, 12:19:17 AM I'm just glad we have the option now. It's always nice... :dink:
Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on June 03, 2016, 07:44:02 AM Thank you.
Title: Re: Feature request: Specify seed for initial Z value Post by: TheRedshiftRider on June 03, 2016, 05:47:00 PM I managed to get it working by editing the save-file.
Title: Re: Feature request: Specify seed for initial Z value Post by: stardust4ever on June 04, 2016, 03:31:10 AM I managed to get it working by editing the save-file. I'm glad he made it where you could just edit the file in notepad. In my "Dense Tapestries" video (inspired by Kalles Fraktaler's "Engine Block") I needed to set the angle to .15014 degrees, because with a 5.5 million percent stretch (55 thousand pixel aspect ratio) it did not display enough digits in the dialog box or in the saved file, but stored them in memory. 0.1501 and 0.1502 were both markedly skewed. Editing the save file was tempting, but ultimately I didn't have to as the extra "4" at the end was easy enough to type.Perhaps for the HPDZ Buffalo, typing "0.5000000" followed by a wall of text worth of zeros up until the number of digits exceeds the precision needed, might fix the e30 bug. I have not tested this out yet. I noticed KF seems to always round down when calculating floats. You can tell in the numeric display in zoom movies, sometimes it reads for instance "3.9" instead of "4.0" when the final zoom depth was an exact power of 2 carried out to many digits. |