विषय पर बढ़ें

रैखिक स्थैतिक विश्लेषण (प्रत्यास्थता, समानांतर)

स्थैतिक विश्लेषण (प्रत्यास्थता) को 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

प्रत्येक कंप्यूटिंग नोड का गणना क्षेत्र

चित्र 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

विश्लेषण प्रक्रिया

MPI से FrontISTR चलाने के लिए पहले मेश डेटा 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

(MPI 4-समानांतर, 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.* को परिणाम डेटा कहा जाता है और इनमें प्रत्येक FrontISTR MPI नोड के विश्लेषण परिणाम संग्रहीत होते हैं। इन्हें 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