Calabi-Yau Cross Sections

This notebook generates graphics derived from the Fermat Equation that are relevant to the Calabi-Yau spaces that may lie at the smallest scales of the unseen dimensions in string theory.

These graphics show equivalent renderings of a 2D cross-section of the 6D manifold embedded in CP4 described in string theory calculations by the homogeneous equation in 
five complex variables:

(z1^5) + (z2^5) + (z3^5) + (z4^5) + (z5^5) = 0

The surface is computed by assuming that some pair of complex inhomogenous variables, say z3/z5 and z4/z5, are constant (thus defining a 2-manifold slice of the 6-manifold), normalizing the resulting inhomogeneous equations a second time, and plotting the solutions to

(z1^5) + (z2^5) = 1

The resulting surface is embedded in 4D and projected to 3D using Mathematica.

u1[a_, 
        b_] :=  .5 (E^(a + I*b) + E^(-a - I*b))
u2[a_, 
        b_] :=  .5 (E^(a + I*b) - E^(-a - I*b))

z1k[a_, b_, n_, k_] := 
      E^(k*2*Pi*I/n)*u1[a, b]^(2.0/n)
z2k[a_, b_, n_, k_] := 
      E^(k*2*Pi*I/n)*u2[a, b]^(2.0/n)

n = 5;

calabi[x_, y_, z_, α_, t_] := 
        Table[With[{alpha = α - t}, 
            ParametricPlot3D[{Re[z1k[a, b, n, k1]] + x, 
                Re[z2k[a, b, n, k2]] + y, 
                Cos[alpha]*Im[z1k[a, b, n, k1]] + 
                  Sin[alpha]*Im[z2k[a, b, n, k2]] + 
                  z, {EdgeForm[RGBColor[ .4,  .4,  .6]], 
                  SurfaceColor[RGBColor[ .5,  .5, 1], White, 
                    5]}}, {a, -1, 1}, {b, 0, π/2}, 
              Boxed -> False, Axes -> False, PlotPoints -> 15, 
              DisplayFunction -> Identity]], {k1, 0, n - 1}, {k2, 0, 
            n - 1}];

Rotating View

\(spin = 
      Table[Show[calabi[0, 0, 0, π/4, 0], ImageSize -> 600, 
          SphericalRegion -> True, Boxed -> False, 
          Axes -> False, Background -> Black, 
          DisplayFunction -> $DisplayFunction, 
          LightSources -> {{{0, 1, 0}, 
                RGBColor[0.5, \  .5, \ 1]}, \ 
\ \ \ \ \ {{1, \(-1\), 0}, 
                RGBColor[1, \ 0.5, \ 0.5]}, \ {{\(-1\), \(-1\), 0}, 
                RGBColor[0.5, \ 1, \  .5]}}, 
          AmbientLight -> RGBColor[ .25,  .25,  .25], 
          PlotRegion -> {{\(- .2\), 1 +  .2}, {\(- .2\), 1 +  .2}}, 
          ViewPoint -> {2\ Cos[t], 2\ Sin[t], 1}], {t, 0, 
          2\ π,  .1}]\)

This generates random initial values for the alpha parameter and interpolates the result for convenience later.

initcalabis = 
        Interpolation[
          Flatten[Table[{x, y, Random[Real, {0, 2 π}]}, {x, -10, 10, 
                5}, {y, -10, 10, 5}], 1]];

This generates a grid of Calbi-Yau surfaces with different phases.  A phase shift is then applied to all of the shapes simultaneously.

*Note*: This can be memory intensive due to the number of surfaces/polygons.

\(\(gr = 
        Table[Show[
            Graphics3D[{RGBColor[ .7,  .7, 0], AbsoluteThickness[2], 
                Table[{Line[{{x, \(-10\), 0}, {x, 10, 0}}], 
                    Line[{{\(-10\), y, 0}, {10, y, 0}}]}, {x, \(-10\), 10, 
                    5}, {y, \(-10\), 10, 5}]}], 
            Table[calabi[x, y, 0, initcalabis[x, y], t], {x, \(-10\), 10, 
                5}, {y, \(-10\), 10, 5}], ImageSize -> 600, 
            SphericalRegion -> True, Boxed -> False, 
            Axes -> False, Background -> Black, 
            DisplayFunction -> $DisplayFunction, 
            LightSources -> {{{0, 1, 0}, 
                  RGBColor[0.5, \  .5, \ 1]}, \ 
\ \ \ \ \ {{1, \(-1\), 0}, 
                  RGBColor[1, \ 0.5, \ 0.5]}, \ {{\(-1\), \(-1\), 0}, 
                  RGBColor[0.5, \ 1, \  .5]}}, 
            AmbientLight -> RGBColor[ .25,  .25,  .25], 
            PlotRegion -> {{\(- .9\), 1 +  .9}, {\(- .9\), 
                  1 +  .9}}], {t, 0, π,  .1}];\)\)

Reference

http://emsh.calarts.edu/~mathart/Zoetrope2/Zoetrope2_prop.html

http://www.cs.indiana.edu/~hanson/

http://www.pbs.org/wgbh/nova/elegant/