DynaLab dynamika ramene

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Gravitace jako zrychlení základny

V Newtonově rovnici pro článek je člen m·g: tíha, kterou článek nese. Dá se to tak počítat a je to poctivé — jenže to znamená u každého článku znát, kam v jeho vlastním rámci gravitace míří, tedy pro každý článek přepočítat vektor g. To je při každém volání zbytečná práce navíc.

Existuje trik, který ji celou ušetří, a není to trik z numeriky — je to fyzika:

stojí na Zemia₀ = 0, každý článek nese m·gzrychluje vzhůru ve vesmírua₀ = −g, gravitace se nikde nepíšem·ga₀
Rameno uvnitř zavřené bedny nemá jak poznat, jestli stojí na Zemi, nebo jestli letí vesmírem a bedna zrychluje nahoru zrychlením g. Rekurze na tom je stejně.

Rozjeď základnu vzhůru zrychlením g a gravitaci pak nikde nepiš. Stačí do dopředného průchodu vstoupit s a₀ = −g místo nuly a všechny členy m·g ve zpětném průchodu vypustit. Vyjde přesně totéž.

a₀ = −g   ⟹   fi = fi+1 + mi·acigravitace se do výpočtu dostane jedním číslem na začátku

Funguje to proto, že tíhové a setrvačné síly jsou v pohybové rovnici nerozlišitelné. Tomu se říká princip ekvivalence a je to tentýž fakt, kvůli kterému se ve výtahu při rozjezdu cítíte těžší. Solver umí obě varianty a testy hlídají, že dávají shodný výsledek na strojovou přesnost — kdyby se někdy rozešly, je chyba v jedné z nich.

Statika je speciální případ, ne jiný výpočet

Dosaď do rovnic q̇ = 0 a q̈ = 0. Zbude jediný člen:

τ = g(q)moment, který rameno potřebuje, aby jenom stálo

Nemusí se tedy psát zvlášť statický výpočet — je to týž kód, jen se do něj pošlou nuly. To je zároveň nejlepší způsob, jak si dynamický řešič ověřit: statiku umíte spočítat ručně, jako součet momentů tíh kolem osy kloubu, a musí to sedět na všechny číslice.

Kontrola, kterou stojí za to udělat vždycky. Postav rameno vodorovně, vypni všechen pohyb a sečti ručně momenty tíh kolem osy prvního kloubu. Pokud to solver vrátí jinak, není chyba v dynamice — je v hmotnostech, v těžištích nebo ve znaménku gravitace. Dynamiku nemá cenu ladit, dokud statika nesedí.

A ještě jeden trik ze stejné rodiny

Když se do stejného vstupu pošle g = 0, dostaneme rameno „ve vesmíru": zbudou jen setrvačné a rychlostní členy. Právě tak se v šesté kapitole vytáhne z jednoho jediného výpočtu matice setrvačnosti — vypnutím gravitace a rychlostí. Rekurze je jeden nástroj, kterým se dá změřit i to, co v ní na první pohled není.

Vzorce v této kapitole

a₀ — gravitace vložená do základny
a₀ = −g [m/s²] De Luca, NE, slide 7
g(q) — statický moment
τ = g(q) při q̇ = q̈ = 0 [N·m] důsledek