I am trying to construct the Rauzy Fractal (http://en.wikipedia.org/wiki/Rauzy_fractal), I have a Tribonacci word generator and have the stairs constructed but I can't seem to get the projection onto a 2D plane correct.

On the 4th slide of this: http://kmwww.fjfi.cvut.cz/jn08/slides/Thuswaldner.pdf they depict a bounding cube, my assumption was that I would project each point (x,y,z) onto (x',y') along the line (xMax, yMax, zMax)->(0,0,0). But they mention a Contracting Plane what does this terminology mean? Are all points projected along the same line or each to their own?

For this I am using the unit cube orthogonal projection matrix shown on the wiki: http://en.wikipedia.org/wiki/Orthographic_projection with Ortho(-1, 1, -1, 1, 1, -1) being my cube and (x/xMax, y/yMax, z/zMax) being my normalised point to be projected. I think I've got this part completely wrong. The result would agree...

Code: https://bitbucket.org/snippets/NeuralOutlet/8qEa/rauzy-fractal-problem

enter image description here

Should I even be using the projection matrix?


Have a look at this paper by Sirvent and Wang. It's not elementary but it defines the process quite completely with a worked example. In particular, the contracting space ${\mathbb H}_c$ is clearly defined. On slide 3 of the presentation, it simply says that ${\mathbb H}_c$ is "generated by the eigenvectors of $\beta$ Galois conjugates". (Of course, it's a presentation so we could perhaps excuse the terseness.) The relevant part in the paper is the so called valuation map $E$ which accepts strings and returns complex numbers. The image of the orbit of the fixed word is exactly the Rauzy fractal.

Suppose, for example, that you're dealing with the substitution $$1\to 12, \: 2\to 13, \: 3\to 1.$$ This has incidence matrix $$ \left( \begin{array}{ccc} 1 & 1 & 0 \\ 1 & 0 & 1 \\ 1 & 0 & 0 \\ \end{array} \right) $$ one of whose eigenvectors is approximately $$\omega = \langle \omega_1, \omega_2, \omega_3 \rangle =\langle -0.412 + 0.61 i, 0.223 - 1.12i, 1\rangle.$$ The complex conjugate of $\omega$ is also an eigenvector; the remaining eigenvector corresponds to a real eigenvalue and not relevant.

Given a finite word $U$ let $|U|_i$ denote the number of occurrences of the symbol $i$ in $U$. Then, according to equation 3 in the paper, the valuation $E$ is defined by $$E(U) = \sum_{i=1}^3 |U|_i \omega_i.$$ Note that the $\omega_i$s are simply the components of the vector $\omega$ and have complex values. So clearly, $E(U)$ is a complex number.

Now, the fixed word for this substitution starts something like so:


Of course, he first few terms of the orbit of this finite word under the shift operator are


If we apply the valuation map to each of these, we obtain points in the complex plane. If we start with a much longer approximation to the fixed word and perform the process for many points in the orbit, we get a good approximation to the rauzy fractal. We even obtain a decomposition of the rauzy fractal by examining those terms in the orbit starting with 1, 2, or 3.

That is exactly the process I used to generate the following:

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.