350 likes | 483 Views
Deformable Bodies. Volker Jacht 01. Juni 2011. It‘s so fluffy , I‘m gonna die!!. Motivation?. Motivation. Deformierbare Körper. Menschen, Tiere Haare, Seile Kleidung, Stoffe Pflanzen Fachwerke. Inhalt. Motivation Masse-Feder-Systeme Simulation Kräfte berechnen
E N D
DeformableBodies VolkerJacht 01. Juni 2011
It‘s so fluffy, I‘mgonna die!! Motivation?
Deformierbare Körper • Menschen, Tiere • Haare, Seile • Kleidung, Stoffe • Pflanzen • Fachwerke
Inhalt • Motivation • Masse-Feder-Systeme • Simulation • Kräfte berechnen • Differentialgleichung • Numerische Lösungsverfahren
Masse-Feder-System • Körper wird durch viele Partikel repräsentiert, die untereinander mit Federn verbunden sind
Masse-Feder-System • Partikel • Masse: • Geschwindigkeit: • Position: • Feder • Verbunden mit Partikel: , • Normalauslenkung: • Federkonstante: • Dämpfungskoeffizient: i j
Masse-Feder-System • Erste Idee: ein vereinfachtes 2D-Gitter • Was geschieht bei Kräfteeinwirkung? • Ausprobieren gibt Aufschluss ?
Masse-Feder-System • Hinzufügen von Diagonalfedern • => robuster? • Simulation…
Inhalt • Motivation • Masse-Feder-Systeme • Simulation • Kräfte berechnen • Differentialgleichung • Numerische Lösungsverfahren
Simulation? • aller Partikel von Interesse • ist der „jetzt“-Zeitpunkt,ein bekannter Zustand/Bild: • Benötigt wird das Folgebild nachverstrichener Zeit : • Berechnung aus Daten/Formeln, die wir kennen!
Inhalt • Motivation • Masse-Feder-Systeme • Simulation • Kräfte berechnen • Differentialgleichung • Numerische Lösungsverfahren
Masse-Feder-System • Hookesches Gesetz: • Federkraft auf Partikel durch Partikel über Feder Längenänderung der Feder Richtungsvektor von nach (3. Newtonsches Gesetz)
Masse-Feder-System i j i j i j
Masse-Feder-System • Dämpungskraft (Reibung): • Dämpfungskraft auf Partikel durch Partikel über Feder Relative Geschwindigkeit zwischen und Richtungsvektor von nach
Masse-Feder-System • +… • ist abhängig von und (und allen mit )
Inhalt • Motivation • Masse-Feder-Systeme • Simulation • Kräfte berechnen • Differentialgleichung • Numerische Lösungsverfahren
Simulation M Mit 2. Newtonsches Gesetz () erhält man eine Differentialgleichung 2. Ordnung:
Inhalt • Motivation • Masse-Feder-Systeme • Simulation • Kräfte berechnen • Differentialgleichung • Numerische Lösungsverfahren
Simulation: expliziter Euler • Auswertung der Steigung am Anfang des Zeitschritts • Je größer ,umso größer der Fehler Genaue Lösung Euler mit versch.
Simulation: expliziter Euler forEver ( ) { forallParticles p { p.setForce() } // compute spring anddampingforcesforeachparticle forall Springs s { s.getI().addForce(); s.getJ().addForce(); } // Euler withstepsize forallParticles p { p.addVelocity(p.getForce() * / p.getMass()); p.addPosition(p.getVelocity * ); } }
Simulation: expliztier Euler Test • Setup und gering • Setup und mittel • Setup und hoch
Simulation: explizier Euler Test • Setup und gering • Setup und mittel • Setup und hoch
Simulation: explizier Euler Test • Setup und gering • Setup und mittel • Setup und hoch
Simulation: Instabilität Auf zum Neptun!
Simulation: expliziter Euler Fazit: • Sehr einfach zu implementieren • Ausreichend für „kleine“ Probleme • Hohe Ungenauigkeit im Verhältnis zur Schrittgröße • Steife Systeme erzwingen kleine Zeitschritte,da sie sonst „explodieren“ • Ineffektiv • Verbesserungsmöglichkeiten?
Simulation • Taylor-Reihenentwicklung • 1. Grad entspricht dem expliziten Eulerverfahren • Erhöhung des Grads durch weiteres Ableiten erhöht die Genauigkeit • Rechenaufwendiger • ist für größere immer noch instabil • Implizite Verfahren • Kompliziert • Erfordern deutlich höheren Rechenaufwand • Auch bei größeren stabil
Quellen • http://www.cs.cmu.edu/~baraff/sigcourse/ • Differential EquationBasics • ParticleDynamics • ImplicitMethods • Wiki • Masse-Feder-System_(Computergrafik) • Implizites_Euler-Verfahren • http://public.beuth-hochschule.de/~stevie/mod+sim/node40.html