Saturday, 26 March 2011

A Tilable Space-filling Fractal Sponge

A fractal, tileable sponge ("Alt.Fractals", p.61)

Okay, so this one looks like a "stretch" version of the conventional Menger Sponge, using a 4×4×4 grid instead of 3×3×3 .. and it is ... but it's a bit more than that. It's not just an arbitrary variation on a math standard.

It's a space-filling solid.

Space-filling solids are kinda rare. A cube will tile 3D space (obviously), but the other Platonic Solids won't, at least, not individually. A small group of other regular-ish solids have the property, like the truncated octahedron (which has a mix of square and hexagonal sides), and the rhombic dodecahedron (which has twelve identical diamond-shaped faces), but you won't normally find any mentions of space-filling solids that are also fractals.

Let's look at this shape further. It's constructed by taking a cube and dividing it into a 4×4×4 grid of smaller cubes, and deleting central 2×2 columns through the centre of each face (and then repeating, ad infinitum).
The 4×4×4 grid gives us 64 smaller cubes, so when we then delete four cubes per face, and eight from the centre, we're eliminating 6×4+8=32 cubes, out of the original 64. Every time we cut a new generation of holes, the remaining volume of the sponge halves.



Now, how it tiles.

For the "zeroth" generation, we just have a simple cube, which will (obviously) tile an infinite 3D space as an array of (infinity^3) individual pieces. Now cut the first generation of holes into each piece. The holes punch an intersecting series of aligned 2×2 tunnels through the array, and where the 1×1 edge-columns of adjacent cubes touch, they form an intersecting series of 2×2 beams. The networks of columns and tunnels have the same shape, and we've already established that they have the same volume, so after one generation, we can take our infinite array, make a copy of it, and fit the copy exactly into the holes of the original to make it totally solid.

If we then take our resulting solid "dual" array, and cut the second-generation holes into each individual piece, the volume again halves, the new holes in both arrays again line up, and again we have identical networks of solids and spaces. Again, we can fit an identical offset copy of the original exactly into the spaces.

This goes on forever. For one of these sponges with n generations of holes, you can tile space solidly with n^2 overlapping copies of the sponge coexisting in the same space, so for the third-generation sponge shown in the photograph, you can interleave eight of them together.

For the "perfect" version of the sponge, with an infinite number of holes, you can tile space solidly with a block assembled from (2^infinity) overlapping "same-size" copies existing in the same space. Strange, but true.


So, it's Challenge Time! Can anyone find any other fractal solids that will completely tile space at a fixed size?

Thursday, 24 February 2011

"Delta" wireframe

Here's a wireframe view of the basic "Delta" building block and its first iteration, which hopefully gives a better idea of how the thing is constructed ...

The Baird Delta


The "Delta" is is one of my new favoritest fractals. It was difficult to discover because it didin't have any obvious 3D siblings. It kinda seems to be a one-off. I haven't found any record of it being documented before, I used it on page 161 of the book (anf referred to it as just the "Delta" fractal), but it really needs a more distinctive and search-engine-friendly name than just "Delta" ... so now, unless anyone can find evidence of prior work, I think I'm going to start referring to it as the Baird Delta. :)

The shape's building-block is a solid with six identical triangular faces. You can then cut away material to produce three smaller rotated copies of the original (and repeat), or stack three of the rotated blocks together to produce a larger copy. Similar things happen with the Sierpinski Pyramid, but this is a leetle bit more subtle in that the component blocks (and the main shape) aren't quite regular polyhedra, they have to be twisted perpendicularly at each iteration, and the shape doesn't seem to have an obvious two-dimensional fractal counterpart. This makes the shape more difficult to visualise and more difficult to stumble across. The first time that you see the shape, it probably takes a bit of squinting before you realise that the three corner-pieces are identical smaller angled copies of the whole thing, rotated from the original baseline by 90 degrees, and rotated with respect to their siblings by 120 degrees.

As  you iterate, the area of each face gets progressively nibbled away until it's effectively a Koch Curve (although its a differently-angled version of the curve to the one that gets used for the Koch Snowflake).

All in all, a cool shape. 

Thursday, 17 February 2011

Sticky Fingers

An example of a 'viscous fingering' fractal
An example of "viscous fingering" between two glass plates
This is a “finger fractal” that I noticed on the pavement a few days ago, embedded in somebody's basement skylight window. The effect is sometimes known as “viscous fingering”, and it happens when you glue two plates of glass or perspex together, and then slowly prise the plates apart at one edge before the glue is properly set.

Air penetrates between the plates, but the thick surface of the glue clings to the glass and doesn't want to retract. Eventually a weak point in the wall “fails”, and the glue behind the tip of the inclusion finds it easier to retract than the glue at the sides, and a finger of air extends into the glue.

These sorts of inclusions tend not to meet up and join – in fact they seem to avoid each other and maintain a critical distance – so presumably a region of glue that has a lot of “edge” (anchored to the glass by curved meniscus surfaces on multiple sides) is more strongly connected to the glass, and more difficult to get rid of. Once an air finger penetrates within a certain radius of another inclusion or edge, it seems to be easier for further penetration to happen somewhere else, so when a finger starts getting too near to another edge, or the plate separattion within the wedge reaches a critical point, the penetrating finger's progress "stalls", and a new finger breaks through the perimeter somewhere else. What we end up with is a branching system of inclusions, and a branching network of remaining glue, interleaved. 

We don't usually think of glue as being a "clever" material, and yet here it is, unwittingly helping to create complex, self-regulating branching designs that look more like the results of some sort of encroaching lifeform's growth pattern.

Friday, 21 January 2011

A Hypercomplex 3D Mandelbrot


I've already blogged elsewhere about hypercomplex numbers and 3D Mandelbrot solids.


That post included a pic of the nicest 3D Mandelbrot that I've come across so far, and I included it in the book on page 118 (as Figure 23.1). Anyway, I thought it'd be nice to do a quick animation and put it on YouTube (although, when I say "quick", it took a spare laptop two weeks to generate the original 45 frames of video).

When it came time to upload it, I realised that YouTube user xlace had already found the same solid and uploaded an animation of it back in 2009!



I actually prefer xlace's version, but I suppose that it's nice to have two.

Tuesday, 18 January 2011

Book Launch

It's the 18th!

I didn't do much to commemorate the booklaunch, unfortunately. Was still recovering from piggy flu.

But I did put up a quick "flickthrough" video on YouTube (which is basically just me picking up the book and flicking through the pages). I'll have to try to retrofit a voiceover, once I find something that'll let me record audio.

Saturday, 25 December 2010

Happy Christmas!

"Teased Cube" fractal snowflake

This is the "Teased Cube" fractal solid, rendered in transparent coloured material, and backlit.

I thought it'd make a nice seasonal snowflake image for the blog. The version in the book (fig 3.17, p28) is clearer and easier to understand, but this image is prettier. And looks more like a snowflake.