წრფივი სტატიკური ანალიზი (ელასტიკურობა, პარალელური)¶
სტატიკური ანალიზის (ელასტიკურობა) 4 პარალელურ პროცესად შესასრულებლად გამოიყენეთ tutorial/02_elastic_hinge_parallel-ის მონაცემები.
საანალიზო ობიექტი¶
| პუნქტი | აღწერა | შენიშვნა | მითითება |
|---|---|---|---|
| ანალიზის ტიპი | წრფივი სტატიკური ანალიზი | !SOLUTION,TYPE=STATIC | |
| კვანძების რაოდენობა | 84,056 | ||
| ელემენტების რაოდენობა | 49,871 | ||
| ელემენტის ტიპი | 10-კვანძიანი მეორე რიგის ტეტრაედრული ელემენტი | !ELEMENT,TYPE=342 | ელემენტების ბიბლიოთეკა |
| მასალის თვისებების სახელი | STEEL | !MATERIAL,NAME=STEEL | მასალის მონაცემები |
| მასალის თვისება | ELASTIC | !ELASTIC | |
| სასაზღვრო პირობა | შეზღუდვა, კონცენტრირებული დატვირთვა | ||
| მატრიცული ამოხსნის მეთოდი | CG/SSOR | !SOLVER,METHOD=CG,PRECOND=1 |

ანალიზის შინაარსი¶
გაშალეთ FrontISTR-ის კოდი, გადადით ამ მაგალითის დირექტორიაში და დარწმუნდით, რომ არსებობს ანალიზისთვის საჭირო შემდეგი ფაილები:
| ფაილის სახელი | ტიპი | დანიშნულება |
|---|---|---|
| hecmw_ctrl.dat | საერთო საკონტროლო მონაცემები | |
| hinge.cnt | ანალიზის საკონტროლო მონაცემები | |
| hinge.msh | ბადის მონაცემები | |
| hecmw_part_ctrl.dat | დომენებად დაყოფის საკონტროლო მონაცემები | საკონტროლო მონაცემები hecmw_part1-ით ბადის მონაცემების დომენებად დაყოფისას |
შესრულების შედეგი:
შეზღუდეთ დამაგრების ზედაპირის გადაადგილება და შეასრულეთ ძაბვის ანალიზი, რომელშიც დატვირთვის ზედაპირზე კონცენტრირებული დატვირთვა მოქმედებს.
საერთო საკონტროლო მონაცემები, ანალიზის საკონტროლო მონაცემები და დომენებად დაყოფის საკონტროლო მონაცემები ნაჩვენებია ქვემოთ.
საერთო საკონტროლო მონაცემები hecmw_ctrl.dat¶
#
# for partitioner
#
!MESH, NAME=part_in,TYPE=HECMW-ENTIRE # hecmw_part1で分割する元のメッシュデータ
hinge.msh
!MESH, NAME=part_out,TYPE=HECMW-DIST # hecmw_part1で分割した後のファイル名
hinge_4
#
# for solver
#
!MESH, NAME=fstrMSH, TYPE=HECMW-DIST # 分割メッシュデータを指定
hinge_4
!CONTROL, NAME=fstrCNT # 解析制御データを指定
hinge.cnt
!RESULT, NAME=fstrRES, IO=OUT # 結果データを指定
hinge.res
!RESULT, NAME=vis_out, IO=OUT # 可視化データを指定
hinge_vis
ანალიზის საკონტროლო მონაცემები hinge.cnt¶
# Control File for FISTR
## Analysis Control
!VERSION # ファイルフォーマットのバージョンを指定
3
!SOLUTION, TYPE=STATIC # 解析の種別を指定
!WRITE,RESULT # 結果データ出力の指定
!WRITE,VISUAL # 可視化データの出力を指定
## Solver Control
### Boundary Condition
!BOUNDARY
BND0, 1, 3, 0.000000 # 拘束面1を指定
!BOUNDARY
BND1, 1, 3, 0.000000 # 拘束面2を指定
!CLOAD
CL0, 1, 0.01000 # 強制面を指定
### Material
!MATERIAL, NAME=STEEL # 材料物性の指定
!ELASTIC # 弾性物質の定義
210000.0, 0.3
!DENSITY # 質量密度の定義
7.85e-6
### Solver Setting
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=YES,TIMELOG=YES # ソルバーの制御
10000, 2
1.0e-08, 1.0, 0.0
## Post Control
!VISUAL,method=PSR # 可視化手法の指定
!surface_num=1 # 1つのサーフェースレンダリング内のサーフェース数
!surface 1 # サーフェースの内容の指定
!output_type=VTK # 可視化ファイルの型の指定
!END # 解析制御データの終わりを示す
დომენებად დაყოფის საკონტროლო მონაცემები hecmw_part_ctrl.dat¶
ანალიზის პროცედურა¶
FrontISTR-ის MPI-ით გასაშვებად ჯერ ბადის მონაცემები hinge.msh დაყავით 4 დომენად.
შესრულების შედეგი:
Oct 07 11:04:52 Info: Reading mesh file...
Oct 07 11:04:52 Info: Starting domain decomposition...
Oct 07 11:04:52 TH(0/8) Info: Creating local mesh for domain #0 ...
Oct 07 11:04:52 TH(2/8) Info: Creating local mesh for domain #1 ...
Oct 07 11:04:52 TH(6/8) Info: Creating local mesh for domain #2 ...
Oct 07 11:04:52 TH(7/8) Info: Creating local mesh for domain #3 ...
Oct 07 11:04:52 Info: Domain decomposition done
ახლად შეიქმნება ფაილები hinge_4.x და part.inp.
შესრულების შედეგი:
hecmw_ctrl.dat hecmw_part_ctrl.dat hinge.msh hinge_4.1 hinge_4.3
hecmw_part.log hinge.cnt hinge_4.0 hinge_4.2 part.inp
შემდეგ MPI-ის გამოყენებით გაუშვით FrontISTR-ის შესრულების ბრძანება fistr1.
(შესრულება 4 MPI პარალელური პროცესით და 1 OpenMP ნაკადით)
##################################################################
# FrontISTR #
##################################################################
---
version: 5.1.0
git_hash: acab000c8c633b7b9d596424769e14363f720841
build:
date: 2020-10-05T07:39:55Z
MPI: enabled
OpenMP: enabled
option: "-p --with-tools --with-refiner --with-metis --with-mumps --with-lapack --with-ml --with-mkl "
HECMW_METIS_VER: 5
execute:
date: 2020-10-07T11:07:21+0900
processes: 4
threads: 1
cores: 4
host:
0: flow-p06
1: flow-p06
2: flow-p06
3: flow-p06
---
...
Step control not defined! Using default step=1
fstr_setup: OK
Start visualize PSF 1 at timestep 0
loading step= 1
sub_step= 1, current_time= 0.0000E+00, time_inc= 0.1000E+01
loading_factor= 0.0000000 1.0000000
### 3x3 BLOCK CG, SSOR, 2
1 2.183567E+00
2 2.423900E+00
3 2.939117E+00
...
2084 1.158654E-08
2085 1.032414E-08
2086 9.436273E-09
### Relative residual = 9.43589E-09
### summary of linear solver
2086 iterations 9.435886E-09
set-up time : 4.695220E-02
solver time : 7.103976E+01
solver/comm time : 1.929294E+01
solver/matvec : 1.544405E+01
solver/precond : 3.243278E+01
solver/1 iter : 3.405549E-02
work ratio (%) : 7.284205E+01
Start visualize PSF 1 at timestep 1
### FSTR_SOLVE_NLGEOM FINISHED!
====================================
TOTAL TIME (sec) : 72.42
pre (sec) : 0.29
solve (sec) : 72.13
====================================
FrontISTR Completed !!
როდესაც გამოჩნდება FrontISTR Completed !!, ანალიზი დასრულებულია.
ანალიზის შედეგები¶
ანალიზის დასრულების შემდეგ რამდენიმე ახალი ფაილი შეიქმნება.
შესრულების შედეგი:
0.log FSTR.dbg.3 hinge.cnt hinge.res.2.1 hinge_vis_psf.0000
1.log FSTR.msg hinge.msh hinge.res.3.0 hinge_vis_psf.0000.pvtu
2.log FSTR.sta hinge.res.0.0 hinge.res.3.1 hinge_vis_psf.0001
3.log hecmw_ctrl.dat hinge.res.0.1 hinge_4.0 hinge_vis_psf.0001.pvtu
FSTR.dbg.0 hecmw_part.log hinge.res.1.0 hinge_4.1 part.inp
FSTR.dbg.1 hecmw_part_ctrl.dat hinge.res.1.1 hinge_4.2
FSTR.dbg.2 hecmw_vis.ini hinge.res.2.0 hinge_4.3
*.res.* ეწოდება შედეგების მონაცემებს და შეიცავს FrontISTR-ის ანალიზის შედეგებს თითოეული MPI კვანძისთვის. მათი ჩვენება შესაძლებელია REVOCAP_PrePost-ისა და მსგავსი პროგრამების საშუალებით.
*_vis_* ეწოდება ვიზუალიზაციის მონაცემებს და მათი ჩვენება შესაძლებელია ზოგადი დანიშნულების ვიზუალიზაციის პროგრამებით. ამ მაგალითში გამომავალი მონაცემები VTK ფორმატშია, ამიტომ საჩვენებლად გამოიყენეთ ParaView ან მსგავსი პროგრამა.

ანალიზის შედეგების ჟურნალი 0.log¶
fstr_setup: OK
#### Result step= 0
##### Local Summary @Node :Max/IdMax/Min/IdMin####
//U1 0.0000E+00 1 0.0000E+00 1
//U2 0.0000E+00 1 0.0000E+00 1
//U3 0.0000E+00 1 0.0000E+00 1
//E11 0.0000E+00 1 0.0000E+00 1
//E22 0.0000E+00 1 0.0000E+00 1
//E33 0.0000E+00 1 0.0000E+00 1
//E12 0.0000E+00 1 0.0000E+00 1
//E23 0.0000E+00 1 0.0000E+00 1
//E31 0.0000E+00 1 0.0000E+00 1
//S11 0.0000E+00 1 0.0000E+00 1
//S22 0.0000E+00 1 0.0000E+00 1
//S33 0.0000E+00 1 0.0000E+00 1
//S12 0.0000E+00 1 0.0000E+00 1
//S23 0.0000E+00 1 0.0000E+00 1
//S31 0.0000E+00 1 0.0000E+00 1
//SMS 0.0000E+00 1 0.0000E+00 1
##### Local Summary @Element :Max/IdMax/Min/IdMin####
//E11 0.0000E+00 1 0.0000E+00 1
//E22 0.0000E+00 1 0.0000E+00 1
//E33 0.0000E+00 1 0.0000E+00 1
//E12 0.0000E+00 1 0.0000E+00 1
//E23 0.0000E+00 1 0.0000E+00 1
//E31 0.0000E+00 1 0.0000E+00 1
//S11 0.0000E+00 1 0.0000E+00 1
//S22 0.0000E+00 1 0.0000E+00 1
//S33 0.0000E+00 1 0.0000E+00 1
//S12 0.0000E+00 1 0.0000E+00 1
//S23 0.0000E+00 1 0.0000E+00 1
//S31 0.0000E+00 1 0.0000E+00 1
//SMS 0.0000E+00 1 0.0000E+00 1
##### Global Summary @Node :Max/IdMax/Min/IdMin####
//U1 0.0000E+00 14 0.0000E+00 14
//U2 0.0000E+00 14 0.0000E+00 14
//U3 0.0000E+00 14 0.0000E+00 14
//E11 0.0000E+00 14 0.0000E+00 14
//E22 0.0000E+00 14 0.0000E+00 14
//E33 0.0000E+00 14 0.0000E+00 14
//E12 0.0000E+00 14 0.0000E+00 14
//E23 0.0000E+00 14 0.0000E+00 14
//E31 0.0000E+00 14 0.0000E+00 14
//S11 0.0000E+00 14 0.0000E+00 14
//S22 0.0000E+00 14 0.0000E+00 14
//S33 0.0000E+00 14 0.0000E+00 14
//S12 0.0000E+00 14 0.0000E+00 14
//S23 0.0000E+00 14 0.0000E+00 14
//S31 0.0000E+00 14 0.0000E+00 14
//SMS 0.0000E+00 14 0.0000E+00 14
##### Global Summary @Element :Max/IdMax/Min/IdMin####
//E11 0.0000E+00 14 0.0000E+00 14
//E22 0.0000E+00 14 0.0000E+00 14
//E33 0.0000E+00 14 0.0000E+00 14
//E12 0.0000E+00 14 0.0000E+00 14
//E23 0.0000E+00 14 0.0000E+00 14
//E31 0.0000E+00 14 0.0000E+00 14
//S11 0.0000E+00 14 0.0000E+00 14
//S22 0.0000E+00 14 0.0000E+00 14
//S33 0.0000E+00 14 0.0000E+00 14
//S12 0.0000E+00 14 0.0000E+00 14
//S23 0.0000E+00 14 0.0000E+00 14
//S31 0.0000E+00 14 0.0000E+00 14
//SMS 0.0000E+00 14 0.0000E+00 14
#### Result step= 1
##### Local Summary @Node :Max/IdMax/Min/IdMin####
//U1 7.4906E-03 50978 -6.9368E-04 51989
//U2 6.1150E-05 2426 -1.2781E-04 40202
//U3 1.8720E-04 2712 -5.5024E-03 67858
//E11 1.3024E-03 28591 -1.2844E-03 28580
//E22 2.1102E-04 24593 -2.0594E-04 205
//E33 6.8634E-04 51036 -5.9603E-04 67794
//E12 5.2186E-04 209 -5.4559E-04 28641
//E23 2.5417E-04 28521 -3.2956E-04 187
//E31 7.2396E-04 36168 -9.5847E-04 28591
//S11 3.6844E+02 28591 -3.6387E+02 28580
//S22 1.5841E+02 28591 -1.5743E+02 28580
//S33 1.5959E+02 51036 -1.5643E+02 28580
//S12 4.2150E+01 209 -4.4067E+01 28641
//S23 2.0529E+01 28521 -2.6618E+01 187
//S31 5.8474E+01 36168 -7.7415E+01 28591
//SMS 2.5134E+02 28591 3.5157E-02 12726
##### Local Summary @Element :Max/IdMax/Min/IdMin####
//E11 1.0115E-03 9959 -9.7870E-04 9942
//E22 1.5457E-04 13694 -1.4639E-04 7189
//E33 5.9415E-04 44563 -5.0497E-04 47965
//E12 3.5513E-04 9579 -3.9083E-04 9600
//E23 2.0608E-04 9563 -2.3480E-04 9589
//E31 5.7633E-04 43142 -4.8019E-04 9571
//S11 2.6038E+02 9573 -2.5605E+02 9571
//S22 1.0144E+02 9573 -1.0100E+02 9571
//S33 1.3921E+02 44569 -1.1431E+02 47974
//S12 2.8683E+01 9579 -3.1567E+01 9600
//S23 1.6645E+01 9563 -1.8964E+01 9589
//S31 4.6550E+01 43142 -3.8785E+01 9571
//SMS 2.0350E+02 9959 3.4602E-02 28
##### Global Summary @Node :Max/IdMax/Min/IdMin####
//U1 3.9115E-02 82452 -7.1083E-04 65233
//U2 7.4504E-05 354 -5.8813E-04 696
//U3 5.9493E-04 84 -5.8751E-03 61080
//E11 1.3777E-03 130 -1.3653E-03 77625
//E22 4.9199E-04 61 -5.4370E-04 102
//E33 6.8634E-04 51036 -6.1176E-04 30070
//E12 7.1556E-04 27808 -6.8093E-04 27863
//E23 5.3666E-04 56 -5.4347E-04 82
//E31 7.2396E-04 36168 -9.6621E-04 130
//S11 3.8626E+02 130 -3.6387E+02 28580
//S22 1.6628E+02 130 -1.5743E+02 28580
//S33 1.6502E+02 30033 -1.5643E+02 28580
//S12 5.7795E+01 27808 -5.4998E+01 27863
//S23 4.3345E+01 56 -4.3896E+01 82
//S31 5.8474E+01 36168 -7.8040E+01 130
//SMS 2.8195E+02 77625 1.2755E-02 75112
##### Global Summary @Element :Max/IdMax/Min/IdMin####
//E11 1.0731E-03 10485 -1.2123E-03 41779
//E22 3.9143E-04 33536 -4.1389E-04 22892
//E33 5.9415E-04 44563 -5.0497E-04 47965
//E12 5.3264E-04 9163 -5.0405E-04 9161
//E23 3.9226E-04 33024 -4.1464E-04 23465
//E31 5.7633E-04 43142 -4.8019E-04 9571
//S11 2.7231E+02 9180 -2.9763E+02 41779
//S22 1.0792E+02 9180 -1.0656E+02 41779
//S33 1.3921E+02 44569 -1.1431E+02 47974
//S12 4.3021E+01 9163 -4.0712E+01 9161
//S23 3.1683E+01 33024 -3.3490E+01 23465
//S31 4.6550E+01 43142 -3.8785E+01 9571
//SMS 2.4057E+02 41779 3.1383E-02 38687