Click covers for info. Copyright (C) Rudy Rucker 2021.


Author Archive

In Search of the Mandelbulb

Tuesday, September 15th, 2009

This post is an update about a project I’ve been working on for twenty years. I recently did some work on it with Mathematica, and I’ve posted my latest version of my work both as a Mandelbulb 7 Mathematica notebook, and as a Mandelbulb 7 PDF File. I post these files not so much because I’m finished, but rather because I’m sick of working on it, and I’d like to share the gain and the pain. This post presents most of the material.

The Mandelbrot set M is defined in terms of a plane map mandelmap[z,c] which takes z into z*z + c. We add plane points by adding their Cartesian components—this is easy. Multiplying plane points (in particular computing z times z) is done by pretending the plane points represent complex numbers. A problem in defining a 3D Mandelbrot set is that there is no good 3D analogue of complex numbers, and therefore there’s no obvious best way to “square” a 3D point (x, y, z).


[Bozo the Mandelbrot set!]

Various other ideas have been tried for finding the platonic 3D bulb, such as using quaternions. The quaternion approach gives taffy-like structures lacking the warty smooth quality we seek. Daniel White discusses the quest and some of the approaches in his web page about his search for the Mandelbulb.

What do we want? A “Mandelbulb,” a root-like object that’ s like a big sphere with a dimple in the bottom and with bulbs on it, and further warts on the bulbs. I wrote about this object in my 1987 science-fiction short story “As Above, So Below,” which I’ve just placed online for reference. [Note that this story is not to be confused with my novel of the same name.]

The Cubic Connectedness Map

I’ll mention here as an aside a completely different approach to looking for a 3D Mandelbrot set. The idea is to take a 3D cross section of a 4D fractal called the Cubic Connectedness Map, which was first investigated by Adrian Douady, John Hubbard and John Milnor.

In a nutshell, if k is a complex number, we define Mk to be the set of complex numbers c such that both k and -k, when plugged in for z, lead to a finitely large sequence of iterates in the map z = z^3 – 3*k*z + c. The set of all Mk in k-c space forms the four-dimensional Cubic Connectedness map or CCM.

I created some software for finding 2D cross-sections of the Cubic Connectedness map in the Autodesk CHAOS program, see my remarks at https://www.rudyrucker.com/oldhomepage/cubic_mandel.htm Note that you can download the Windows CHAOS program here as well.

I think I got the idea for the CCM fractal from the technical papers: Adrian Douady and John Hubbard, “On the Dynamics of Polynomial-like Mappings Bodil Branner and John Hubbard, The iteration of cubic polynomials Part I, and The iteration of cubic polynomials Part II: Patterns and parapatterns . Whew!

Another of the surprisingly few links on this rich topic is an article by the Swedish amateur mathematician Ingvar Kullberg, “The Cubic Tutorial,” concerning a plug-in that generates these images with the popular Ultra Fractal software.

Shown above is a detail of the Mk you get when k = -0.4055 -0.1135 i. The detail is the image is in the area centered on (0.12, 0.87) in the c plane. I call this guy “Fafnir” after the famous dragon.

By incrementing up and down through the k parameters, I had gotten the impression that by “stacking” some of these 2D slices while varying a single real-number parameter, such as the real part of k, we could get a nice 3D Mandelbulb, and I still can’t quite believe this isn’t true. But Paul Nylander recently rendered a run that looks discouraging.

I still have some slight hope that Paul’s rendering algorithm might be in some way not be quite what we want, or that, perhaps we need to do something other than simple stacking of 2D cross-sections in order to find the Mandelbulb within the CCM.

By the way, another great math-graphics hacker Billy Rood had a shot at this “stacking” algorithm, also without being able to find the Mandelbulb we’d hoped for.

A Spherical Coordinates Algorithm
A different way of thinking of complex number multiplication is to express (x,y) in polar coordinates (norm,theta). In these coordinates, multiplying two complex numbers means multiplying their norm-values and adding their thetas. This is readily generalized to traditional 3D spherical coordinates. A point can be represented by a triple (norm,theta,phi), where phi is the azimuth elevation above the xy plane, and theta is the polar theta of the point’s projection onto the xy plane. And then multiplying two of these numbers means multiplying their norm-values, adding their thetas, and adding their phis.

So squaring a complex number in the plane passes from (r, theta) to (r*r, 2 theta). And in spherical 3D coordinates, (r, theta, phi) becomes (r*r, 2 theta, 2 phi). This is an idea I spent a little time on in 1988, and recently I came back to it again. Details are in that Mathematica Mandelbulb Version 5 notebook of mine I mentioned at the start of this post. One encouraging thing about this approach is that we can be sure that the set we get will have a familiar Mandelbrot set as its intersections with both the xy plane and the xz plane…for in the xy plane, phi is identically zero; and in the zy plane, theta is identically zero.

Here’s a test run, done by crudely splitting space up into voxels and marking the spots that are inside the intended Mandelbulb.

In 2007, a similar approach was used by Daniel White, who posted about his search for a nice 3D Mandelbrot shape on his website mentioned above, and on the fractalforums site, a site where the elite meet to geek.

And White coined the world “Mandelbulb” for the image we seek.

As I mentioned, the gifted computerist Paul Nylander blogs about “hypercomplex fractals” at his Bugman site. Here he shows a rendered image of a White Mandelbulb that, as White already noted, doesn’t look like the smooth bulbous shape we’d dreamed of. It’s close, but it has the taffy/whipped-cream/spun-glass excrescences that we want to sand away.

What Next?

One problem might be that there’ s an imparity in how we get the two angles, theta and phi, in the spherical coordinates, in that theta is an “argument” angle in the xy plane and phi is an azimuth elevation above the xy plane. They aren’t really the same types of angles. So maybe it’ s not surprising that simply doubling those angles doesn’t produce a smooth bulbous 3 d Mandelbulb. It would be nice if the angles were more similar in nature.

To make this happen, we might define both angles as azimuths like phi…or define both angles as arguments like theta, I have a little more about this in that Mathematica notebook I mentioned…but these approaches don’t seem to work.

Another problem could be that, when we double two angles we’re in some sense moving the point too violently. Perhaps you should be multiplying the angles not by two, but by some weighting factors mul1 and mul2 which might depend on whether, say the point is closer to the xy plane or to the xz plane.

Meanwhile…we’re still waiting for the Mandelbulb to touch down!

The Eighth Power

Dan White, Paul Nylander, and David Makin have been investigating a different approach. We go with the spherical coordinates version of the 3D Mandelbrot set, but instead of squaring the number in each iteration, we raise it to, say, the eighth power, that is, we raise the radial length the eighth power and multiply the theta and phi angles by eight.


[8th power 3D Mandelbrot, rendered by Paul Nylander]

Other powers give nice results too—at present it seems as if the crud only shows up in the squaring version. Or perhaps the views we have of the higher powers aren’t sufficiently detailed to show some lurking crud. But latest zooms are looking good.


[Close-up of the 8th power 3D Mandelbrot, rendered by Daniel White.]

White comments: “In this gold pic, see how the sine wave style curves of the 2D mandelbrot translate to ‘egg carton’ type shapes, and also how the background in the gold pic is ‘smoother/flatter’ than the foreground. Often, parts of the 2D mandelbrot do exactly the same when the iteration level is low enough (the end of stalks round off).”

I have some more material about these ideas in my later post, “Breaking the Bank of Computation.

The History of Flurb

Friday, September 11th, 2009

I mentioned that I’ve been busy revising my autobiography, Nested Scrolls: The Memoir of a Cyberpunk Philosopher. As part of the revision, yesterday I wrote up a little history of my webzine Flurb. Here’s that passage, which is relevant as Flurb #8 went live this week—and is off to a strong start, with five thousand visits in the first two days.

By the way, you can click on any of the Flurb covers below to see the issue in question.

http://flurb.rudyrucker.com/1/index1.html
Issue #1, Fall, 2006
http://flurb.rudyrucker.com/2/index2.html
Issue #2, Winter, 2006
http://flurb.rudyrucker.com/3/index3.html
Issue #3, Spring, 2007

Issue #4, Fall, 2007

Issue #5, Spring, 2008

Issue #6, Fall, 2008

Issue #7, Spring, 2009

Issue #8, Fall, 2009

And here's the excerpt from Nested Scrolls...

Although I’m often able to sell my short stories to science-fiction magazines, it’s a fair amount of trouble for very little pay, and my stories do sometimes bounce back. In 2006 I hit upon the idea of starting my own online science fiction magazine.

I’d recently written a story with my old SF pal Paul Di Filippo, a tale called, “Elves of the Subdimensions.” I was in a rush to get the story published so that I could put it into an upcoming anthology of my stories—it’s generally considered wasteful to anthologize a story of yours that hasn’t already been published.

There wasn’t time to get “Elves of the Subdimensions” into one of the major print magazines, but when I tried one of the existing online SF webzines, they had the temerity to turn our story down. And that’s when I decided to start my own webzine. I mean—why should I court rejection from strangers who weren’t even going to pay me, just in the hopes that they might post my story online?


[Paul Di Filippo]

I’d started blogging by then, and I knew enough about the web to be quite sure that I could design and organize an online magazine. And given that my blog was getting quite a few hits by now, I’d be able to steer a respectably large audience to the zine. And my son Rudy was running an Internet Service Provider business called Monkeybrains, so I could get the server bandwidth for free.

What to call my webzine? The name jumped out at me from a line Paul had written in our joint story. The elves, who live in the subdimensions (whatever the heck that means), are discussing the oddities of our human world.

“The high-planers ingest sweet chunks of their worldstuff!”
“They use picture boxes to learn their hive mind’s mood!”
“Of flurbbing, they know not!”

Yes, my webzine’s title had to be Flurb. I liked the Mad Magazine sound of the word, and its vague feel of stumble-bum incompetence. If pressed, I might define “flurb” as a verb meaning “to carry out a complex, non-commercial artistic activity,” and “flurb” as a noun might mean “a gnarly artwork that’s incomprehensible to the average person.”

This definition even appears in the Urban Dictionary, although it’s competing with an alternate defintion of a “flurb” as an obsessive role-playing fan.

I started by asking my SF writer friends for contributions, and, as the issues went on, I branched out from there, first turning to writers that I knew less well, and then starting to read contributions sent in by strangers. You can see an overview of all the authors so far in Flurb‘s Cumulative Contents page.

I have a fairly clean design for the zine, running a colorful border down along the left side of each story. For the borders, I use patterns that I create with Capow, the cellular automata software that I’d developed on with my students at San Jose State—I use a fresh pattern for each story.

I also illustrate the stories with photographs that I’ve taken. I like photography a lot, it’s instant transrealism. When photography goes well, you’re appropriating something from your immediate surroundings and turning it into a loaded, fantastic image. I’ve been taking photos for fifty years by now, and I’m still excited about it.

For use in Flurb, I make a pool of my best recent photos, and then I choose the individual illustrations from the pool very quickly, almost at random, in adherence to the old Surrealist principle that the human mind is capable of seeing any two things at all as going well together.

I’ve come to enjoy the interactions with my Flurb authors, and I’ve just published issue #8. At this point, we get about sixty thousand visits per issue. And no money at all is involved. I don’t charge people to read Flurb, nor do we carry any advertising, nor do I pay my authors. I try to treat them well, they get a little publicity out of it, and they get to keep all rights. It’s a sideline for all of us.

I like to think that Flurb is a kind of clear-channel border-radio station for SF. As a personal matter, having Flurb as an outlet has freed me to write some stories that are so quirky and non-commercial that I wouldn’t have done them otherwise. For instance I wrote a story called “Tangiers Routines,” about William Burroughs having sex with—and being in some sense eaten by—the early computer scientist Alan Turing. A lot of people liked this gnarly tale. But I could never ever have published it for a large audience in any locale other than Flurb.

Editing an issue of Flurb twice a year is a slight distraction from my writing—but writers are always looking for distractions. Eventually you miss writing enough to want to do it again.

...end of excerpt from Nested Scrolls.

Flurb #8

Tuesday, September 8th, 2009

Flurb #8 is now live.

Flurb is a free online Webzine of Astonishing Tales, edited and published by Rudy twice a year. The previous issue of Flurb has gleaned sixty thousand unique visits so far.

Check us out at flurb.rudyrucker.com!
And return here to comment.

Many thanks to the wonderful writers who are helping to make Flurb possible.

Becoming a Writer

Saturday, September 5th, 2009

It’s starting to look like I’m going to find a publisher for my autobiography, currently titled, Nested Scrolls: The Memoir of a Cyberpunk Philosopher. I’ll give more details if and when I actually get an offer.

But with encouragement in the air, I’ve started doing a revision of Nested Scrolls, starting with reading through it and patching things that seemed either too roughly phrased or too flat. I’d been a little uneasy that the manuscript might be really weak—given that I hadn’t looked at it since last winter. I’d been almost scared to reread it. But it’s good, I dig it, there’s some great stuff.

I’m going to write a couple more chapters for Nested Scrolls now, bringing it up to the present, and maybe I’ll blog a little of that material later on. Right now, here’s some quotes from my chapter about when I was working as freelance writer in Lynchburg, Virginia, from 1982-1986.


[Today’s photos are shots I took around the house and yard yesterday and today.]

It was an exhilarating time, but stressful. Sometimes I’d feel like a piano with its wires tightened to the point where the surrounding frame is about to snap. Exquisitely overwrought. Bursting with beautiful music.

Every weekday I’d go into that office to write. Nonfiction, stories, essays, novels—I loved it all. At any given time, my current project would be like an immense sliding-blocks puzzle in my head. I’d carry it around inside me all day and all night, fiddling with it, moving things around, working to improve the patterns.


[Hungarian-style embroidered pillow, but with ants instead of flowers, by Isabel Rucker.]

Even when I’d spend time doing other things, the steady river would still be flowing. In my subconscious mind, I’d continue trying things out, thinking ahead, feeling for the best idea. And when I’d focus back in on the work, I’d find that the river had changed a little.

The characters in my fiction would get to be like imaginary friends—I’d laugh to myself about things they’d said or done, puzzle over what they might do to improve their situations, and interrogate them to learn more about their pasts.

The best was when the world around me would begin to merge with my writing. I’d see or hear things that were just what I needed for the next chapter of my book. Conversely, I’d write something and the next day something very similar would actually happen. I came to think of this as the world dancing with me. The intense mental discipline of writing was putting me into such a sensitive state that the soul of the world was beginning to play to me. I was hanging out with the Muse.

But with the Muse at my elbow, it wasn’t like I had to sit at my desk alone all the time. Sometimes, if one of our three kids had a cold and couldn’t go to school, I’d take them to my downtown office with me. I remember Rudy coming along one day. He brought some plastic toy soldiers that he liked—the green kind that come two hundred to a bag—and his battery-operated Japanese robot. He put the soldiers in a circle around the robot and turned on the robot, and it was like seeing an SF flick right there. Later we walked down to a fast-food restaurant for lunch—Hardee’s—I liked their fried chicken sandwich, although Rudy preferred their barbecue.

This particular Hardee’s was entertaining because there’d often be an odd man there wearing an orange knit cap—he’d be with his aged mother, and she’d always be trying to calm him down. The day that Rudy came with me, the guy in the orange hat was excited about his hot drink, and yelling about it.

“Cup of tea! Cup of tea! Cup of tea! Cup of tea!”

We loved it.


Rudy's Blog is powered by WordPress