Advertisement
Advertisement

More Related Content

Similar to DEXCS2022 for preCICE(20)

Advertisement
Advertisement

DEXCS2022 for preCICE

  1. オープンCAEコンサルタント OCSE^2 代表 野村悦治 2023/01/22 1 DEXCS2022 for preCICE の紹介
  2. 目次 1. preCICEとは 2. DEXCS for PreCICE とは 3. 旧版(DEXCS2020)からの更新点 a. 標準チュートリアル b. 同上、DEXCS同梱分 c. DEXCSオリジナルチュートリアル 4. 連成パラメタスタディ例 5. Tips & Questions 2
  3. preCICEとは ● Precise Code Interaction Coupling Environment ● ミュンヘン工科大学やシュ トゥットガルト大学の研究グループで開発 ● 汎用の連成計算ツール ● LGPL3 ライセンス ● 個々のソルバーに対してアダプターと呼ばれるライ ブラリをビルドすることによって,通信やマッピングと いった連成機能をソルバーの機能で直接実行 3 https://www.precice.org/index.html
  4. アダプター 4 https://www.precice.org/adapters-overview.html DEXCS for preCICEに収録
  5. DEXCS for preCICE とは 5
  6. DEXCS for OpenFOAMの狙い 誰でも簡単、すぐに、OpenFOAMを使える。 熱流体解析も出来るかも? よし、勉強しよう! ...という気持ちになってもらう インストールの手間 コマンド入力 Linux知識 不要 6
  7. DEXCS for preCICEの狙い 誰でも簡単、すぐに、preCICEを使える。 連成解析も出来るかも? よし、勉強しよう! ...という気持ちになってもらう インストールの手間 コマンド入力 Linux知識 不要 7
  8. ● 第 1 章 DEXCS for OpenFOAM ( DEXCS-OF ) とは ● 第 2 章 DEXCS ランチャーの使い方 ● 第 3 章 推奨メッシュ生成法 ● 第 4 章 簡単な構造解析 ● 第 5 章 DEXCS-OF の更新方法 ● 第 6 章 DEXCS-OF の拡張例-1 SLURM ● 第 6 章 DEXCS-OF の拡張例-2 Dakota ● 第 6 章 DEXCS-OF の拡張例-3 preCICE ● 付録 A DEXCS-OF のセットアップ方法 ● 付録 B DEXCS iso イメージの作成方法 DEXCS for preCICE(公開版)の経緯 8 2021/3/27 オープンCAE講習会 2021/6/26 オープンCAE講習会 DEXCS2020アドバンス版 DEXCS2020アドバンス版(改)
  9. DEXCS2022 for preCICEの概要 ● ベースOS:ubuntu-22.04 ● preCICE-2.5.0 ● OpenFOAM-2206 ● openfoam-adaptor-v1.2.1 ● CalculiX-2.20 ● calculix-adapter-v2.20.0 ● preCICE/tutorials ● ParaView 5.10.1 ● FreeCAD 0.20 ● PrePoMax v1.3.5 on wine-6.0.3 + ( .NetFramework 4.8 ) ● DEXCSランチャー ● DEXCSチュートリアル 9
  10. 標準チュートリアルの変更点 10 ● フォルダ構成が大きく変更 ● 実行方法も変更 ● 設定パラメタ表記方法が統一、設定ファイルの可読 性向上 ● DEXCS版カスタマイズも併せて変更 (一部動作不全のケース有り) ● 連成パラメタも一部変更された⇒新旧比較による パラメタスタディ
  11. フォルダ構成 11 /opt/preCICE/
  12. 標準チュートリアルの実行方法 12 Allrun を使用 Open two separate terminals and start the desired fluid and solid participant by calling the respective run script `run.sh` located in the participant directory. For example: ```bash cd fluid-openfoam ./run.sh ``` and ```bash cd solid-calculix ./run.sh ```
  13. 連成実行の仕組み (旧版) 13 <participant name="Fluid"> <participant name="Calculix"> 全実行スクリプト同梱されるも、難解
  14. 連成実行の仕組み /opt/preCICE/tutorials 14 <participant name="Fluid"> <participant name="Solid">
  15. フォルダ構成(DEXCS2020) 15 /opt/preCICE/ 実行方法(Allrunなど)カスタマイズ 連成計算設定パラメタは基本同一 Desktop /DEXCS /preciceLesson コピー後 フォルダ名を変更
  16. 16 フォルダ構成(DEXCS2022) /opt/preCICE/ Desktop /DEXCS /preciceLesson /preCICEtutorials /OpenFOAM-Calculix /FSI/ GUI実行方法(Allrunなど)カスタマイズ 連成計算設定パラメタは基本同一 階層構造を変更 フォルダ名は同一
  17. 標準チュートリアルの新旧比較 (DEXCS同梱分) 17 並列計算エラー 標準チュートリアルから削 除されたので旧版をカスタ マイズ収納 新規追加
  18. 連成実行の仕組み /Desktop/DEXCS /preCICE_Lesson /preCICEtutorials 18 <participant name="Fluid"> <participant name="Solid"> DEXCS追加 少々変更 連成パラメタ
  19. 連成パラメタ 19 openfoam calculix <precice-configuration> <log>….. </log> <solver-interface dimensions="2"> <data:vector name="Force" /> <data:vector name="Displacement" /> <mesh name="Fluid-Mesh"> <use-data name="Force" /> <use-data name="Displacement" /> </mesh> <mesh name="Solid-Mesh"> <use-data name="Displacement" /> <use-data name="Force" /> </mesh> <participant name="Fluid"> ….. <mapping:rbf-thin-plate-splines ….. </participant> <participant name="Solid"> ….. </participant> <m2n:sockets from="Fluid" to="Solid" exchange-directory=".." /> <coupling-scheme:parallel-implicit> ….. </coupling-scheme:parallel-implicit> </solver-interface> </precice-configuration> participants: Solid: interfaces: - nodes-mesh: Solid-Mesh patch: surface read-data: [Force] write-data: [Displacement] precice-config-file: ../precice-config.xml preciceConfig "../precice-config.xml"; participant Fluid; interfaces { Interface1 { mesh Fluid-Mesh; patches (flap); locations faceCenters; readData ( Displacement ); writeData ( Force ); }; }; preciceDict precice-config.xml config.yml
  20. 主要な連成パラメタ 20 data-name Force / Displacement / DisplacementDelta Fluid-Mesh Faces / Nodes の区別有無(Disp*) Solid-Mesh nodes-mesh / nodes-mesh-with-connectivity mapping nearest-naibor / nearest-mapping / rbf coupling-scheme serial / implicit
  21. 標準チュートリアルの新旧比較 21 2D_Flap 3D_Tube flap_perp perpendicular-flap 3D_Tube elastic-tube-3d data-name Displacement ← Displacement DisplacementDelta Fluid-Mesh Faces / Nodes 区別無し(Faces) Faces / Nodes ← Solid-Mesh mesh-node ← mesh-node -with-connectivity mapping rbf ← nearest-neigbor nearest-projection coupling-scheme serial-explicit parallel-implicit serial-implicit ← パラメタス タディ
  22. elastic-tube-3d 22 solid-mesh nodes-mesh nodes-mesh-with-connectivity data-neme Displacement Disp...Delta Displacement Disp...Delta fluid-mesh区別 有 無 有 無 有 無 有 無 serial iter 536 521 502 498 476 447 458 437 global 628 598 569 573 555 516 533 508 solid 478 454 435 435 420 388 402 386 fluid 101 94 88 91 87 84 83 79 paralle 2 4 iter 590 877 527 552 765 955 487 526 global 552 788 481 501 707 844 448 508 solid 440 641 379 400 566 690 349 398 fluid 55 78 45 48 78 84 45 54 イタレーション 回数 計算時間 sec Core™ i9-11900K 8 core 3.5GHz
  23. DEXCSチュートリアルの新旧比較 23 /Desktop/DEXCS Fluid:テトラ要素 Solid:(cgx?) 作成済みのメッシュ使用 形状・メッシュ変更可能 Fluid⇒DEXCSランチャー Solid⇒PrePoMax+DEXCS-FSI 形状、連成パラメタは同一 (除外:nodes-mesh-with-connectivity) Solid FreeCAD PrePoMax ↓ DEXCS-FSI
  24. DEXCSチュートリアル 24 Case 3D_Flap_perp 3D_Tube DEXCS2020 DEXCS2022 _dexcs _dexcs_shell elastictube_3d Fluid point 10,251 10,251 11,025 11,025 6,598 Cell 8,670 8,670 9,496 9,496 32,691 Solid node 936 684 3,631 1,160 8,072 Elem 443 292 1,780 568 3,946 serial iter 500 500 571 747 502 global 61 71 237 1,071 556 solid 32 22 223 1,061 425 fluid 29 47 79 100 86 paralle 2 4 iter 500 500 589 713 527 global 38 36 190 734 453 solid 25 19 182 724 364 fluid 12 15 37 42 42
  25. Tips & Questions ● .pmxファイルのアプリ関連付け ● *Cload指定の方法 ● PrePoMax節点表示の問題 ● シェル計算について 25
  26. *Cload指定の方法 26 *CLOAD ** ConstraintForce ** node loads on shape: Fluid_flap:Face6 2,3,0.0000000000000E+00 4,3,0.0000000000000E+00 6,3,0.0000000000000E+00 8,3,0.0000000000000E+00 9,3,0.0000000000000E+00 10,3,0.0000000000000E+00 11,3,0.0000000000000E+00 12,3,0.0000000000000E+00 13,3,0.0000000000000E+00 14,3,0.0000000000000E+00 102,3,3.9032555908088E-02 103,3,4.3829361253605E-02 104,3,4.4209382258782E-02 105,3,3.9595367246191E-02 106,3,3.9595367246191E-02 107,3,4.1619075174133E-02 108,3,4.1571483681599E-02 109,3,4.1809441144268E-02 110,3,4.1666666666667E-02 111,3,3.9032555908088E-02 158,3,8.0651631082221E-02 159,3,8.5448436427737E-02 160,3,8.5400844935204E-02 161,3,8.6018823403051E-02 162,3,8.5876048925449E-02 163,3,8.1262033912858E-02 164,3,8.3380924825867E-02 *Cload 162, 1, 8.58760489E-002 161, 1, 8.60188234E-002 104, 1, 4.42093823E-002 164, 1, 8.33809248E-002 108, 1, 4.15714837E-002 160, 1, 8.54008449E-002 111, 1, 3.90325559E-002 102, 1, 3.90325559E-002 158, 1, 8.06516311E-002 159, 1, 8.54484364E-002 103, 1, 4.38293613E-002 107, 1, 4.16190752E-002 163, 1, 8.12620339E-002 105, 1, 3.95953672E-002 106, 1, 3.95953672E-002 109, 1, 4.18094411E-002 110, 1, 4.16666667E-002 *Nset, Nset=Nsurface 2, 4, 6, 8, 9, 10, 11, 12, 13, 14, 102, 103, 104, 105, 106, 107, ….. *CLOAD Nsurface, 1, 0.0 Nsurface, 2, 0.0 Nsurface, 3, 0.0 同一 DEXCS-FSI 改定版 26
  27. PrePoMax節点表示の問題 27 選択中 選択確定
  28. 28 3 px 10 px
  29. 29
  30. Case 3D_Flap_perp 3D_Tube DEXCS2020 DEXCS2022 _dexcs _dexcs_shell elastictube_3d Fluid point 10,251 10,251 11,025 11,025 6,598 Cell 8,670 8,670 9,496 9,496 32,691 Solid node 936 684 3,631 1,160 8,072 Elem 443 292 1,780 568 3,946 serial iter 500 500 571 747 502 global 61 71 237 1,071 556 solid 32 22 223 1,061 425 fluid 29 47 79 100 86 paralle 2 4 iter 500 500 589 713 527 global 38 36 190 734 453 solid 25 19 182 724 364 fluid 12 15 37 42 42 シェル計算について 30 Solid Shell
  31. PrePoMax(Calculix)での静解析 31 Solid Shell 計算時間 0.9 〜1.1 sec 計算時間 1.1 〜1.3 sec
  32. シェル計算 について 32 In CalculiX, six-node shell elements are expanded into three-dimensional wedge elements. https://web.mit.edu/calculix_v2.7/CalculiX/ccx_2.7/doc/ccx/node38.html#c2d6
  33. solid-calculix.log(1/2) 33 The numbers below are estimated upper bounds number of: nodes: 3631 elements: 1780 one-dimensional elements: 0 two-dimensional elements: 0 integration points per element: 15 degrees of freedom per node: 3 layers per element: 1 distributed facial loads: 0 distributed volumetric loads: 0 concentrated loads: 3516 single point constraints: 972 multiple point constraints: 1 terms in all multiple point constraints: 1 tie constraints: 0 dependent nodes tied by cyclic constraints: 0 dependent nodes in pre-tension constraints: 0 The numbers below are estimated upper bounds number of: nodes: 37512 elements: 568 one-dimensional elements: 0 two-dimensional elements: 568 integration points per element: 9 degrees of freedom per node: 3 layers per element: 1 distributed facial loads: 0 distributed volumetric loads: 0 concentrated loads: 13920 single point constraints: 42048 multiple point constraints: 68161 terms in all multiple point constraints: 436225 tie constraints: 0 Solid Shell tube.inpファイル より読み取った値
  34. average force= 0.000167 time avg. forc= 0.000135 largest residual force= 0.000000 in node 3513 and dof 1 largest increment of disp= 5.527067e-06 largest correction to disp= 4.581488e-12 in node 550 and dof 1 convergence solid-calculix.log(2/2) 34 Solid average force= 0.000446 time avg. forc= 0.000351 largest residual force= 0.000001 in node 301 and dof 2 largest increment of disp= 4.396705e-02 largest correction to disp= 1.076014e-04 in node 6454 and dof 1 convergence Shell
  35. 35 Solid Shell PrePoMaxでの内圧負荷計算
  36. Let’s smart OpenCAE presented by 36
Advertisement