見出し画像

2020年度第11回デジラボ:ジオメトリ作成から多目的最適化まで-構造解析編-

 はじめに

北九大藤田研究室M1の齋藤です。今回から吉村パターン似の折版構造をジオメトリ作成からOpenSees for Grasshopperを利用して構造解析、さらに、Wallaceiを使ったひずみエネルギー最小化と表面積最大化の多目的最適化を全2回でお送りしたいと思います。
実際に応用数理学会コロキウム構造形態の解析と創生2020の形態創生コンテスト等ではこのGHの変数を増やしたり、shopbotでモックアップを作成しております。
※この回は2020年12月頃にrhino6で行った回ですが、rhino7でも実装できます。

準備

今回使用するコンポーネントはOpenSees for Grasshopper、Wallaceiです。
以下の記事を参考にダウンロード・インストールしてください。​
Wallaceiのインストール方法は前回のデジラボやAMDLabの森山さんが紹介しておりますので、省略させていただきます。
OpenSees for Grasshopper(2021年3月16日更新版)も同じようにインストールしてください。

ジオメトリ作成

画像3

無題3

ジオメトリを上のような形状を考えてGrasshopper上で作成します。
今回はこのようなGHでジオメトリ作成を行いました。

無題2

GH Python-コンバート

import math

Ang_out = math.pi /(Ptn-1) /2
Avg = cR * math.tan(Ang_out)

L = Avg * (2-SpL)
S = Avg * SpL

GH Python-従属数算出

import math
import ghpythonlib.components as gh

L /= 2
S /= 2
D = L-S
Avg = (L+S)/2
Ang_out = math.pi/(Ptn-1)/2
cnt = Ptn-1
               
Agl1 = math.pi - math.acos(D*math.tan(Ang_out)/W)
               
cR = gh.UnitX(-Avg/math.tan(Ang_out))
               
Ang_in = Ang_out*4
Aary1 = gh.Series(Ang_in  ,Ang_in,(Ptn-3)/2)
Aary2 = gh.Series(Ang_in/2,Ang_in,(Ptn-1)/2)
               
Y = math.sqrt(W**2-(D*math.tan(Ang_out))**2)
Stp = math.ceil(Ly*2/Y+1)/4
Y2ary = gh.UnitY(gh.Series(0,Y*2,Stp/2))
Y /= 2

GH Python-面作成

import ghpythonlib.components as gh

L /= 2
W /= 2
S /= 2

P1 = gh.ConstructPoint(-W, L,0)
P2 = gh.ConstructPoint( W, S,0)

S1 = gh.x4PointSurface(
   P1, P2,
   gh.ConstructPoint( W,-S,0),
   gh.ConstructPoint(-W,-L,0))
S2 = gh.x4PointSurface(
   P1, P2,
   gh.ConstructPoint( W, 0,0),
   gh.ConstructPoint(-W, 0,0))
   

ここでのポイントは、スライダーは手入力をすることで、小数点第6位までしか設定できなかったのが小数点第8位まで入力することができる所です。

構造解析

次にOpenSees for Grasshopperでの構造解析を行っていきたいと思います。
今回想定する材料は3層3プライ、90mmのCLTで、単位重量:4.0kN/㎥、ヤング係数:4.0e6kN/㎡です。直交異方性はOpensees for Grasshopperでは考慮できますが、今回は考慮しません。
以下のようにGHを作ります。

無題5

今回の動画

今回製作したもの

以下に今回の成果物をあげます。
追加で構造解析の支点がローラー支点や固定のものにできる機能もついてます。
※OpenSees for Grasshopperは2021年3月16日更新版を使用しており、バージョンによってはエラーで表示できない可能性がありますが、エラーとなった場合は、同じコンポーネントを新しく作り、置き換えてください。

終わりに

今回は吉村パターン似の折版構造をジオメトリ作成からOpenSees for Grasshopperを利用して構造解析まで行いました。
次回はWallaceiを使ったひずみエネルギー最小化と表面積最大化の多目的最適化を行いたいと思います。

参考になったサイト

Wallaceiホームページ
AMDlab社の記事
多目的最適化プラグインWallaceiについて~解析編~
多目的最適化プラグインWallaceiについて~解読編~
多目的最適化プラグインWallaceiについて~出力編~


この記事が気に入ったらサポートをしてみませんか?