# How to draw the "logo" of the string theory?

I wonder whether it is possible to draw the "logo" of string theory with LaTeX. I think it is doable, but not sure how to do it. Any guru wants to give it a shot? Source: https://commons.wikimedia.org/wiki/File:Calabi-Yau-alternate.png and (in better quality) https://commons.wikimedia.org/wiki/File:Calabi-Yau.png (both own work by Lunch; CC BY-SA 2.5)

• In TeX?!! I don't believe it is possible. Nov 9 '13 at 14:59
• As long as you can provide us with its function to plot, PSTricks can happily do it, IMHO. Nov 9 '13 at 15:21
• @Marienplatz, here is it: en.wikipedia.org/wiki/Calabi%E2%80%93Yau_manifold Nov 9 '13 at 16:34
• The problem is on the borders of TeX & Co., but it is interesting, so let our PSTricks ot TikZ/PGF specialists find a solution. I am voting for reopening. Nov 9 '13 at 18:29
• I would second @Marienplatz : if you manage to provide a "suitable" description of the involved surface(s) along with the color information, we can think about it. "Suitable" means either a parameterized surface x(u,v), y(u,v), z(y,v) with color data C or a huge data table X Y Z C where C can be RGB or scalar color values. But a task like "do research on string theory to understand suitable representations of the object given as rendition" is unrelated to tex.sx . Unfortunately, the mentioned wikipedia link does not appear to answer that question. Nov 10 '13 at 11:55

I searched a bit on the net and found a parametrization for cross-sections of the quintic 6D Calabi-Yau, so here's the Asympote implementation:

\documentclass{standalone}
\usepackage{asymptote}

\begin{document}

\begin{asy}[width=10cm,height=10cm]
import graph3;

size3(200);
currentprojection=orthographic(3,3,2);
currentlight=light(8,10,2);

int k1, k2, n = 5;
real alpha = 0.3*pi;

// cross section of the quintic 6D Calabi-Yau manifold
triple cy(pair z) {

pair z1, z2;

if(z==(0,0)) {
z1 = exp(2*pi*I*k1/n);
z2 = 0;
} else {
z1 = exp(2*pi*I*k1/n)*exp(log(cos(I*z))*2/n);
z2 = exp(2*pi*I*k2/n)*exp(log(-I*sin(I*z))*2/n);
}

return (z2.x, cos(alpha)*z1.y + sin(alpha)*z2.y, z1.x);

}

for(k1=0; k1<n; ++k1) {
for(k2=0; k2<n; ++k2) {
surface s = surface(cy,(-1,0),(1,0.5*pi),20,20);
draw(s,yellow+orange);
}
}

\end{asy}

\end{document} Don't know which one is shown in your "logo", but that's at least a Calabi-Yau manifold. If you view the resulting PDF with acroread, you can rotate the beast.

• This is better than the original! You can also use the opacity option draw(s,red+opacity(0.6)); and modify currentlight to give part of the red/blue appearance.
– alfC
Feb 1 '14 at 3:56
• I was not able to compile this latex code in Overleaf or on my Mac with a full latex installation. I don't see any errors in the log file only warnings such as: No file c3f935e53c8b4367b319754137b94ccc.aux. \openout1 = c3f935e53c8b4367b319754137b94ccc.aux'. ... Package asymptote Warning: file c3f935e53c8b4367b319754137b94ccc-1.eps' not fo und on input line 40. Any idea? Jan 30 '20 at 12:28