• December 03, 2021, 08:19:34 AM

Recent Posts

Pages: [1] 2 3 ... 10
1
Noob's Corner / Re: The constant in f(z) = z^2 + c
« Last post by DanKje on Today at 07:59:06 AM »
Well, I think I found the issue and I must reiterate my first statement here, that I’m just a babe in the MB woods. It is also apparent that I am behind the times in terms of modern computing. I fear my level of knowledge may not lie within the scope of this forum.
 
The way q array was being loaded did invert the y axis. However, by assuming the book was right and by incorrectly thinking that I had to move the origin from Java’s upper left to the traditional lower left, I inverted the y-axis a second time. Both I and the book (as it applied to my code) were wrong, the errors canceled each other out, and everything seemed fine. Except for that q array, which always bothered me. At least now I know why, and my code is in better shape.

Thanks again for your suggestions, I will pursue them.
2
Image Threads / Re: Other Polynomial and Rational Maps
« Last post by pauldelbrot on Today at 03:53:14 AM »
Postmodern Poster

A supernova parameter space image with vivid colors in the basins of 0 and infinity. Black = the studied critical point goes to neither.
3
Forum Help And Support / Re: Site extremely slow tonight
« Last post by pauldelbrot on Today at 03:38:24 AM »
It lasted several hours. I don't know how long it might already have been going on before I posted (or why that post got duplicated). Sorry, can't tell you any more than that.
4
Forum Help And Support / Re: Site extremely slow tonight
« Last post by 3DickUlus on Today at 02:04:39 AM »
Thanks for that @xenodreambuie  :thumbs:

Current status: "Page created in 0.065 seconds with 17 queries." pretty fast so whatever it was has cleared up. From this end it's impossible to tell what might be going on regarding other hostnames on our shared IP and our provider doesn't notify us unless it's a major event.

@pauldelbrot if you can clarify the duration of the slowdown ie:start time and end time, it might help with my inquiries when talking to our provider, right now I didn't see a slowdown and have nothing in the logs to verify it so I won't be speaking to our provider at this time.

My thanks to all of you for the input.
5
Image Threads / The magic of symmetry transformations (Re: Terra Newtonia)
« Last post by gannjondal on Yesterday at 10:33:35 PM »
Great thread and lovely pieces , thanks gannjondal

Thank you @timemit !   :))



The magic of symmetry transformations:

I assume here in the forums are some people with a more puristic taste in the forums.
Therefore I want to share this tiny almost hyperbolic tiling also in this thread (I had it in dA as well).

Also:  Maybe the picture illustrates a point some more mathematically thinking people may think about more in depth:
I assume that it's kind of obvious that the symmetries introduced by mb3d's _PolyFold-sym (and similar formulas) can induce simple geometrical structures into a fractal picture.
Nevertheless I don't really know yet how to find a concrete structure, respective how to estimate the structures I can expect (rather than that the number of sections n tend to introduce n-gons, and cuts of one basic structure can result in another type of basic structure).

Thus I stumbled in the last months again and again over such structures when playing with _PolyFold-sym + 3D Newton + some generic transform -
There was almost every known type of figures:  Hexagons, triangles, squares, Sierpinski triangles, Menger-like structures, stars, spirals, trees, hyperbolic tilings, and mixtures of all of them .
I will post more...
Hence with this combo one don't need everything else to get many classics. -
The only drawback is that the calculation can become slow, at least in MB3D (I may try in other programms, too).

Program used:  Mandelbulb3D v199-34
Formulas:  _PolyFold-sym, JIT_gnj_RealPowNewtCS_3b, _Transform
Params, and formulas are attached (m3d1-1882a-072d.zip)

But you need some patience - it's slow. For sure no optimized code  :tease:
6
Forum Help And Support / Re: Site extremely slow tonight
« Last post by xenodreambuie on Yesterday at 08:21:52 PM »
...is that the page creation time from the bottom of the page as calculated on the server or an estimate based on observation?


That is the page creation time at the bottom of the page. I checked it because I switch to other tabs if a page takes too long, and go back when it's loaded or failed. Pauldelbrot had already posted and from the time on his posts, the problem lasted for a few hours rather than minutes.
7
Noob's Corner / Re: The constant in f(z) = z^2 + c
« Last post by marcm200 on Yesterday at 02:31:31 PM »
So if pArray starts with XMin (as I would expect), why doesn't qArray start with YMin?
That's purely arbitrary. The pArray depicts the screen from left (min) to right (max), the qArray from max down to min (its definition is qArray[row-1] - deltaQ. You could as well start with min and then use the same code line as for pArray, i.e. +deltaQ. That would flip the set on the x-axis.

The reason might just be that some software starts an image at 0,0 at the lower left corner, for some (0,0) is the upper left.

Note, the use of an array to store the seed values is quite costly in terms of memory. If you compute a large Mset, you quickly need gigabytes. Here I would recommend not storing the values and rather compute them over and over, as it's only 2 muls and 2 adds, and for nested loops, say outer loop col, inner loop row, it's only the inner loop's constant value (p or q) that needs to be computed repeatedly. And for nowadays' computers a few million double multiplications is nothing, especially not when comparing to the billions of operations inside the while-iteration loop.

That was different in the 80s though as lycium mentioned.

8
Noob's Corner / Re: The constant in f(z) = z^2 + c
« Last post by DanKje on Yesterday at 09:05:16 AM »
How do you mean different? The only minor detail I can spot is the difference is sign + vs - on deltaQ. This just flips the Y direction, that's all.

I mean pArray[0] = mbRegion.getXMin();
but qArray[0] = mbRegion.getYMax();

So if pArray starts with XMin (as I would expect), why doesn't qArray start with YMin?


Thank you @lycium, your suggestions sound exciting and I will try to learn from them.  Much has changed since I worked in the industry.
9
Noob's Corner / Re: The constant in f(z) = z^2 + c
« Last post by lycium on Yesterday at 08:37:24 AM »
Did a quick google of that book and yep, it's from the 80s. I sincerely think learning from this book is a bad idea and will ingrain a bunch of bad habits.

About your source snippet, a few things spring to mind:

1. The style of coding where you try to declare as few variables as possible and reuse them as much as possible is super, super bad. Declaring new variables doesn't equate to using more storage or slower code, and in fact you usually get faster code this way, besides not driving yourself nuts with the spaghetti code ("is this the new x value or the old one?"). Unless you truly need to modify state, you should be using const variables basically everywhere. Even though I've been programming basically my whole life and the inner loop is 5 lines long, I can't easily tell if it's correct because of the reuse of the x and y variables.

2. CPUs have been getting faster faster than memory has been getting faster, so a lot of the old ways of precomputing stuff not only don't help, but usually make things worse / slower / more buggy (more state to keep track of etc). Basically, those arrays need to go.

3. The way those arrays are computed, incrementally based on the previous value in the array, is numerically gross (values later in the array are much less accurate than ones in the beginning, due to cumulative roundoff).

4. All this stateful stuff prevents you from putting a single line above the inner loops to make it parallel, which is basically the most important thing you can do for performance these days.

In summary, since Mandelbrot/Julia rendering is so trivial, just nuke all that code and do it again in a nice functional programming style: compute everything needed on the spot in the inner loops, don't use any extra buffers etc, make as many variables const as possible, and then stick a "#pragma omp parallel for" at the top and watch it fly.

Also, if you'd like to chat about fractal coding stuff feel free to join our great community on Discord: https://discord.gg/V2QnCaBJdx
10
Noob's Corner / Re: The constant in f(z) = z^2 + c
« Last post by youhn on Yesterday at 08:37:14 AM »
How do you mean different? The only minor detail I can spot is the difference is sign + vs - on deltaQ. This just flips the Y direction, that's all.
Pages: [1] 2 3 ... 10