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
570
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最適化計算/パラメータスタディーと FreeCADの連携についての調査
matsubaraDaisuke
March 03, 2018
More Decks by matsubaraDaisuke
See All by matsubaraDaisuke
Elmerに関する情報提供@オープンCAE勉強会@関東
matsubaradaisuke
1
1.4k
桜の花の落ちるスピードは秒速5センチメートルか? 〜OpenFOAM編〜
matsubaradaisuke
0
990
OpenFOAMの時間変化かつ分布を持つ 流入条件について(timeVaringMappedFixedValue)
matsubaradaisuke
0
1.5k
OpenFOAMの圧縮性流体ソルバー解説
matsubaradaisuke
0
2.5k
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
Making sense of Google’s agentic dev tools
glaforge
1
300
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.5k
OPENLOGI Company Profile for engineer
hr01
1
74k
そのドキュメント、自動化しませんか?
yuksew
1
400
Amplify Gen2でbackend.tsにCDKを定義する/しない事によるCDKの挙動の違いとユースケース
smt7174
1
480
発表と総括 / Presentations and Summary
ks91
PRO
0
180
Jitera Company Deck
jitera
0
260
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
410
現場との対話から始める “作る前に問い直す”業務改善
mochico50
1
190
AI工学特論: MLOps・継続的評価
asei
4
120
AICoEでAIネイティブ組織への進化
yukiogawa
0
210
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
30 Presentation Tips
portentint
PRO
1
350
Become a Pro
speakerdeck
PRO
31
6k
HDC tutorial
michielstock
2
750
Documentation Writing (for coders)
carmenintech
77
5.4k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
Practical Orchestrator
shlominoach
191
11k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Design in an AI World
tapps
1
260
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
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勉強会@関⻄