凸のうみそ君の逆動力学講座

ミク様のおパンツ様を拝むために頑張っている過程です.
0
天使恵 @gauzau

@convexbrain ところで,貴方の例の物理simの奴はどうやって作ったか教えてたもれwwww 各剛体毎に運動方程式たてたの?

2011-05-03 00:39:27
インタネットマナティー @convexbrain

@gauzau いきなり話題がwww えーとですね、あれは運動方程式をたてるのもある程度PCにやらせてるんですよ。説明してるようなサイトあるかしら。。。

2011-05-03 00:43:12
インタネットマナティー @convexbrain

@gauzau もちろんラグランジアンとかで式立ててもいいんだけど、多分やってみたんだろうと思うけど、2関節の振子ですら解けない感じになるよね。つーわけで、ニュートン・オイラーの逆動力学演算というものを応用する手法がありますです。

2011-05-03 00:49:44
天使恵 @gauzau

@convexbrain 直接は解けない感じになって死んだw ラグランジアン立てつつ,組み合わせ最適化問題にしてなんとなく解けないかなぁとちらっと考えたけどわかんないwwwww

2011-05-03 00:51:37
インタネットマナティー @convexbrain

@gauzau オレオレなやつ、単なるバネダンパ系でいいんじゃないかと思う。

2011-05-03 00:50:51
天使恵 @gauzau

@convexbrain それも考えてるんだよねー.別に振り子である必然性はあんましないので.ただ,一応元モデルが振り子になっとるので,そちらの動作は把握したほうが良いという気になってきたw

2011-05-03 00:52:39
インタネットマナティー @convexbrain

@gauzau まず、逆動力学演算でできるのは、「逆」なので、入力として一般化座標(角度・位置)とその速度・加速度を与えると、出力として一般化力(トルク・力)がでてきます。(続く)

2011-05-03 01:03:33
インタネットマナティー @convexbrain

@gauzau 次に、先人の努力によってwww、多リンク系の力学系がH・α+b=τみたいに書けることがわかってます。ここで、αは一般化座標の加速度です。ただし、H、b、τは一般化座標・速度に依存しているので、書き下すとすると滅茶苦茶複雑な式になって死にますw

2011-05-03 01:13:19
インタネットマナティー @convexbrain

@gauzau この辺は、解析力学であってラグランジュやらハミルトンやらの功績だったと思うんですが忘れましたw ところでここまではOKなのか

2011-05-03 01:17:10
天使恵 @gauzau

@convexbrain ええと,多リンク系であわせてこの式が1本できるの?それとも,各剛体(と呼んでよいのか?)ごとにこの式ができる?つまり,剛体が1..nとして,添え字のiであらわすと,Hi ai + bi = τiなのか,Σ(Hi) ・ ai + Σbi = Στi なのか

2011-05-03 01:20:59
インタネットマナティー @convexbrain

@gauzau そうでした忘れてました。この式一本です。ですが、αはベクトルで一般化座標の数Nだけ要素があります。bやτもベクトル。HはN×N行列ですね。

2011-05-03 01:23:59
天使恵 @gauzau

@convexbrain んーと,たとえばデカルト座標の場合はα, b, τは3Nのベクトルで,Hが3N x 3Nということでよろしいのかな?

2011-05-03 01:29:30
インタネットマナティー @convexbrain

@gauzau Nをミクの関節の数として、伸び縮みしない(角度だけしか変わらない)と考えれば、そのとおりです。

2011-05-03 01:32:24
天使恵 @gauzau

@convexbrain 伸び縮みすると変わるのかwwwww 詳細は先の話を聴いてからの方がよさそうだなぁ.お願いしますw

2011-05-03 01:33:48
インタネットマナティー @convexbrain

@gauzau H・α+b=τ と書きましたが、イメージをもってもらうためにざっくり各項の役割をいうと、Hは質量・慣性、bは重力・遠心力・コリオリ力などの慣性力、τは外力や関節のトルクです。

2011-05-03 01:38:07
インタネットマナティー @convexbrain

@gauzau ma+mg=f のアナロジーで考えると分かりやすいすな。

2011-05-03 01:39:05
天使恵 @gauzau

@convexbrain あい,大変わかりやすいです.

2011-05-03 01:39:23
インタネットマナティー @convexbrain

@gauzau ここからがポイント。まず、bは重力をゼロとし、かつ一般化速度もゼロとすることで、完全に消えてなくなることが先人の努力によりwわかってます。その状態で、一般化座標を現在の値に設定、一般化加速度を要素i番目だけ1の単位ベクトルにして、逆動力学演算を行うとどうなるか。

2011-05-03 01:44:50
インタネットマナティー @convexbrain

@gauzau 結果のτとして、Hのi列目の値が出てきます。

2011-05-03 01:46:30
インタネットマナティー @convexbrain

@gauzau 一般化加速度を一要素ずつ1にして計算すると、Hの行列の値が求まります。

2011-05-03 01:48:57
インタネットマナティー @convexbrain

@gauzau 今度は、一般化加速度αをゼロに、一般化座標・速度を現在の値にして実行すると、τとしてbがまんま出てきます。こうしてHとbがもとまったので、あとは力・トルクτを好きな値にして、H・α+b=τを解けば、加速度αがでてきます。

2011-05-03 01:54:09
インタネットマナティー @convexbrain

@gauzau あとはオイラー法なりルンゲクッタ法なりを援用すれば順力学のシミュレーションができるという寸法です。

2011-05-03 01:55:25
天使恵 @gauzau

@convexbrain わかんなくなったwwwwwwww

2011-05-03 01:59:44
天使恵 @gauzau

@convexbrain なんか前提を勘違いしている気がしてきたw H ・ α + b = τで,Hとbが今不明で,これらを求めればあとは式をとくだけ,という話なんだよね?

2011-05-03 02:03:16