Агуулгыг алгасах

Шугаман статик шинжилгээ (уян харимхай, параллель)

4 чиглэлтэй параллель гүйцэтгэлээр статик шинжилгээ (уян харимхай) хийхийн тулд tutorial/02_elastic_hinge_parallel-ийн өгөгдлийг ашиглана.

Шинжилгээний объект

Зүйл Тайлбар Тэмдэглэл Лавлагаа
Шинжилгээний төрөл Шугаман статик шинжилгээ !SOLUTION,TYPE=STATIC
Зангилааны тоо 84,056
Элементийн тоо 49,871
Элементийн төрөл 10 зангилаат 2-р эрэмбийн тетраэдр элемент !ELEMENT,TYPE=342 Элементийн сан
Материалын нэр STEEL !MATERIAL,NAME=STEEL Материалын өгөгдөл
Материалын шинж чанар ELASTIC !ELASTIC
Хилийн нөхцөл Бэхэлгээ, төвлөрсөн ачаалал
Матрицын шийдэгч CG/SSOR !SOLVER,METHOD=CG,PRECOND=1

Зангилаа бүрийн тооцооллын домэйн

Зураг 4.2.1 Зангилаа бүрийн тооцооллын домэйн

Шинжилгээний агуулга

FrontISTR кодыг задалж, энэ жишээний сан руу шилжээд, шинжилгээнд шаардлагатай дараах файлууд

Файлын нэр Төрөл Үүрэг
hecmw_ctrl.dat Ерөнхий удирдлагын өгөгдөл
hinge.cnt Шинжилгээний удирдлагын өгөгдөл
hinge.msh Торон өгөгдөл
hecmw_part_ctrl.dat Тор хуваалтын удирдлагын өгөгдөл hecmw_part1 торон өгөгдлийг домэйнд хуваахад ашиглах удирдлагын өгөгдөл

байгааг шалгана.

tar xvf FrontISTR.tar.gz
cd FrontISTR/tutorial/02_elastic_hinge_parallel
ls

Гаралт:

hecmw_ctrl.dat  hecmw_part_ctrl.dat  hinge.cnt  hinge.msh

Бэхлэгдсэн гадаргуугийн шилжилтийг хязгаарлаж, ачааллын гадаргууд төвлөрсөн ачаалал өгөх хүчдэлийн шинжилгээ хийнэ.

Ерөнхий удирдлагын өгөгдөл, шинжилгээний удирдлагын өгөгдөл, тор хуваалтын удирдлагын өгөгдлийг доор үзүүлэв.

Ерөнхий удирдлагын өгөгдөл hecmw_ctrl.dat

#
# хуваагчид зориулсан
#
!MESH, NAME=part_in,TYPE=HECMW-ENTIRE # hecmw_part1-ээр хуваах эх торон өгөгдөл
 hinge.msh
!MESH, NAME=part_out,TYPE=HECMW-DIST  # hecmw_part1-ээр хуваасны дараах файлын нэр
 hinge_4
#
# шийдэгчид зориулсан
#
!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

#  FISTR удирдлагын файл
## Шинжилгээний удирдлага
!VERSION                   # Файлын форматын хувилбарыг заана
 3
!SOLUTION, TYPE=STATIC     # Шинжилгээний төрлийг заана
!WRITE,RESULT              # Үр дүнгийн өгөгдлийн гаралтыг заана
!WRITE,VISUAL              # Дүрслэлийн өгөгдлийн гаралтыг заана
## Шийдэгчийн удирдлага
### Хилийн нөхцөл
!BOUNDARY
 BND0, 1, 3, 0.000000      # Бэхлэгдсэн гадаргуу 1-ийг заана
!BOUNDARY
 BND1, 1, 3, 0.000000      # Бэхлэгдсэн гадаргуу 2-ыг заана
!CLOAD
 CL0, 1, 0.01000           # Ачааллын гадаргууг заана
### Материал
!MATERIAL, NAME=STEEL      # Материалын шинж чанарыг заана
!ELASTIC                   # Уян харимхай материалыг тодорхойлно
 210000.0, 0.3
!DENSITY                   # Массын нягтыг тодорхойлно
 7.85e-6
### Шийдэгчийн тохиргоо
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=YES,TIMELOG=YES  # Шийдэгчийг удирдана
 10000, 2
 1.0e-08, 1.0, 0.0
## Дараах боловсруулалтын удирдлага
!VISUAL,method=PSR         # Дүрслэлийн аргыг заана
!surface_num=1             # 1 гадаргуугийн дүрслэл дэх гадаргуугийн тоо
!surface 1                 # Гадаргуугийн агуулгыг заана
!output_type=VTK           # Дүрслэлийн файлын төрлийг заана
!END                       # Шинжилгээний удирдлагын өгөгдлийн төгсгөлийг заана

Тор хуваалтын удирдлагын өгөгдөл hecmw_part_ctrl.dat

!PARTITION,TYPE=NODE-BASED,METHOD=PMETIS,DOMAIN=4,UCD=part.inp

Шинжилгээний дараалал

FrontISTR-ийг MPI-тай ажиллуулахын тулд эхлээд торон өгөгдөл hinge.msh-ийг 4 домэйнд хуваана.

hecmw_part1

Гаралт:

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 нэртэй шинэ файлууд үүснэ.

ls

Гаралт:

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

Дараа нь FrontISTR-ийн гүйцэтгэх файл fistr1-ийг MPI ашиглан ажиллуулна.

mpirun -np 4 fistr1 -t 1

(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 !! гарвал шинжилгээ дууссан.

Шинжилгээний үр дүн

Шинжилгээ дуусахад хэд хэдэн шинэ файл үүснэ.

ls

Гаралт:

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.* файлууд нь MPI зангилаа бүрийн FrontISTR шинжилгээний үр дүнг агуулсан үр дүнгийн өгөгдөл юм. Тэдгээрийг REVOCAP_PrePost болон ижил төстэй хэрэгслээр харуулж болно.

*_vis_* файлууд нь дүрслэлийн өгөгдөл бөгөөд ерөнхий зориулалтын дүрслэлийн программ хангамжаар харуулж болно. Энэ жишээнд өгөгдлийг VTK форматаар гаргадаг тул ParaView эсвэл ижил төстэй программ ашиглан харуулна.

von Mises хүчдэлийн шинжилгээний үр дүн (VTK-д харуулсан)

Зураг 4.2.2 von Mises хүчдэлийн шинжилгээний үр дүн (VTK-д харуулсан)

Шинжилгээний үр дүнгийн лог 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