跳轉至

線性靜力分析(彈性)

本分析使用 tutorial/01_elastic_hinge 的資料。

分析對象

分析對象為鉸鏈零件,形狀如圖 4.1.1 所示,網格資料如圖 4.1.2 所示。

項目 內容 備註 參照
分析類型 線性靜力分析 !SOLUTION,TYPE=STATIC
節點數 84,056
元素數 49,871
元素類型 10 節點二次四面體元素 !ELEMENT,TYPE=342 元素程式庫
材料物性名稱 STEEL !MATERIAL,NAME=STEEL 材料資料
材料性質 ELASTIC !ELASTIC
邊界條件 約束、集中載荷
矩陣求解法 CG/SSOR !SOLVER,METHOD=CG,PRECOND=1

鉸鏈零件的形狀

圖 4.1.1 鉸鏈零件的形狀

鉸鏈零件的網格資料

圖 4.1.2 鉸鏈零件的網格資料

分析內容

展開 FrontISTR 的原始碼,移動至本範例的目錄,確認分析所需的檔案

檔案名稱 類型 作用
hecmw_ctrl.dat 整體控制資料 指定網格資料與分析控制資料的輸入/輸出檔案
hinge.cnt 分析控制資料 定義分析類型、位移邊界條件、集中載荷等,並指定求解器與視覺化器的控制
hinge.msh 網格資料 定義有限元素網格及其材料資料與截面資料

是否存在。

tar xvf FrontISTR.tar.gz
cd FrontISTR/tutorial/01_elastic_hinge
ls

執行結果:

hecmw_ctrl.dat  hinge.cnt  hinge.msh

約束圖 4.1.1 所示約束面的位移,並對載荷面施加集中載荷,以進行應力分析。 整體控制資料與分析控制資料如下所示。

整體控制資料 hecmw_ctrl.dat

指定網格資料與分析控制資料的輸入/輸出檔案。

#
# for solver
#
!MESH, NAME=fstrMSH, TYPE=HECMW-ENTIRE # 指定單一網格資料
 hinge.msh
!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, 1
 1.0e-08, 1.0, 0.0
## Post Control
!VISUAL,method=PSR          # 指定視覺化方法
!surface_num=1              # 一個表面彩現中的表面數量
!surface 1                  # 指定表面內容
!output_type=VTK            # 指定視覺化檔案類型
!END                        # 表示分析控制資料結束

網格資料

定義有限元素網格及其材料資料與截面資料。

(僅節錄一部分)

!HEADER
 HECMW_Msh File generated by REVOCAP
!NODE
       1,    -1.22042,     2.23355,     1.65220
       2,    -1.27050,    -3.10529,     1.59209
...
!ELEMENT, TYPE=342
       1,    1157,    3549,    3321,    3739,   12629,   12627,   12626,   12628,   12631,   12630
       2,    8207,    3321,    3549,    3739,   12629,   12633,   12632,   12634,   12630,   12631
...
!MATERIAL, NAME=STEEL, ITEM=2
!ITEM=1, SUBITEM=2
210000.0, 0.3
!ITEM=2, SUBITEM=1
7.85e-6
!SECTION, TYPE=SOLID, EGRP=Solid0, MATERIAL=STEEL
!EGROUP, EGRP=Solid0
1
2
...
!END

分析步驟

執行 FrontISTR 的執行命令 fistr1

fistr1 -t 4

(以 4 執行緒執行)

##################################################################
#                         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-07T10:01:16+0900
  processes:  1
  threads:    4
  cores:      4
  host:
    0: 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, 1
      1    1.903375E+00
      2    1.974378E+00
      3    2.534627E+00
...
...
   2967    1.080216E-08
   2968    1.004317E-08
   2969    9.375729E-09
### Relative residual = 9.39429E-09

### summary of linear solver
      2969 iterations      9.394286E-09
    set-up time      :     1.953022E-01
    solver time      :     5.704201E+01
    solver/comm time :     5.145826E-01
    solver/matvec    :     2.306329E+01
    solver/precond   :     2.632665E+01
    solver/1 iter    :     1.921253E-02
    work ratio (%)   :     9.909789E+01

 Start visualize PSF 1 at timestep 1
### FSTR_SOLVE_NLGEOM FINISHED!

 ====================================
    TOTAL TIME (sec) :     59.99
           pre (sec) :      0.71
         solve (sec) :     59.29
 ====================================
 FrontISTR Completed !!

顯示 FrontISTR Completed !! 時,即表示分析完成。

分析結果

分析完成後,會建立若干新檔案。

ls

執行結果:

0.log       hecmw_ctrl.dat  hinge.res.0.0            hinge_vis_psf.0001
FSTR.dbg.0  hecmw_vis.ini   hinge.res.0.1            hinge_vis_psf.0001.pvtu
FSTR.msg    hinge.cnt       hinge_vis_psf.0000
FSTR.sta    hinge.msh       hinge_vis_psf.0000.pvtu

*.res.* 稱為結果資料,其中儲存 FrontISTR 的分析結果。可使用 REVOCAP_PrePost 等工具顯示。

*_vis_* 稱為視覺化資料,可使用通用視覺化軟體顯示。本範例以 VTK 格式輸出,因此可使用 ParaView 等工具顯示。

使用 REVOCAP_PrePost 製作 von Mises 應力等值線圖,如圖 4.1.3 所示。 此外,以下列出分析結果記錄檔的一部分,作為分析結果的數值資料。

von Mises 應力的分析結果

圖 4.1.3 von Mises 應力的分析結果

分析結果記錄檔 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         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
 ##### Global 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
#### Result step=     1
 ##### Local 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
 ##### Local 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
 ##### 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