見出し画像

2020年度第5回デジラボ:Grasshopperのコンポーネント”Kangaroo2”の紹介-

はじめに

 北九大藤田研究室M1の森友です。今回はRhino/GHで物理演算のシミュレーションを可能にする"Kangaroo2"について紹介します。Kangaroo2はRhino6におけるGHではデフォルトで実装されているコンポーネントのため、別途インストールを行う必要はありません。今回作成するモデルのghファイルは下からダウンロードできます。

物理演算シミュレーションとは?

 物理演算とは質量・速度・摩擦・風などの力学的な法則をコンピュータ上でシミュレーションすることです。その他に流体やバネ、重力や衝突なども扱うことができます。一例としてカテナリー曲線の作成方法を示します。カテナリー曲線とは鎖やロープなどの両端をもって垂らした時にできる曲線です。つまりロープの両端は固定で重力のみが作用している状態の曲線ですのでKangaroo2でシミュレーションすることができます。

画像1

上図で示したようにKangaroo2を用いてカテナリー曲線を作成することができました。Kangaroo2はGoalsコンポーネントをMainコンポーネントにつなぐことでシミュレーションを実行することができます。下の図にカテナリー曲線を作成するために使用したGoalsコンポーネントとMainコンポーネントを示しています。

画像2

 左の赤で囲まれたコンポーネントはGoalsコンポーネントで、実行したい物理演算を指定するコンポーネントです。Anchorコンポーネントは入力された点を拘束するゴールオブジェクトで拘束したい点をPointにつなぐことで固定することができます。Length(Line)コンポーネントは入力された曲線を指定した長さの直線に変形するゴールオブジェクトです。Loadコンポーネントは入力された点にベクトルで指定した荷重を与えるゴールオブジェクトです。

 右の緑で囲まれたコンポーネントはMainコンポーネントで物理演算を実行するためのコンポーネントです。SolverコンポーネントはKangaroo2の標準ソルバーで特に演算の収束等にこだわりがない場合はこのコンポーネントを使用すると良いです。BouncySolverコンポーネントは演算がゆっくりと収束するソルバーです。GrabコンポーネントはSolverのGoalsObjectsにつなぐことでRhinoのビュー上でプレビューを変形させることができるコンポーネントです。ShowコンポーネントはSolverコンポーネントのGoalsObjectsにつなぐことでSolver実行後にO出力から変形後の結果を別のツリーとして出力することができるコンポーネントです。

グリッドシェルのモデリングと部材にかかるモーメントの可視化

 Kangaroo2の使用方法がわかったところで、Kangaroo2を用いたグリッドシェルのモデリングと部材にかかるモーメントの可視化をしたいと思います。

画像3

上図のプログラムでシェルのベースとなるグリッドを作成しています。

画像4

上図のプログラムでKangaroo2のGoalsObjectを作成し物理演算を実行しています。

画像5

上図が実行して作成できたグリッドシェルです。

画像6

上図のプログラムでグリッドシェルの曲げモーメントを可視化しています。今回は材料を鋼管として計算を行っています。Python Script内で断面二次モーメントとヤング係数を設定しています。

画像8

上図は部材にかかる曲げモーメントの可視化です。

詳しくは下記の動画を参照してください。


いいなと思ったら応援しよう!