לדלג לתוכן

אנליזת תגובת תדר

לניתוח זה משתמשים בנתונים מתוך tutorial/17_freq_beam.

מושא האנליזה

מושא האנליזה הוא קורה זיזית. הגאומטריה מוצגת באיור 4.17.1 ונתוני הרשת באיור 4.17.2.

פריט תיאור הערות הפניה
סוג האנליזה אנליזת תגובת תדר !SOLUTION,TYPE=EIGEN !SOLUTION,TYPE=DYNAMIC
מספר צמתים 55
מספר אלמנטים 126
סוג אלמנט אלמנט טטרהדרלי ליניארי בעל 4 צמתים !ELEMENT,TYPE=341
שם חומר Material-1 !MATERIAL,NAME=Material-1
תנאי שפה אילוץ, עומס מרוכז, ערכים עצמיים !EIGENREAD
פותר מטריצה CG/SSOR !SOLVER,METHOD=CG,PRECOND=1

גאומטריית הקורה הזיזית

איור 4.17.1: גאומטריית הקורה הזיזית

נתוני הרשת של הקורה הזיזית

איור 4.17.2: נתוני הרשת של הקורה הזיזית

תוכן האנליזה

קצה אחד של הקורה הזיזית מאולץ במלואו, ומתבצעת אנליזת תגובת תדר עם עומסים מרוכזים המופעלים על שני צמתים בקצה הנגדי.

תחילה מתבצעת אנליזה מודאלית עד למצב העשירי באותם תנאי שפה, ולאחר מכן מתבצעת האנליזה באמצעות הערכים העצמיים והווקטורים העצמיים עד למצב החמישי. להלן מוצגים נתוני הבקרה הכלליים ונתוני בקרת האנליזה עבור האנליזה המודאלית ועבור אנליזת תגובת התדר.

נתוני בקרה כלליים hecmw_ctrl_eigen.dat

##
## HEC-MW control file for FrontSTR
## Auto created by fstr_srun.sh
## Fri Nov 26 16:02:33 2010
##
!MESH, NAME=fstrMSH,TYPE=HECMW-ENTIRE
beam.msh
!CONTROL,NAME=fstrCNT
beam_eigen.cnt
!RESULT,NAME=fstrRES,IO=OUT
eig_beam.res
!RESULT,NAME=vis_out,IO=OUT
beam.vis

נתוני בקרה כלליים hecmw_ctrl_freq.dat

##
## HEC-MW control file for FrontSTR
## Auto created by fstr_srun.sh
## Fri Nov 26 16:02:33 2010
##
!MESH, NAME=fstrMSH,TYPE=HECMW-ENTIRE
beam.msh
!CONTROL,NAME=fstrCNT
beam_freq.cnt
!RESULT,NAME=fstrRES,IO=OUT
beam.res
!RESULT,NAME=vis_out,IO=OUT
beam.vis
!RESULT,NAME=fstrDYNA,IO=OUT
beam_dyna.res
!RESULT,NAME=result-in,IO=IN
eig_beam.res

באנליזת תגובת התדר קוראים את הווקטורים העצמיים מקובץ התוצאות שהאנליזה המודאלית כתבה אל eig_beam.res, ולכן מציינים אותו ב־NAME=result-in. תוצאות סריקת התדרים נכתבות אל beam.res של NAME=fstrRES, ותוצאות היסטוריית הזמן בתדר שצוין ב־!DYNAMIC (15000Hz) נכתבות אל beam_dyna.res של NAME=fstrDYNA (→ !RESULT).

נתוני בקרת האנליזה beam_eigen.cnt

#  קובץ בקרה עבור FISTR
!VERSION
 3
!WRITE,RESULT
!WRITE,VISUAL
!SOLUTION, TYPE=EIGEN
!EIGEN
 10, 1.0E-8, 60
!BOUNDARY
_PickedSet4, 1, 3, 0.0
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=NO,TIMELOG=YES
 10000, 1
 1.0e-8, 1.0, 0.0
!VISUAL,method=PSR
!surface_num=1
!surface 1
!output_type=VTK
!END

נתוני בקרת האנליזה beam_freq.cnt

#  קובץ בקרה עבור FISTR
!VERSION
 3
!WRITE,RESULT
!WRITE,VISUAL
!SOLUTION, TYPE=DYNAMIC
!DYNAMIC
 11 , 2
 14000, 16000, 20, 15000.0
 0.0, 6.6e-5
 1, 1, 0.0, 7.2E-7
 10, 2, 1
 1, 1, 1, 1, 1, 1
!EIGENREAD
 eigen_0.log
 1, 5
!BOUNDARY
_PickedSet4, 1, 3, 0.0
!FLOAD, LOAD CASE=2
_PickedSet5, 2, 1.
!FLOAD, LOAD CASE=2
_PickedSet6, 2, 1.
!SOLVER,METHOD=CG,PRECOND=1,ITERLOG=NO,TIMELOG=YES
 10000, 1
 1.0e-8, 1.0, 0.0
!VISUAL,method=PSR
!surface_num=1
!surface 1
!output_type=VTK
!END

נוהל האנליזה

תחילה משנים את שם נתוני הבקרה הכלליים לאנליזה המודאלית, hecmw_ctrl_eigen.dat, ל־hecmw_ctrl.dat, ומבצעים אנליזה מודאלית.

לאחר מכן משנים את שם נתוני הבקרה הכלליים לאנליזת תגובת התדר, hecmw_ctrl_freq.dat, ל־hecmw_ctrl.dat, ואת קובץ יומן תוצאות האנליזה המודאלית 0.log ל־eigen_0.log (כפי שצוין בנתוני בקרת האנליזה לאנליזת תגובת התדר), ומבצעים אנליזת תגובת התדר.

cp hecmw_ctrl_eigen.dat hecmw_ctrl.dat
fistr1 -t 4
mv 0.log eigen_0.log
cp hecmw_ctrl_freq.dat hecmw_ctrl.dat
fistr1 -t 4

הרצה מקבילית

כאשר מחלקים את אותם נתונים לשני תחומים ומריצים אותם במקביל, מבצעים את האנליזה המודאלית ואת אנליזת תגובת התדר על אותה הרשת המפוצלת. כל תהליך באנליזת תגובת התדר קורא את הווקטורים העצמיים מקבצי התוצאות שהאנליזה המודאלית כתבה לכל תת־תחום, ולכן אי־אפשר להשתמש בתוצאות של אנליזה מודאלית שנרצתה ברצף או בתוצאות של אנליזה מודאלית שנרצתה עם חלוקת תחום אחרת (→ סוג האנליזה).

תחילה יוצרים את נתוני הבקרה הכלליים הבאים, hecmw_ctrl_part.dat, ואת נתוני הבקרה לחלוקת הרשת, hecmw_part_ctrl.dat, ומחלקים את נתוני הרשת לשני תחומים.

!MESH, NAME=part_in, TYPE=HECMW-ENTIRE
beam.msh
!MESH, NAME=part_out, TYPE=HECMW-DIST
beam_2
!PARTITION, TYPE=NODE-BASED, METHOD=KMETIS, DOMAIN=2

לאחר מכן משנים את ציון NAME=fstrMSH הן ב־hecmw_ctrl_eigen.dat והן ב־hecmw_ctrl_freq.dat לנתוני הרשת לאחר החלוקה.

!MESH, NAME=fstrMSH, TYPE=HECMW-DIST
beam_2

באותו הסדר כמו בהרצה הרציפה, מריצים את האנליזה המודאלית ואת אנליזת תגובת התדר בשני תהליכים.

cp hecmw_ctrl_part.dat hecmw_ctrl.dat
hecmw_part1
cp hecmw_ctrl_eigen.dat hecmw_ctrl.dat
mpirun -np 2 fistr1 -t 1
mv 0.log eigen_0.log
cp hecmw_ctrl_freq.dat hecmw_ctrl.dat
mpirun -np 2 fistr1 -t 1

רשימת הערכים העצמיים נכתבת רק לקובץ היומן 0.log של דרג 0, ולכן משנים את שמו ל־eigen_0.log. קבצי התוצאות נכתבים בנפרד לכל תהליך, בצורה של beam_dyna.res.<דרג>.<מספר>. הקשר בין התדר למשרעת ההזזה בצומת הניטור נכתב לקובץ היומן של התהליך המטפל בצומת (<דרג>.log). הערכים המתקבלים תואמים את תוצאות ההרצה הרציפה במגבלת שגיאות העיגול.

תוצאות האנליזה

הקשר בין התדר למשרעת ההזזה בצומת הניטור שצוין בנתוני בקרת האנליזה (מספר צומת 1) נוצר באמצעות Microsoft Excel ומוצג באיור 4.17.3. בנוסף, כנתונים מספריים של תוצאות האנליזה, מוצג להלן חלק מקובץ יומן תוצאות האנליזה.

הקשר בין תדר למשרעת הזזה בצומת הניטור

איור 4.17.3: הקשר בין תדר למשרעת הזזה בצומת הניטור

יומן תוצאות האנליזה 0.log (אנליזת תגובת תדר)

 fstr_setup: OK
 Rayleigh alpha:   0.0000000000000000     
 Rayleigh beta:   7.1999999999999999E-007
 read from=eigen_0.log
 start mode=           1
 end mode=           5
 start frequency:   14000.000000000000     
 end frequency:   16000.000000000000     
 number of the sampling points          20
 monitor nodeid=           1
   14100.000000000000      [Hz] :    8.3935554529723885E-002
   14100.000000000000      [Hz] :            1 .res
   14200.000000000000      [Hz] :    9.1211083509607632E-002
   14200.000000000000      [Hz] :            2 .res
   14300.000000000000      [Hz] :    9.9579777896922961E-002
   14300.000000000000      [Hz] :            3 .res
   14400.000000000000      [Hz] :   0.10914967594967491     
   14400.000000000000      [Hz] :            4 .res
   14500.000000000000      [Hz] :   0.11992223203326918     
   14500.000000000000      [Hz] :            5 .res
   14600.000000000000      [Hz] :   0.13164981801806747     
   14600.000000000000      [Hz] :            6 .res
   14700.000000000000      [Hz] :   0.14360931008440975     
   14700.000000000000      [Hz] :            7 .res
   14800.000000000000      [Hz] :   0.15436500205940235     
   14800.000000000000      [Hz] :            8 .res
   14900.000000000000      [Hz] :   0.16180768408076251     
   14900.000000000000      [Hz] :            9 .res
   15000.000000000000      [Hz] :   0.16388019610373711     
   15000.000000000000      [Hz] :           10 .res
   15100.000000000000      [Hz] :   0.15982110598747551     
   15100.000000000000      [Hz] :           11 .res
   15200.000000000000      [Hz] :   0.15074650286398145     
   15200.000000000000      [Hz] :           12 .res
   15300.000000000000      [Hz] :   0.13885370598993371     
   15300.000000000000      [Hz] :           13 .res
   15400.000000000000      [Hz] :   0.12618976409021948     
   15400.000000000000      [Hz] :           14 .res
   15500.000000000000      [Hz] :   0.11405716994112736     
   15500.000000000000      [Hz] :           15 .res
   15600.000000000000      [Hz] :   0.10306231010139058     
   15600.000000000000      [Hz] :           16 .res
   15700.000000000000      [Hz] :    9.3374567545990342E-002
   15700.000000000000      [Hz] :           17 .res
   15800.000000000000      [Hz] :    8.4945897112663621E-002
   15800.000000000000      [Hz] :           18 .res
   15900.000000000000      [Hz] :    7.7641947016103510E-002
   15900.000000000000      [Hz] :           19 .res
   16000.000000000000      [Hz] :    7.1307642422355627E-002
   16000.000000000000      [Hz] :           20 .res
 start time:   0.0000000000000000     
 end time:   6.6000000000000005E-005
 frequency:   15000.000000000000     
 node id:           1
 num disp:          10
 time=   0.0000000000000000       :            1 .res
 time=   0.0000000000000000       :            1 .vis
 time=   6.6000000000000003E-006  :            2 .res
 time=   6.6000000000000003E-006  :            2 .vis
 time=   1.3200000000000001E-005  :            3 .res
 time=   1.3200000000000001E-005  :            3 .vis
 time=   1.9800000000000000E-005  :            4 .res
 time=   1.9800000000000000E-005  :            4 .vis
 time=   2.6400000000000001E-005  :            5 .res
 time=   2.6400000000000001E-005  :            5 .vis
 time=   3.3000000000000003E-005  :            6 .res
 time=   3.3000000000000003E-005  :            6 .vis
 time=   3.9600000000000000E-005  :            7 .res
 time=   3.9600000000000000E-005  :            7 .vis
 time=   4.6200000000000005E-005  :            8 .res
 time=   4.6200000000000005E-005  :            8 .vis
 time=   5.2800000000000003E-005  :            9 .res
 time=   5.2800000000000003E-005  :            9 .vis
 time=   5.9400000000000000E-005  :           10 .res
 time=   5.9400000000000000E-005  :           10 .vis