Page:
Data Format
No results
1
Data Format
wriverson edited this page 2026-09-18 19:12:44 +02:00
Table of Contents
The .surf file
A .surf file is plain text, one surface element per line, eight whitespace-separated fields:
x y z t kappa lambda orient sheet
| Field | Meaning |
|---|---|
x y z t |
Base lattice site of the surface element (integers, 1-based) |
kappa |
First axis the surface element spans: 1 = x, 2 = y, 3 = z, 4 = t |
lambda |
Second axis the surface element spans |
orient |
Orientation sign: +1 or -1 |
sheet |
Connected-component (sheet) ID, used for colouring |
Example line: a surface element spanning the x and t directions at site (5, 12, 3, 40), positively oriented, belonging to sheet 7:
5 12 3 40 1 4 1 7
Conventions
- Coordinate centre: the loader shifts spatial coordinates by 16 and the time coordinate by Nt/2, so the lattice is centred on the origin. The spatial extent is currently fixed at 32³; the temporal extent Nt is parsed from the filename (first
tfollowed by digits). - Header lines: any line containing an
xor[is treated as metadata and skipped, as is any line that does not parse into eight fields. - Periodicity: the lattice is periodic. The shaders fold every vertex into the periodic image nearest the selection centre (minimum image convention), so vortices crossing the boundary render continuously.
- Companion file: mode 1 expects
hypercube_t<Nt>.surfin the same directory as the vortex file. Generate it withgenerate_hypercube.py(edit the output name to match your Nt).
Generating data
generate_hypercube.py emits the hypercube boundary surface in this format. Real vortex data comes from centre-projected gauge configurations after maximal centre gauge fixing; any tool that writes the eight-field format above will work.