HomeAboutMeArticlesDiaryModelViewerLinksContact

DynamoとReact Structures を使った単純梁の解析

24 January, 2016 - 1 min read - Tags: BIM,Dynamo,ReactStructures,構造とデジタル

Autodesk の Dynamo BIM と最近開発されている ReactStructures を使用して単純梁のモデル化から解析までの一連の解説を行います。
ReactStructuresのホームページをみると、

構造解析について考え直すときなんじゃない?(Time to Rethink Structural analysis?)

と題されており、今後開発に期待しています。

では、React Structures についてから説明します。このソフトは、Autodesk が現在開発している構造解析用のソフトで、同じく Autodesk の BIM ソフトの Revit との連携性を高めたソフトになっています。
また VisualPrograming ソフトの DynamoBIM ともネイティブで対応しているため、パラメトリックな構造解析を簡単に行えるようになっています。
この2点が、Autodesk が「構造解析について考え直すときなんじゃない?」と言っている所以のようで、これまであった解析の手戻り(意匠との不整合、モデルの変更)を解決する機能ということのようです。
現在はテクニカルプレビュー 2 となっており、フリーで使用することができます。2015 年の 5 月まであった Autodesk の Vasari のように、いずれ有料版になっていくことが考えられます。

ソフトに関しての説明は以上として、さっそくソフトの使いかたとモデル化を行っていきます。まずは ReactStructures を起動します。

右から 2 番目の Dynamo を起動します。Dynamo は grasshopper とおなじ VisualPrograming のソフトです。大きく異なることが、Dynamo は独立したソフトなので grasshopper がモデル化したものを rhino 上で図示するものに対し、Dynamo はノード(grasshopper のコンポーネントにあたるもの)を配置する空間の後ろに、モデルのビューアーが存在します。
まずは、Dynamo に ReactStructures と連携するためにパッケージをインストールします。Dynamo の Packages から Search for a Package を選択し、「Structural Analysis for Dynamo」を検索しインストールします。

インストールが完了したら、モデル化を行います。今回は単純梁の解析を目的にしているので、ラインの作成を行います。number slider と Point.ByCoordinates を使用してポイントを作成します。インターフェースの違いや操作法、名称の違いはあるものの、おおよそ grasshopper と同じような形でラインは作成できます。

作成したポイントは Line.ByStartPointEndPoint を使用します。始点と終点を接続することによってラインが作成できます。
作成したラインは AnalyticalBar.ByLine につなげることで、解析用の梁要素を作成します。karamba でいうところの Line to Beam コンポーネントに該当する部分です。
次に梁要素に断面を与えます。断面は AnalyticalBar.SetSectionByName を使用します。analyticalBar には作成した梁要素を、name には梁の断面名を入力します。ここで Section ノードを使用することでドロワー形式で断面を選ぶことができます。このドロワーの中身は ReactStructures の中で定義した断面なので、ReactStructures 上で断面の定義を増やせば、こちらも即時に反映されます。

次に境界条件の作成を行います。境界条件は AnalyticalNode.SetSupportByName を使用して定義します。境界条件は節点に対して定義するので、解析用の節点(AnalyticalNode)を作成する必要があります。AnalyticalNode.ByPoint を使用して、梁の端部にあたる2点に節点を作成します。境界条件は Support ノードを使用して設定します。

次に荷重を作成します。今回は梁に対して等分布荷重を与えることとします。等分布荷重は UniformMemberLoad.ByBar を使用します。analyticalBars には先程作成した梁要素を入れます。ここでは、二つの要素をまとめて扱うために一度 List ノードでひとまとめにしてから入力しています。
荷重は設定するに当たり、荷重ケースを設定する必要があります。ケースの設定は LoadCase.ByNatureAndType を使用して設定します。今回は固定荷重(Dead)、タイプはシンプル、荷重ケースの名前はそのまま"Dead"としています。

これでモデルの作成が終わったので、解析を行います。karamba での Assemble Model コンポーネントのようなものはないため、List ノードを使用してひとまとめにします。まとめた後は、データの階層が分かれていると同一のデータとみなさないので、karamba でもよく使用する Flatten ノードを使用します。そして作成したデータを Analysis.Calculate に接続します。これで Dynamo での作業は終りです。Dynamo の左下にある部分が作成したものを実行する方法を示しており、もし Auto ではなく Manual になっていたら Run(実行)しておきましょう。

モデル化がうまくいっていいれば ReactStructures の3 D View のタブには以下のようなモデルができているはずです。

Dyanamo で解析は実行してあるので、こちらで解析実行ボタンのようなものを押す必要はありません。上のリボンの中にある Results タブを選択することで解析結果をみることができます。曲げモーメントを出力する場合は、Result タブの中の BeamDiagrams を選択し、BendingMoment を選択することで、解析結果が出力されます。

ReactStructures と Dynamo を使用した単純梁のモデル化と解析は以上となります。
今回は ReactStructures 上で解析結果を確認しましたが、もちろん Dynamo 上でも結果を取得することが可能です。また ReactStructures の Model タブの中には RevitLink ボタンがあり、これを使用することで、今後 Revit ともシームレスにつながっていくようになるのだと考えられます。

BIM は今後設計に大きな影響を与えるツールですので、今後も定期的に Dynamo と React Structures の記事を作成していきたいと思います。

© 2021 hrntsm / Built with

Gatsby