IT-lexikon › Programmering › Sequential impulse

Sequential impulse

Programmering In English → Uppdaterad: 2026-10-24

Erin Cattos iterativa fysiklösare, som en kontakt i taget knuffar till kropparnas hastigheter tills alla villkor är ungefär uppfyllda.

I stället för att ställa upp och lösa ett stort ekvationssystem för alla kontakter samtidigt tar metoden en kontakt åt gången, räknar ut den impuls just den kräver, applicerar den och går vidare. Ett helt varv genom alla kontakter upprepas några gånger per steg — matematiskt en Gauss–Seidel-relaxation.

Catto presenterade den runt 2006 och byggde Box2D kring den. Den är enkel att implementera, snäll mot cachen och lätt att varmstarta, vilket gjorde den till de facto-standard för 2D- och lättare 3D-fysik. Priset är att den är approximativ: fler iterationer ger styvare men aldrig perfekta kontakter.

← Tillbaka till lexikonet