Translation update pending
The Polish translation may be out of date because the Japanese source has changed. The existing translation remains available while it is being updated.
Liniowa analiza statyczna (sprężystość, obliczenia równoległe)¶
Aby wykonać analizę statyczną (sprężystość) z użyciem 4 procesów równoległych, użyj danych z tutorial/02_elastic_hinge_parallel.
Przedmiot analizy¶
| Pozycja | Opis | Uwagi | Odniesienie |
|---|---|---|---|
| Typ analizy | Liniowa analiza statyczna | !SOLUTION,TYPE=STATIC | |
| Liczba węzłów | 84,056 | ||
| Liczba elementów | 49,871 | ||
| Typ elementu | 10-węzłowy element tetraedryczny drugiego rzędu | !ELEMENT,TYPE=342 | Biblioteka elementów |
| Nazwa materiału | STEEL | !MATERIAL,NAME=STEEL | Dane materiałowe |
| Właściwości materiału | ELASTIC | !ELASTIC | |
| Warunki brzegowe | Utwierdzenie, obciążenie skupione | ||
| Solver liniowy | CG/SSOR | !SOLVER,METHOD=CG,PRECOND=1 |

Konfiguracja analizy¶
Rozpakuj kod FrontISTR, przejdź do katalogu tego przykładu i sprawdź, czy następujące pliki wymagane do analizy
| Nazwa pliku | Typ | Rola |
|---|---|---|
| hecmw_ctrl.dat | Ogólne dane sterujące | |
| hinge.cnt | Dane sterujące analizą | |
| hinge.msh | Dane siatki | |
| hecmw_part_ctrl.dat | Dane sterujące partycjonowaniem siatki | Dane sterujące używane, gdy hecmw_part1 dzieli dane siatki na domeny |
są dostępne.
Wynik wykonania:
Przeprowadź analizę naprężeń, unieruchamiając przemieszczenia powierzchni utwierdzonych i przykładając obciążenie skupione do powierzchni obciążenia.
Ogólne dane sterujące, dane sterujące analizą oraz dane sterujące partycjonowaniem siatki przedstawiono poniżej.
Ogólne dane sterujące hecmw_ctrl.dat¶
#
# dla narzędzia do partycjonowania siatki
#
!MESH, NAME=part_in,TYPE=HECMW-ENTIRE # Źródłowe dane siatki dzielone przez hecmw_part1
hinge.msh
!MESH, NAME=part_out,TYPE=HECMW-DIST # Nazwa pliku po podziale przez hecmw_part1
hinge_4
#
# dla solvera
#
!MESH, NAME=fstrMSH, TYPE=HECMW-DIST # Określa dane podzielonej siatki
hinge_4
!CONTROL, NAME=fstrCNT # Określa dane sterujące analizą
hinge.cnt
!RESULT, NAME=fstrRES, IO=OUT # Określa dane wynikowe
hinge.res
!RESULT, NAME=vis_out, IO=OUT # Określa dane wizualizacji
hinge_vis
Dane sterujące analizą hinge.cnt¶
# Plik sterujący dla FISTR
## Sterowanie analizą
!VERSION # Określa wersję formatu pliku
3
!SOLUTION, TYPE=STATIC # Określa typ analizy
!WRITE,RESULT # Określa wyjście danych wynikowych
!WRITE,VISUAL # Określa wyjście danych wizualizacji
## Sterowanie solverem
### Warunek brzegowy
!BOUNDARY
BND0, 1, 3, 0.000000 # Określa powierzchnię utwierdzoną 1
!BOUNDARY
BND1, 1, 3, 0.000000 # Określa powierzchnię utwierdzoną 2
!CLOAD
CL0, 1, 0.01000 # Określa powierzchnię obciążenia
### Materiał
!MATERIAL, NAME=STEEL # Określa właściwości materiału
!ELASTIC # Definiuje materiał sprężysty
210000.0, 0.3
!DENSITY # Definiuje gęstość masową
7.85e-6
### Ustawienia solvera
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=YES,TIMELOG=YES # Steruje solverem
10000, 2
1.0e-08, 1.0, 0.0
## Sterowanie postprocessingiem
!VISUAL,method=PSR # Określa metodę wizualizacji
!surface_num=1 # Liczba powierzchni w jednym renderowaniu powierzchni
!surface 1 # Określa zawartość powierzchni
!output_type=VTK # Określa typ pliku wizualizacji
!END # Wskazuje koniec danych sterujących analizą
Dane sterujące partycjonowaniem siatki hecmw_part_ctrl.dat¶
Procedura analizy¶
Aby uruchomić FrontISTR z MPI, najpierw podziel dane siatki hinge.msh na cztery domeny.
Wynik wykonania:
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
Zostaną wygenerowane nowe pliki o nazwach hinge_4.x i part.inp.
Wynik wykonania:
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
Następnie uruchom polecenie FrontISTR fistr1 przy użyciu MPI.
(Uruchomienie z 4 procesami MPI i 1 wątkiem 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 !!
Analiza jest zakończona, gdy zostanie wyświetlony komunikat FrontISTR Completed !!.
Wyniki analizy¶
Po zakończeniu analizy tworzonych jest kilka nowych plików.
Wynik wykonania:
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
Pliki *.res.* zawierają dane wynikowe analizy FrontISTR dla każdego procesu MPI. Można je wyświetlać za pomocą REVOCAP_PrePost i podobnych narzędzi.
Pliki *_vis_* zawierają dane wizualizacyjne i można je wyświetlać w ogólnodostępnym oprogramowaniu do wizualizacji. W tym przykładzie dane są zapisywane w formacie VTK, dlatego do ich wyświetlenia użyj ParaView lub podobnego oprogramowania.

Dziennik wyników analizy 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