Logo by Pauldelbrot - Contribute your own Logo!
News: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. September 26, 2017, 11:41:54 PM


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 ... 4 5 [6]   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: Pertubation Theory Glitches Improvement  (Read 8694 times)
0 Members and 1 Guest are viewing this topic.
knighty
Fractal Iambus
***
Posts: 818


« Reply #75 on: December 20, 2016, 08:54:34 PM »

Hi,
The formula for glitch detection, unlike the one for series approximation error estimation, doesn't use interval arithmetics, only the derivative. the misterious precision parameter is not that misterious smiley. It depends only on the size of the pixels in the rendered window. It should be a fractions of that pixel size/radius. I have left the value of the fraction (relatively) undefined in order to let the user choose the level of accuracy she/he wants. For example, without antialiasing one can take fraction=1 but when using antialiasing (say N x N) fraction should be < 1/N.

That said, it doesn't take into account the (possible) accumulation of rounding errors. Therefore, it is safer to use a small value for the fraction. 1e-3 for example seems a resonable choice.
Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #76 on: December 20, 2016, 09:24:28 PM »

i guess by "precision parameter" i meant your "pmax," which is found in both your glitch formula and your SA error formula.  it seems to be a mysterious value which can usually be [quite a bit] less than the full mantissa precision, but how to predict what the perfect value is at any given time seems to be a mystery?

also, does your glitch formula need to be checked on every iteration like paul's glitch formula, or could it be done less frequently?
« Last Edit: December 21, 2016, 01:17:08 AM by quaz0r » Logged
knighty
Fractal Iambus
***
Posts: 818


« Reply #77 on: December 21, 2016, 02:10:54 PM »

Well, IMHO it is not pmax that is mysterious. The mysterious part comes from the unknown effects of rounding error accumulation (that are not taken into account). Maybe the way I wrote the code is a little bit misleading? At some point the glich inequality looks like this:

2-pmax * LHS < RHS * fraction

if we set: fraction = 2-k

we can rewrite the inequality this way:

2-(pmax-k) * LHS < RHS

in the code I've posted, I have set k to a too big value (maybe in order to make the blobs have the same size as with Pauldelbrot's formula  evil ).

I did some experiments with k=10 which, so far, give good results.

For both formulas, I gess it is not, strictly speaking, necessary to do the check at every iteration if one can predict when the iterated point comes close to the "cancellation area". This is because the ( catastrophic ) cancellation happens at some iterations if any.
I believe it is even possible to predict where the cancellations occur while computing reference point orbit and/or series approximation and so, by using... err... interval arithmetic  grin and root finding. But this is another story.
Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #78 on: December 21, 2016, 02:57:27 PM »

Quote from: knighty
I believe it is even possible to predict where the cancellations occur while computing reference point orbit and/or series approximation and so, by using... err... interval arithmetic   and root finding. But this is another story.

that sounds like an interesting story indeed  cheesy
Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #79 on: January 02, 2017, 09:20:26 PM »

ok i was going to try your glitch formula, though i am a bit confused about \delta'.  you gave the formula:

\delta'_{n+1} = 2\delta'_n(z_n + \delta_n) + 1

\delta is initialized from the SA, but i am not sure how \delta' is supposed to be initialized?

also conceptually im not sure how this \delta' relates to glitch detection.  it seems like it implies that glitching can happen under more circumstances than simple precision loss?  i was also trying to remember how your SA truncation error formulas progressed.  didnt you start out using SA' and then decide that something else should be used instead?  are you sure that \delta' is the right thing to use here?

edit:  is \delta' the same as the SA stuff claude came up with for initializing z' for doing DE?
« Last Edit: January 02, 2017, 10:13:57 PM by quaz0r » Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #80 on: January 06, 2017, 07:32:05 AM »

ok assuming the \delta' is what i think it is i implemented your glitch detection.  it seems like maybe it will work though currently i am not sure what \delta' becomes when switching to a new secondary reference under claude's glitch correction algorithm.

also i recall claude suggesting that calculating z' directly made more sense than using the perturbation formula, so that is how i implemented it.  since this glitch detection requires \delta' anyway it would be nice to be able to use it to calculate the value of the derivative at the end of iteration, unless it would be problematic for some reason.  if it were too problematic to use then that would make this glitch detection formula that much more costly..
Logged
knighty
Fractal Iambus
***
Posts: 818


« Reply #81 on: January 06, 2017, 09:27:22 PM »

Hi,

 delta' is exactly the same as z'. smiley
Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #82 on: January 07, 2017, 07:37:03 AM »

so are you saying that by |\delta'_{n+1}| you in fact meant |z'_{n+1}| ?  and if that is the case, then did you also mean |\delta_{n+1}| to be |z_{n+1}| ?  though here by z i mean the current point, not the reference z.  i wish we had clearer terminology for this.  i think whenever you guys write z you tend to mean the reference z, but then how are we supposed to refer to non-reference z's ?  z_{point-we-are-currently-calculating-not-the-reference} ?  it is further confused if you talk about non-perturbation formulas at the same time as perturbation formulas.   angry

looking at claude's old perturbation document, it appears that he gives this formula for \delta'

\delta'_{n+1} = 2(z'_n\delta_n + z_n\delta'_n + \delta_n\delta'_n)

whereas the formula you gave for \delta' is in fact the standard non-perturbation formula for z'_{as-in-the-derivative-of-the-current-point-we-are-calculating-not-the-derivative-of-the-reference-point}, though alongside that you gave the actual perturbation formula for \delta.  it seems perhaps something got confused here ?

also i noticed in the comments in the code you attached you say your glitch detection doesnt always work right.  shouldnt we expect it to work if you got the formulas right ?  so maybe they are not right..

i'll keep playing around with it but so far nothing i try seems to work..

actually one last thought about all of this:  when previously playing around with claude's glitch correction algorithm, i noticed it blows up spectacularly if any value more lax than the standard 10-3 is used with paul's glitch detection.  it seems claude's thing has requirements/conditions/pitfalls/whatever that are yet unknown or yet to be fully explained, and perhaps wont work nice with your glitch detection, or will need to have pmax tweaked just so..
Logged
Pages: 1 ... 4 5 [6]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Pertubation and 3rd degree Mandelbrot (new) Theories & Research « 1 2 » Kalles Fraktaler 21 974 Last post November 15, 2016, 05:07:03 PM
by Kalles Fraktaler
Help: Mandelbrot pertubation fails when zooming deeper than 1E1400 Programming CFJH 10 468 Last post January 08, 2014, 06:55:10 PM
by Kalles Fraktaler
Nasty glitches... Kalles Fraktaler Gallery PieMan597 1 314 Last post April 04, 2015, 01:56:14 PM
by Kalles Fraktaler
Glitches and crashes Mandel Machine CmdrKeen 13 1312 Last post August 04, 2015, 06:09:44 PM
by claude
minor gui glitches Bug Reporting taurus 2 141 Last post November 06, 2016, 09:33:06 PM
by taurus

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.973 seconds with 28 queries. (Pretty URLs adds 0.025s, 2q)