Physically-based Simulation in Computer Graphics - Cheatsheet
Grundlegende Konzepte und Ziele der physikalisch-basierten Simulation
Definition:
Simulation physikalischer Phänomene in der Computergrafik, basierend auf mathematischen Modellen der Physik.
Details:
- Ziele: Realismus, Genauigkeit, Effizienz.
- Grundkonzepte: Mechanische Systeme, Numerische Integration, Kollisionsdetection, Partikelsysteme.
- Wichtige Gleichungen und Modelle: Newton'sche Gesetze, Lagrange'sche Mechanik, Navier-Stokes-Gleichungen.
- Methoden: Finite-Differenzen-Methode (FDM), Finite-Elemente-Methode (FEM), Smoothed Particle Hydrodynamics (SPH).
- Kräfte: Gravitation, Reibung, Elastizität, Fließverhalten von Flüssigkeiten.
- Ziel: Natürliche und realitätsgetreue Bewegungs- und Verhaltensdarstellungen in virtuellen Umgebungen.
Newtonsche Mechanik und Grundgleichungen der Bewegung
Definition:
Newtonsche Mechanik beschreibt die Bewegung von Körpern basierend auf Kräften. Grundgleichungen der Bewegung leiten sich aus den Newtonschen Gesetzen ab.
Details:
- 1. Newtonsches Gesetz (Trägheitsgesetz): Ein Körper bleibt in Ruhe oder bewegt sich geradlinig gleichförmig, solange keine äußere Kraft auf ihn wirkt.
- 2. Newtonsches Gesetz (Aktionsprinzip): \[ F = ma \] Kraft ist das Produkt aus Masse \(m\) und Beschleunigung \(a\).
- 3. Newtonsches Gesetz (Reaktionsprinzip): Übt ein Körper A auf einen Körper B eine Kraft aus, so übt Körper B auf Körper A eine gleich große, entgegengesetzte Kraft aus.
- Bewegungsgleichungen: \[ s(t) = s_0 + v_0t + \frac{1}{2}at^2 \] (Ort), \[ v(t) = v_0 + at \] (Geschwindigkeit).
- Kraftresultierende: Summe aller einwirkenden Kräfte bestimmt die Gesamtbeschleunigung.
Methoden der numerischen Integration (z.B. Euler-Verfahren, Runge-Kutta-Methoden)
Definition:
Methoden zur Lösung von Differentialgleichungen in der numerischen Simulation, genutzt in Computer Graphics zur Modellierung von Bewegungen und physikalischen Systemen.
Details:
- Euler-Verfahren: Einfachstes explizites Verfahren. Aktualisiert Position/Lösung durch Startwert und Berechnung des nächsten Punktes: \[ y_{n+1} = y_n + h \times f(t_n, y_n) \]
- Verbesserte Euler-Verfahren: Auch bekannt als Heun-Verfahren, verfeinert das einfache Euler, um bessere Genauigkeit zu erzielen. Mittelt Anfangs- und Endneigung.
- Runge-Kutta-Methoden: Höhere Genauigkeit durch mehrere Zwischenschritte. Häufig verwendet: das klassische Runge-Kutta 4. Ordnung (RK4): \[ y_{n+1} = y_n + \frac{h}{6} (k_1 + 2k_2 + 2k_3 + k_4) \] mit \[ k_1 = f(t_n, y_n), \] \[ k_2 = f(t_n + \frac{h}{2}, y_n + \frac{h}{2} k_1), \] \[ k_3 = f(t_n + \frac{h}{2}, y_n + \frac{h}{2} k_2), \] \[ k_4 = f(t_n + h, y_n + h k_3) \]
Kollisionserkennung und -behandlung
Definition:
Kollisionserkennung und -behandlung: Erkennen von Kollisionen zwischen Objekten und Berechnung ihrer physischen Reaktionen.
Details:
- Kollisionserkennungsmethoden: Bounding-Volumes (AABB, OBB), Gitter, BSP-Bäume
- Kollisionsbehandlung: Impulsbasierte Reaktion, Energieerhaltung
- Formeln: Impulsberechnung \[ J = \frac{-(1+e)\vec{v}_{rel} \cdot \vec{n}}{\frac{1}{m_1} + \frac{1}{m_2}} \]
- Typen von Kollisionen: elastisch (e = 1), inelastisch (e < 1)
Partikelmethoden (z.B. SPH – Smoothed Particle Hydrodynamics)
Definition:
Partikelmethoden (z.B. SPH – Smoothed Particle Hydrodynamics) sind numerische Methoden zur Simulation von Flüssigkeiten und Gasen durch diskrete Partikel.
Details:
- SPH: Löst für jedes Partikel die Erhaltungsgleichungen von Masse, Impuls und Energie
- Glättungskern-Funktion: \(W(r,h)\), verteilt Einfluss eines Partikels auf seine Nachbarn
- Dichteberechnung: \(\rho_i = \frac{\text{m}_j}{\rho_j} W(r_{ij}, h)\)
- Druckberechnung über Zustandsgleichung: \(P_i = k (\rho_i - \rho_0)\)
- Kräfte-Abschätzungen: Druck- und Viskositätskräfte
- Anwendungen: Simulation von Strömungen, Wellen, Fluid-Interaktionen
Effiziente Implementierung numerischer Algorithmen zur Lösung von Differentialgleichungen
Definition:
Effiziente Implementierung numerischer Algorithmen zur Lösung von Differentialgleichungen fokussiert sich auf Techniken und Methoden zur schnellen und genauen Lösung von DGLs.
Details:
- Verwendung von Methoden wie Euler-Verfahren, Runge-Kutta-Verfahren, und Finite-Differenzenverfahren
- Konzentration auf Zeit- und Speicherkomplexität der Algorithmen
- Parallelisierung und Vektoroperationen zur Leistungssteigerung
- Anwendung adaptiver Methoden zur Fehlerkontrolle
- Numerische Stabilität und Konsistenz sind entscheidend
- Anwendung in Simulationen physikalischer Systeme in der Computergrafik
Erhaltungssätze (Energie, Impuls, Drehimpuls) in der physikalischen Modellierung
Definition:
Erhaltungssätze sind fundamentale Prinzipien in der physikalischen Modellierung, die sicherstellen, dass Energie, Impuls und Drehimpuls in einem geschlossenen System konstant bleiben.
Details:
- Erhaltung der Energie: Gesamtenergie eines abgeschlossenen Systems bleibt konstant. Formel: \(E_{gesamt} = E_{kin} + E_{pot}\)
- Erhaltung des Impulses: Gesamtimpuls \( \textbf{p}_{gesamt} \) eines abgeschlossenen Systems bleibt konstant. Formel: \( \textbf{p}_{gesamt} = m \textbf{v}_{gesamt} \)
- Erhaltung des Drehimpulses: Gesamtdrehimpuls \( \textbf{L}_{gesamt} \) eines abgeschlossenen Systems bleibt konstant. Formel: \( \textbf{L} = \textbf{r} \times \textbf{p} \)
- Wichtig in Simulation: Realitätsnahe Animationen, Stabilität und Plausibilität der simulierten Systeme