.[ ČeskéHry.cz ].
Runge-Kutta vs. Velocity Verlet

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Fyzikální modely
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
yoda



Založen: 06. 10. 2009
Příspěvky: 8

PříspěvekZaslal: 6. říjen 2009, 21:57:34    Předmět: Runge-Kutta vs. Velocity Verlet Odpovědět s citátem

Zdravím,
snažím se naprogramovat fyziku pro automobilový simulátor, ale nějak plavu v integračních metodách. Mám karoserii simulovanou tuhým tělesem (kvádrem) na které napojím pružiny na jejichž druhém konci jsou kola, která držím nad terénem další virtuální pružinou s velkou tvrdostí. S Eulerovou integrací jsem rychle narazil, tak jsem použil Runge-Kuttu 4. řádu, jenže pořád to ještě není úplně ok. Kolize karoserie s terénem a udržování kol nad povrchem funguje vcelku dobře, problém ale je, že nemůžu nastavit tlumení pružin na víc než nějakých 2000 N/m/s (simulace začne být těžce nestabilní). Zkrácením integračního kroku (normálně mám 10ms) se situace zlepší, ale to už mi zas procák nezvládne realtime.

Zajímavé je, že když jsem místo Runge-Kutty použil Velocity Verlet, tak jsem mohl bez problémů tlumit až do nějakých 6k N/m/s, což bych u této metody úplně nečekal. Bohužel pro změnu zas nebyly stabilní tvrdé pružiny pro kolize s terénem.

Rád bych se teda zeptat na tohle:
- mám používat spíš Runge-Kuttu nebo Velocity Verlet?
- jsou problémy s tlumením kmitání pružin u Runge-Kutty normální, nebo dělám něco špatně?
- jaká bývá délka integračního kroku pro podobné simulace?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Fila



Založen: 31. 07. 2007
Příspěvky: 853

PříspěvekZaslal: 7. říjen 2009, 20:15:25    Předmět: Odpovědět s citátem

Jak presne se nestabilita projevuje? Dojde k tomu, ze se ti to cele rozkmita z prakticky klidove polohy a kmitani se zvetsuje namisto utlumuje?

Toto neni uplne muj obor, ale trochu do toho vidim -- jak RK4, tak Verlet a zakladni Euler jsou explicitni integracni metody. Ty maji nevyhodu, ze dik numericke chybe kumuluji energii soustavy namisto toho, aby ji tlumily, takze jsou snadno nestabilni, byt je treba RK4 jinak docela presna.

Muzes zkusit pouzit implicitni Eulerovu metodu -- ta je sice (ne)presna podobne jako explicitni Euler, ale vlivem chyby se energie soustavy tlumy, tzn. nemelo by dochazet k samovolnemu rozkmitani, ale naopak tlumeni i veci, ktere by jinak mely kmitat treba nekonecne dlouho (ale takove predpokladam nesimulujes Smile). Nevyhoda je vetsi vypocetni (i matematicka) narocnost -- je treba pracovat s Jakobiho matici, tzn. budes si muset vsechny vztahy poderivovat + resit kazdy frame soustavu linearnich rovnic (to lze teda obejit, ale ne uplne primocare).

BTW. ja kdysi napsal celkem pekne fungujici model auta zalozeny na ODE, to prave pouziva implicitni Eulerovu metodu.

EDIT: toto je clanek z haptiky, ale resi v ni stabilitu implicitni Eulerovy integrace ve srovnani s jinymi:
Otaduy, M.A. and Lin, M.C. Stable and responsive six-degree-of-freedom haptic manipulation using implicit integration. Proceedings of the First Joint Eurohaptics Conference and Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems.
2005.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
yoda



Založen: 06. 10. 2009
Příspěvky: 8

PříspěvekZaslal: 10. říjen 2009, 10:22:38    Předmět: Odpovědět s citátem

Diky moc, o tech implicitnich metodach jsem vubec nevedel. Trochu jsem si vcera zapocital a fakt by to mohlo fungovat Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Hardwire



Založen: 04. 09. 2007
Příspěvky: 117

PříspěvekZaslal: 10. říjen 2009, 12:46:41    Předmět: Odpovědět s citátem

Par clanku a zdrojaku k integratorum muzes najit i tady:
http://physics.hardwire.cz/index.php?action=show&sortby=order&parent_id=37
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Fyzikální modely Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna