Preskočiť na obsah

Lineárna statická analýza (elasticita, paralelne)

Na vykonanie statickej analýzy (elasticita) so štvorcestným paralelným spustením použite údaje v tutorial/02_elastic_hinge_parallel.

Predmet analýzy

Položka Opis Poznámky Referencia
Typ analýzy Lineárna statická analýza !SOLUTION,TYPE=STATIC
Počet uzlov 84,056
Počet prvkov 49,871
Typ prvku 10-uzlový kvadratický tetraedrický prvok !ELEMENT,TYPE=342 Knižnica prvkov
Názov materiálu STEEL !MATERIAL,NAME=STEEL Materiálové údaje
Materiálová vlastnosť ELASTIC !ELASTIC
Okrajová podmienka Väzba, sústredené zaťaženie
Maticový riešič CG/SSOR !SOLVER,METHOD=CG,PRECOND=1

Výpočtová oblasť každého uzla

Obrázok 4.2.1 Výpočtová oblasť každého uzla

Obsah analýzy

Rozbaľte zdrojový kód FrontISTR, prejdite do adresára tohto príkladu a pri nasledujúcich súboroch potrebných na analýzu

Názov súboru Typ Úloha
hecmw_ctrl.dat Celkové riadiace údaje
hinge.cnt Riadiace údaje analýzy
hinge.msh Údaje siete
hecmw_part_ctrl.dat Riadiace údaje delenia siete Riadiace údaje používané, keď hecmw_part1 rozdeľuje údaje siete na oblasti

skontrolujte, či sú k dispozícii.

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

Výstup:

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

Vykonajte analýzu napätia, pri ktorej sa zafixuje posunutie upevnených plôch a na plochu zaťaženia sa aplikuje sústredené zaťaženie.

Celkové riadiace údaje, riadiace údaje analýzy a riadiace údaje delenia siete sú uvedené nižšie.

Celkové riadiace údaje hecmw_ctrl.dat

#
# pre nástroj na rozdelenie siete
#
!MESH, NAME=part_in,TYPE=HECMW-ENTIRE # pôvodné dáta siete, ktoré rozdelí hecmw_part1
 hinge.msh
!MESH, NAME=part_out,TYPE=HECMW-DIST  # názov súboru po rozdelení pomocou hecmw_part1
 hinge_4
#
# pre riešič
#
!MESH, NAME=fstrMSH, TYPE=HECMW-DIST  # zadajte dáta rozdelenej siete
 hinge_4
!CONTROL, NAME=fstrCNT                # zadajte riadiace údaje analýzy
 hinge.cnt
!RESULT, NAME=fstrRES, IO=OUT         # zadajte výsledkové údaje
 hinge.res
!RESULT, NAME=vis_out, IO=OUT         # zadajte údaje vizualizácie
 hinge_vis

Riadiace údaje analýzy hinge.cnt

#  Riadiaci súbor pre FISTR
## Riadenie analýzy
!VERSION                   # zadajte verziu formátu súboru
 3
!SOLUTION, TYPE=STATIC     # zadajte typ analýzy
!WRITE,RESULT              # zadajte výstup výsledkových údajov
!WRITE,VISUAL              # zadajte výstup údajov vizualizácie
## Riadenie riešiča
### Okrajová podmienka
!BOUNDARY
 BND0, 1, 3, 0.000000      # zadajte väzbovú plochu 1
!BOUNDARY
 BND1, 1, 3, 0.000000      # zadajte väzbovú plochu 2
!CLOAD
 CL0, 1, 0.01000           # zadajte zaťažovanú plochu
### Materiál
!MATERIAL, NAME=STEEL      # zadajte materiálové vlastnosti
!ELASTIC                   # definujte elastický materiál
 210000.0, 0.3
!DENSITY                   # definujte hustotu hmotnosti
 7.85e-6
### Nastavenie riešiča
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=YES,TIMELOG=YES  # riadenie riešiča
 10000, 2
 1.0e-08, 1.0, 0.0
## Riadenie následného spracovania
!VISUAL,method=PSR         # zadajte metódu vizualizácie
!surface_num=1             # počet povrchov v 1 vykreslení povrchu
!surface 1                 # zadajte obsah povrchu
!output_type=VTK           # zadajte typ vizualizačného súboru
!END                       # označuje koniec riadiacich údajov analýzy

Riadiace údaje delenia siete hecmw_part_ctrl.dat

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

Postup analýzy

Na spustenie FrontISTR s MPI najprv rozdeľte údaje siete hinge.msh na štyri oblasti.

hecmw_part1

Výstup:

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

Vytvoria sa nové súbory s názvami hinge_4.x a part.inp.

ls

Výstup:

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

Potom spustite program FrontISTR fistr1 pomocou MPI.

mpirun -np 4 fistr1 -t 1

(Spustenie so 4 procesmi MPI a 1 vláknom 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 !!

Analýza je dokončená, keď sa zobrazí FrontISTR Completed !!.

Výsledky analýzy

Po dokončení analýzy sa vytvorí niekoľko nových súborov.

ls

Výstup:

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

Súbory *.res.* obsahujú výsledkové údaje analýzy FrontISTR pre jednotlivé uzly MPI. Možno ich zobraziť pomocou REVOCAP_PrePost a podobných nástrojov.

Súbory *_vis_* sú vizualizačné údaje a možno ich zobraziť univerzálnym vizualizačným softvérom. V tomto príklade sa údaje zapisujú vo formáte VTK, preto ich zobrazte pomocou ParaView alebo podobného softvéru.

Výsledok analýzy von Misesovho napätia (zobrazenie vo VTK)

Obrázok 4.2.2 Výsledok analýzy von Misesovho napätia (zobrazenie vo VTK)

Protokol výsledkov analýzy 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