POV-Ray : Newsgroups : povray.general : Double? Reasons for pixelation in mandelbrot : Re: Double? Reasons for pixelation in mandelbrot Server Time
8 Aug 2024 14:21:08 EDT (-0400)
  Re: Double? Reasons for pixelation in mandelbrot  
From: Warp
Date: 11 Dec 2000 10:10:32
Message: <3a34ee68@news.povray.org>
Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
: When I zoomed in on the Mandelbrot pattern with a camera 10 units away
: from the pattern and an angle of 10E-12, I start to see pixelation in
: the pattern.  I assume I've hit some kind of wall in the precision the
: Mandel algorithm, povray itself, C itself, or my CPU.

  Floating point numbers have limited accuracy. A camera angle of 10E-12
starts sounding like it really is reaching the limits of the floating
point numbers.
  It's a hardware thing. There's nothing that can be done about it.

: One of the things this non-programmer loves about pov is that I don't
: have to study 12 variable types--I put down gagging the Java and C books
: that start with a couple of chapters on this subject .   However, is
: there a way to get more precision, especially inside the Mandelbrot
: pattern itself?

  Not in povray scripting language.
  If you want more precision, you'll have to use bigger floating point
numbers (just like Fracting does). It is, however, extremely slow to do
this (as you can check with Fractint), so the benefits of doing this are
dubious. (It's slow because you don't have hardware support for bigger
numbers and thus you have to handle them with software, which makes it
very slow...)
  The only way of getting more accuracy would probably be compiling
povray in a system which supports larger numbers in hardware (eg. 128 bit
floating point numbers or whatever). There aren't many out there.
  In a PC you'll probably get a bit larger accuracy if you define the DBL
type in the povray source code as 'long double' (which in a PC with most
compilers is a 80-bit floating point number) and recompile. I doubt,
however, that you'll get much more accuracy (but your memory usage will
probably double).

: The question is, is there any
: way to insert another equation into pov and have it compute this
: iterations-till-explosion?

  Not currently.
  I have made a patch (found in MegaPov) for other fractal types (mandel3,
mandel4, julia, julia3, julia4, magent1m, magnet1j, magnet2m magnet2j for
instance), but that's all.
  If you want to play with other functions, you'll probably have to modify
the source code itself and recompile. This, of course, is more trouble than
it's worth, usually.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.