Coloring 2D Metallic-Mean Quasicrystal Tilings with a Mesh-Based Method

This Demonstration provides code to automatically colour 2D quasicrystal tilings with a mesh-based method. it can also be used as an interactive example of the MeshRegion function and its related options introduced with release 11 of the Wolfram Language.
The default view in real space for this Demonstration is given by the control "space" set to "real", whereas by selecting "Fourier" one can visualize a reciprocal-space representation.
Computing the point coordinates in real space of the quasiperiodic structure follows the iterated letter-based substitution rule outlined in the related Demonstration “Labyrinth Tiling from Quasiperiodic Octonacci Chains” by the same author [1, 2]. In this Demonstration, an additional rule is added to the controls for generating the (A,B) letter sequence related to the copper number. Other rules for the bronze and nickel numbers are left commented out in the notebook source code for you to inspect, since the generated sequences are too long and therefore too memory-intensive for interactive use.
The "nesting index n" control lets you generate metallic-mean word sequences of different lengths, so that tilings of different complexity can be obtained. The "ratio τ" control lets you change the scale between A and B spacings. By selecting the "Square" or "Labyrinth" setter control you can choose between the two tilings, each spanned by different sets of polygonal meshes. You can choose to see edges and indices of the 2D meshes by checking the related checkbox controls.
The number of colors to be used is automatically obtained by sorting out all 2D mesh elements having the same area. Such color number turns out to be always 3 for these systems, with the only exception given by the Fibonacci labyrinth tiling, since the chosen values for n in this Demonstration are not large enough to allow to see all colors. The number of color permutations over the quasicrystal polygonal faces is .
The "Default", "Random and "Personal" setter controls let you choose among a default set of three colors defined by the Hue function computed at each third of the unit interval, a random set of three colors defined by the RandomColor function computed for three random real numbers always in the range and an author-defined fixed set of colors, respectively. By moving the slider control "Set Seed for Random Colors" you can change the randomly chosen set of colors. The slider control "Permute colors over faces" lets you cycle color permutations over mesh tiles.
By setting the space view to "Fourier", the power spectrum of the Fourier components is computed for the mesh areas of the chosen 2D tiling. A logarithmic scale is used for visualizing the intensities of the indexed components according to a "TemperatureMap" color scaling function.



  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


Snapshot 1: Square tiling of a 2D quasicrystal obtained from Fibonacci substitution rule, mesh indexing enabled and random set of colors
Snapshot 2: Square tiling of a 2D quasicrystal obtained from copper-mean substitution rule, mesh edge highlighting enabled and personal set of colors
Snapshot 3: Labyrinth tiling of a 2D quasicrystal obtained from copper-mean substitution rule and default set of colors
Snapshot 4: Fourier power map of mesh areas of 2D octonacci square tiling with indexed components and logarithmic color scale plot legend
Snapshot 5: Fourier power map of mesh areas of 2D labyrinth tiling from copper rule with with indexed components and logarithmic scale plot legend
[1] U. Grimm and M. Schreiber, "Energy Spectra and Eigenstates of Quasiperiodic Tight-Binding Hamiltonians," in Quasicrystals: Structure and Physical Properties (H.-R. Trebin, ed.), Weinheim, Germany: Wiley-VCH, 2003 pp. 210–235.
[2] W. Steurer and S. Deloudi, "Tilings and Coverings", in Cristallography of Quasicrystals: Concepts, Methods and Structures, Springer-Verlag Berlin Heidelberg, Germany 2009 pp. 7-47
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.