In your last podcast, you have talked about mapping a galaxy and that made me think about, how I would do it. I am interested, what you think of it...
So here is, what I thought of: First we going to need a central point and the three axis. These things are of course arbitrary, but because each galaxy has a central point and one side, where it is thinnest. At least the centre point and the x-Axis is well defined. Now we create a sphere with a radius of one unit length around the centre. This will be the basis for the rest of the mapping. We cut this sphere into 8 equal pieces along the planes, created by the axis. We get 8 pieces, that have a area of pi/6 volume units. The idea is, that we divide the entire universe into blocks with the same volume. So next we create a slightly bigger sphere, subtract the original sphere and divide it again in 8 pieces. Since these pieces will be bigger than the original pieces, because volume grows faster, than the radius, we divide each block into 4 pieces. These new pieces will be as big, as the original 8 pieces and have the volume of pi/6 volume units. And that way we continue: Always making a bigger sphere and dividing it up into more parts. The radius of the sphere at iteration x will be r(x)=((4^(x+1)-1)/3)^(1/3) and the numbers of pieces will be E(x)=8*4^x. If we look at the spherical shell we get a volume of 4/3*pi*(r(x)^3-r(x-1)^3) and one piece will have a volume of 4/(3*E(x))*pi*(r(x)^3-r(x-1)^3) = 4/(3*E(x))*pi*(4^(x)*3)/3) = (12*4^x*pi)/(9*8*4^x) = pi/6 so we can see, that it works.
You might ask: Why would we want to do this?
There are a couple of advantages:
1. If the volume is constant, there each piece will contain about the same number of object (assuming the Objects are distributed equally). It also means, that the pieces stay at a manageable size. 2. Each of the pieces can be identified by a number in base 4 and the information whether you are above or below the y/z plane. You start at the centre: a-21300 You can decode it quite easily: a: We are above the y/z plane. Now we start at the centre and pick the part with the number of the next digit. (It will always be 1 of 4 parts, that is why the name is in base 4),
This also means, that the distance to the centre of the galaxy can be directly encoded into the naming (r(log4(name))). I might have let my inner computer scientist a bit loose with all the addressing. But what do you think? I'm quite interested about your opinion.