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
- 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
- 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
```
- 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
- 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
- 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
- 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
- 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