Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
最適化計算/パラメータスタディーと FreeCADの連携についての調査
Search
matsubaraDaisuke
March 03, 2018
Technology
0
540
最適化計算/パラメータスタディーと FreeCADの連携についての調査
matsubaraDaisuke
March 03, 2018
Tweet
Share
More Decks by matsubaraDaisuke
See All by matsubaraDaisuke
Elmerに関する情報提供@オープンCAE勉強会@関東
matsubaradaisuke
1
1.3k
桜の花の落ちるスピードは秒速5センチメートルか? 〜OpenFOAM編〜
matsubaradaisuke
0
920
OpenFOAMの時間変化かつ分布を持つ 流入条件について(timeVaringMappedFixedValue)
matsubaradaisuke
0
1.5k
OpenFOAMの圧縮性流体ソルバー解説
matsubaradaisuke
0
2.4k
Other Decks in Technology
See All in Technology
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
420
Tebiki Engineering Team Deck
tebiki
0
23k
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
1.9k
しろおびセキュリティへ ようこそ
log0417
0
270
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
Webhook best practices for rock solid and resilient deployments
glaforge
1
210
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
200
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
650
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
270
分析画面のクリック操作をそのままコード化 ! エンジニアとビジネスユーザーが共存するAI-ReadyなBI基盤
ikumi
0
130
KubeCon + CloudNativeCon NA ‘25 Recap, Extensibility: Gateway API / NRI
ladicle
0
170
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
0
73
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
70
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Optimizing for Happiness
mojombo
379
71k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Deep Space Network (abreviated)
tonyrice
0
44
My Coaching Mixtape
mlcsv
0
45
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1.1k
Transcript
最適化計算/パラメータスタディーと FreeCADの連携についての調査 2018/3/3 1 第64回 オープンCAE勉強会@関⻄ 松原 ⼤輔 2018年3⽉3⽇ 第64回
オープンCAE勉強会@関⻄
2 はじめに ・最適化とは? 構造、⼨法、状態、⽅法、過程などを最も⽬的に良く 合致させること。 ・最適化の種類 a)パラメータ最適化:⼨法や物性を最適化 b)ノンパラメトリック最適化:形状や位相を最適化 2018/3/3 第64回
オープンCAE勉強会@関⻄ ※引⽤ オープンCAE学会員 SH⽒ パラメータ⾃動最適化ツール DAKOTAの紹介
3 オープンソースの最適化ソフト ・DAKOTA サンディア国⽴研究所で開発された. 最適化設計、感度解析、不確実性評価、較正の機能が 搭載されている. ・OpenMDAO NASAグレンリーチセンターで開発された. Pythonベースである. ノンパラメトリック対応?
2018/3/3 第64回 オープンCAE勉強会@関⻄
4 最適化ソフト+CAE ソルバー モーフィング モデリング メッシング 最適化ソフト or OpenFOAM Calculix
etc.. 計算結果 パラメータ 2018/3/3 第64回 オープンCAE勉強会@関⻄
※OF+DAKOTAによる形状最適化の事例紹介 若嶋⽒ 5 オープンソースのCAE+最適化の現状 2018/3/3 流体解析では モデリングとメッシングにblockMeshを、⽤いた例が 公開されている(※)。 さらに複雑な形状や設計意図を⼊れたモデルを 最適化に使いたい。
FreeCADが有効かも 第64回 オープンCAE勉強会@関⻄
6 FreeCADとは オープンソース(LGPLライセンス)の汎用3D-CADモデラー 非GUIによる操作も可能 2018/3/3 出典: https://ja.wikipedia.org /wiki /FreeCAD 第64回
オープンCAE勉強会@関⻄
7 最適化ソフト+CFD モデリング FreeCAD 最適化ソフト ソルバー OpenFOAM Calculix etc.. 計算結果
パラメータ 2018/3/3 メッシング cfMesh snappyHexMesh 今回はここ 第64回 オープンCAE勉強会@関⻄
8 FreeCADでスクリプトからモデリング 2018/3/3 環境 OS: WINDOWS10 やりたいこと スクリプトからFreeCADのモデルのパラメータ⼨法を 指定し、STLデータを吐き出す FreeCAD
0.16 第64回 オープンCAE勉強会@関⻄
9 FreeCADでスクリプトからモデリング ⽅法2 ある程度の形状をCADで作成しておき、 いくつかの⼨法をパラメータ化 スクリプトからパラメータを制御 →設計意図を反映できる◦ 2018/3/3 方法1 形状全てをスクリプトで作成
→複雑な形状に対応できないので、ボツ❌ 第64回 オープンCAE勉強会@関⻄
10 FreeCADでスクリプトからモデリング 2018/3/3 プリミティブな形状でテスト(右図) データ構成 FreeCAD.py ←スクリプト test.FCStd ←CADデータ test1.stl
←width=1の出⼒結果 test2.stl ←width=10の出⼒結果 第64回 オープンCAE勉強会@関⻄
11 FreeCADでスクリプトからモデリング 2018/3/3 Spreadsheetを追加 当座の寸法 セル→右クリック→プロパティ パラメータ寸法の追加 スケッチで指定するときの名前を記入 Desktop/test.FCstd 第64回
オープンCAE勉強会@関⻄
12 FreeCADでスクリプトからモデリング 2018/3/3 丸い記号をクリック Lengthに対して Widthに対して Desktop/test.FCstd スケッチにて 第64回 オープンCAE勉強会@関⻄
13 FreeCADでスクリプトからモデリング 2018/3/3 FREECADPATH =“C:¥¥Program Files¥¥FreeCAD 0.16¥bin” import sys Sys.path.append(FREECADPATH)
import FreeCAD FreeCAD.open(u”C:/Users/**/Desktop/test.FCStd”) App.setActiveDocument(“test”) … Desktop/FreeCAD.py 第64回 オープンCAE勉強会@関⻄
14 FreeCADでスクリプトからモデリング 2018/3/3 … App.ActiveDocument.Spreadsheet.set(‘width’,’1’) App.ActiveDocument.recompute() __objs__=[] __objs__.append(FreeCAD.getDocument(“test”).getObject(“Pad”) Import Mesh
Mesh.export(__objes__,u”C:/Users/**/Desktop/test1.stl”) … Desktopにtest1.stlとして出力 width=1に変更 第64回 オープンCAE勉強会@関⻄
15 FreeCADでスクリプトからモデリング 2018/3/3 … App.ActiveDocument.Spreadsheet.set(‘width’,’10’) App.ActiveDocument.recompute() __objs__.append(FreeCAD.getDocument(“test”).getObject(“Pad”) Mesh.export(__objes__,u”C:/Users/**/Desktop/test2.stl”) width=10に変更 Desktopにtest2.stlとして出力
第64回 オープンCAE勉強会@関⻄
16 スクリプトの実行 2018/3/3 … Desktopからスクリプトを起動 C:¥Users¥**¥Desktop >”C:¥Program Files¥FreeCAD 0.16¥bin¥python” FreeCAD.py
FreeCADのPython 第64回 オープンCAE勉強会@関⻄
17 出力結果 2018/3/3 test1.stl (width=1) test2.stl (width=10) 第64回 オープンCAE勉強会@関⻄
18 まとめ 2018/3/3 ・FreeCADの非GUI操作から形状変更を行なった. ・全ての形状をスクリプトでつくるのではなく、 作成済のデータの一部をパラメータ寸法化することで、 複雑な形状に対応できる可能性を示した. ・ 今後は、最適化ソフトと連動させた例を紹介していきたい. 第64回
オープンCAE勉強会@関⻄