# Dreikörper-Scan (2Labs Research)

Alles, was zur Seite "Dreikörper-Scan" geführt hat. Python 3 mit numpy, scipy, mpmath, matplotlib; gcc für die C-Teile.
Alle Pfade im Code zeigen auf /home/claude/dreikoerper und /home/claude/kataloge, bitte anpassen.

## Reihenfolge
1. scan.c            Raster-Scan über (v1, v2), schreibt map_*.f32 / map_flag.u8
   gcc -O3 -march=native -o scan scan.c -lm
2. nbody.py, refine.py, pipeline.py, features.py   Bahnen verfeinern, n (Geradendurchgänge) zählen
3. verify.py, analysis.py, outofsample.py          Prüfung und Faustregel T* ≈ 1,5178·n (Vorhersage vorab in prediction.txt)
4. katalog_abgleich.py (Li-Liao), sofia_abgleich.py (Sofia), tbo_abgleich.py (Atlas)   Katalogabgleich über die exakte skalenfreie Periode
   catalog_refine.py, sub_abgleich.py             Katalogeinträge auf exakte Rückkehr rechnen, Teilperioden prüfen
5. stability.py     Monodromiematrix und Multiplikatoren
6. libseg.c + multishoot.py    Mehrfach-Schießverfahren (gcc -O3 -march=native -shared -fPIC -o libseg.so libseg.c -lm)
7. mp_segments.py, mp_verify.py   unabhängige Nachrechnung mit mpmath (22 Stellen)
8. make_video.py, make_figures.py, build_page3.py + page_template3.html   Video, Bilder, Seite
   (build_page.py / build_page2.py und die Templates 1/2 sind frühere Fassungen der Seite)

## Daten
- final25_ms.json: Ergebnis des Mehrfach-Schießens für die 25 offenen Bahnen
- mpseg/: mpmath-Prüfung je Bahn
- abgleich_*.json: Katalogabgleich
- ergebnisse/kandidaten.csv: Startzustände und Perioden der Kandidaten

## Nicht enthalten (selbst herunterladen)
- Li-Liao: github.com/sjtu-liao/three-body (1,3 GB)
- Sofia-Liste: db2.fmi.uni-sofia.bg/3bodystab971 (ics_971_100.txt)
- Atlas: threebodyorbits.com (catalogue.json, CC BY 4.0)

## Status
Zwischenbericht, nicht begutachtet. 24 geschlossene Kandidaten, die in diesen drei Quellen fehlen. Dass sie neu sind, ist nicht bewiesen.
Die Vermutung T*/n ≤ 1,5396 wurde nur an Katalogdaten getestet (Code dazu steht in build_page3.py, Abschnitt "Vermutung").

## Hinweis zur Veröffentlichung (2Labs Research, 22.10.2026)

Diese Fassung ist eine Auswahl aus dem Arbeitsordner: der Code, die Ergebnisdaten und die Katalogabgleiche.
Nicht enthalten sind:

- die Rohkarten der Scans (`map_*.f32`, `map_flag.u8`, auch in `run2/`). Sie lassen sich mit `scan.c` neu erzeugen.
- das kompilierte Programm `scan`. Es muss mit gcc aus `scan.c` gebaut werden.
- Zwischenstände und Logdateien einzelner Läufe, frühere Fassungen der Seite (`build_page.py`, `build_page2.py`,
  `page_template.html`, `page_template2.html`) und die Zwischenfassung der Ergebnisbeschreibung (`ergebnisse.md`, Stand 21.10.).
- Abbildungen und Video. Beides steht in der Seite selbst.

Die Pfade im Code (`/home/claude/...`) stammen aus unserer Arbeitsumgebung und müssen angepasst werden.
Der Code wurde bisher nur von uns ausgeführt, eine Nachrechnung durch Dritte steht aus.
Der Katalogabgleich in `abgleich_*.json` und `ergebnisse/abgleich_liao.csv` enthält Werte aus den genannten Katalogen
(Atlas: CC BY 4.0, siehe Seite). Die Kataloge selbst liegen nicht bei.
