Maschinenepsilon (64 Bit)
Maschinenepsilon für Double Precision: eps = 2^(−Mantissenbits). Mit 52 Mantissenbits ergibt sich 2^(−52) ≈ 2,22·10⁻¹⁶.
Maschinenepsilon (64 Bit) berechnen
Maschinenepsilon für Double Precision: eps = 2^(−Mantissenbits). Mit 52 Mantissenbits ergibt sich 2^(−52) ≈ 2,22·10⁻¹⁶.
- eps — Maschinenepsilon
- Mantissenbits — Mantissenbits
Worum geht es?
Float64 hat 52 Mantissenbits und damit ein Maschinenepsilon von 2⁻⁵² ≈ 2,22·10⁻¹⁶. Das ist die Untergrenze des relativen Rundungsfehlers für jede arithmetische Grundoperation in Double Precision — die Grundlage praktisch aller numerischen Genauigkeitsabschätzungen in wissenschaftlichen Anwendungen.
Mit etwa 15–17 signifikanten Dezimalstellen ist Double für die meisten Ingenieur- und Naturwissenschafts-Workloads ausreichend. Erst bei stark fehlerverstärkenden Algorithmen (schlecht konditionierte lineare Systeme, lange Summen) wird es eng.
Die Formel
eps = 2^(−Mantissenbits)
Umstellung:
Mantissenbits = −log₂(eps)Die Variablen
| Symbol | Bedeutung | Einheit | Erklärung |
|---|---|---|---|
| Mantissenbits | Mantissenbits | Bit | Anzahl Mantissenbits (52 bei Float64). |
| eps | Maschinenepsilon | — | Kleinstes eps mit 1 + eps > 1 darstellbar. |
Minimal-Beispiel
Float64 hat 52 Mantissenbits.
eps = 2^(−52)
≈ 2,220446 · 10⁻¹⁶Praxis-Beispiele
Beispiel 1 — Signifikante Dezimalstellen
−log₁₀(2⁻⁵²) = 52 · log₁₀(2)
≈ 15,65
→ ca. 15–16 signifikante DezimalstellenBeispiel 2 — Vergleich zu Float32
Float32: eps = 2⁻²³ ≈ 1,19 · 10⁻⁷
Float64: eps = 2⁻⁵² ≈ 2,22 · 10⁻¹⁶
Verhältnis: 2²⁹ ≈ 5,4 · 10⁸Beispiel 3 — Numerische Genauigkeitsgrenze einer Summe
Eine Summe von N gleich großen Double-Zahlen verliert im worst case etwa N · eps an relativer Genauigkeit. Bei N = 10⁹:
Fehler ≈ N · eps
= 10⁹ · 2,22 · 10⁻¹⁶
≈ 2,22 · 10⁻⁷