« home

Cylinder to Plane

String theory: Primary fields and radial quantization A time-ordered product of fields on the cylinder maps to a radially ordered product in the complex plane. This graphic visualizes how different times on the cylinder correspond to different times on the plane.


Cylinder to Plane

  Download

PNGSVG

  Code

  cylinder-to-plane.tex (31 lines)

\documentclass[tikz]{standalone}

\begin{document}
\begin{tikzpicture}

  \draw[dashed] (2.6,0) arc (-90:90:-0.5 and 1.5);% line 1
  \draw[dashed] (1.4,0) arc (-90:90:-0.5 and 1.5);% line 2
  \draw[->] (-0.5,0) arc (-90:90:-0.5 and 1.5);
  \draw (0,0) -- (4,0);% bottom line
  \draw (0,3) -- (4,3);% top line
  \draw (0,0) arc (270:90:0.5 and 1.5);% left half of the left ellipse
  \draw (4,1.5) ellipse (0.5 and 1.5);% right ellipse
  \draw (0.6,1.5) node {$\tau_1$};
  \draw (1.8,1.5) node {$\tau_2$};
  \draw (-1.25,1.5) node {$\sigma$};
  \draw[->] (0.5,-0.5) -- (3.5,-0.5);
  \draw (2,-1) node {$\tau$};

  \draw[->,thick] (5.0,1.5) -- (6,1.5);

  \draw[dashed] (9,1.5) circle (0.8);
  \draw[dashed] (9,1.5) circle (1.8);
  \draw [->,domain=0:90] plot ({9 - 2.2*cos(\x)},{1.5-2.2*sin(\x)});
  \draw (6.9,0.2) node {$\sigma$};
  \draw (9.6,2.4) node {$\tau_1$};
  \draw (10.4,3) node {$\tau_2$};
  \node at (9,1.5) [circle,inner sep=1pt,fill=black] {};

\end{tikzpicture}
\end{document}

  cylinder-to-plane.typ (90 lines)

#import "@preview/cetz:0.4.1": canvas, draw
#import draw: arc, circle, content, line

#set page(width: auto, height: auto, margin: 8pt)

// Constants
#let arrow-style = (
  mark: (end: "stealth", fill: black, scale: 0.7),
  stroke: 0.8pt,
)

#canvas({
  // Left side (cylinder)
  // Vertical lines
  arc(
    (2.6, 0),
    start: -90deg,
    stop: -270deg,
    radius: (0.5, 1.5),
    stroke: (dash: "dashed"),
    name: "tau2-arc",
  )
  arc(
    (1.4, 0),
    start: -90deg,
    stop: -270deg,
    radius: (0.5, 1.5),
    stroke: (dash: "dashed"),
    name: "tau1-arc",
  )
  arc(
    (-0.4, 0),
    start: -90deg,
    stop: -270deg,
    radius: (0.5, 1.5),
    ..arrow-style,
    name: "sigma-arc",
  )
  // Labels
  content("tau1-arc.mid", $tau_1$, anchor: "east", padding: 2pt)
  content("tau2-arc.mid", $tau_2$, anchor: "east", padding: 2pt)
  content("sigma-arc.mid", $sigma$, anchor: "east", padding: 2pt)


  // Draw cylinder: Horizontal lines
  line((0, 0), (4, 0), name: "bottom-line") // bottom
  line((0, 3), (4, 3), name: "top-line") // top
  // Left and right ellipses
  arc(
    (0, 0),
    start: 270deg,
    stop: 90deg,
    radius: (0.5, 1.5),
  )
  circle(
    (4, 1.5),
    radius: (0.5, 1.5),
    name: "right-ellipse",
  )

  // Bottom arrow and label
  line((0.5, -0.5), (3.5, -0.5), ..arrow-style, name: "tau-arrow")
  content("tau-arrow", $tau$, anchor: "north")

  // Transformation arrow
  line((5.0, 1.5), (6, 1.5), stroke: 1pt, ..arrow-style)

  // Right side (plane)
  // Dashed circles
  circle((9, 1.5), radius: 0.05, fill: black, name: "center-dot")
  circle((9, 1.5), radius: 0.8, stroke: (dash: "dashed"), name: "tau1-circle")
  circle((9, 1.5), radius: 1.8, stroke: (dash: "dashed"), name: "tau2-circle")

  // Quarter circle with arrow
  arc(
    "center-dot",
    radius: 2.2,
    start: -180deg,
    stop: -90deg,
    anchor: "origin",
    ..arrow-style,
    name: "sigma-arrow",
  )

  // Labels
  content("sigma-arrow.mid", $sigma$, anchor: "north-east", padding: 1pt)
  content("tau1-circle.-15%", $tau_1$, anchor: "south-west")
  content("tau2-circle.-15%", $tau_2$, anchor: "south-west")
})