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
460
最適化計算/パラメータスタディーと FreeCADの連携についての調査
matsubaraDaisuke
March 03, 2018
Tweet
Share
More Decks by matsubaraDaisuke
See All by matsubaraDaisuke
Elmerに関する情報提供@オープンCAE勉強会@関東
matsubaradaisuke
1
1.1k
桜の花の落ちるスピードは秒速5センチメートルか? 〜OpenFOAM編〜
matsubaradaisuke
0
730
OpenFOAMの時間変化かつ分布を持つ 流入条件について(timeVaringMappedFixedValue)
matsubaradaisuke
0
1.3k
OpenFOAMの圧縮性流体ソルバー解説
matsubaradaisuke
0
2k
Other Decks in Technology
See All in Technology
第27回クラウド女子会 ~re:Invent 振り返りLT会~ 宣言型ポリシー、使ってみたらこうだった!
itkr2305
0
270
スクラムマスターの活動と組織からの期待のズレへの対応 / Dealing with the gap between Scrum Master activities and organizational expectations
pauli
2
970
Women in Agile
kawaguti
PRO
2
110
実践!生成AIのビジネス活用 / How to utilize Generative AI in your own business
gakumura
1
190
横断SREの立ち上げと、AWSセキュリティへの取り組みの軌跡
rvirus0817
3
3.6k
あなたはJVMの気持ちを理解できるか?
skrb
5
1.8k
[SRE kaigi 2025] ガバメントクラウドに向けた開発と変化するSRE組織のあり方 / Development for Government Cloud and the Evolving Role of SRE Teams
kazeburo
3
1.5k
サーバレスの未来〜The Key to Simplifying Everything〜
kawaji_scratch
2
330
サービスローンチを成功させろ! 〜SREが教える30日間の攻略ガイド〜
mmmatsuda
2
3.6k
PaaSの歴史と、 アプリケーションプラットフォームのこれから
jacopen
7
1.7k
メンバーがオーナーシップを発揮しやすいチームづくり
ham0215
2
340
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
140
Featured
See All Featured
Scaling GitHub
holman
459
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Embracing the Ebb and Flow
colly
84
4.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
11
890
Optimising Largest Contentful Paint
csswizardry
33
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
980
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Writing Fast Ruby
sferik
628
61k
The Pragmatic Product Professional
lauravandoore
32
6.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
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勉強会@関⻄