تحليل الاستجابة الترددية¶
يستخدم هذا التحليل بيانات tutorial/17_freq_beam.
نموذج التحليل¶
النموذج المراد تحليله هو عارضة كابولية؛ يوضح الشكل 4.17.1 هندستها، ويوضح الشكل 4.17.2 بيانات الشبكة.
| البند | الوصف | ملاحظات | المرجع |
|---|---|---|---|
| نوع التحليل | تحليل الاستجابة الترددية | !SOLUTION,TYPE=EIGEN !SOLUTION,TYPE=DYNAMIC | |
| عدد العقد | 55 | ||
| عدد العناصر | 126 | ||
| نوع العنصر | عنصر رباعي السطوح من الرتبة الأولى ذو أربع عقد | !ELEMENT,TYPE=341 | |
| اسم المادة | Material-1 | !MATERIAL,NAME=Material-1 | |
| الشروط الحدية | تثبيت، حمل مركز، قيمة ذاتية | !EIGENREAD | |
| طريقة حل المصفوفة | CG/SSOR | !SOLVER,METHOD=CG,PRECOND=1 |


محتوى التحليل¶
يُثبَّت أحد طرفي العارضة الكابولية المراد تحليلها تثبيتًا كاملاً، ثم يُجرى تحليل الاستجابة الترددية بتطبيق أحمال مركزة على عقدتين في الطرف المقابل.
كخطوات، يُنفَّذ التحليل النمطي حتى النمط العاشر تحت الشروط الحدية نفسها، ثم يُنفَّذ التحليل باستخدام القيم الذاتية والمتجهات الذاتية حتى النمط الخامس. وتُبيَّن أدناه بيانات التحكم العامة وبيانات التحكم في التحليل الخاصة بكلٍّ من التحليل النمطي وتحليل الاستجابة الترددية.
بيانات التحكم العامة 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¶
# Control File for 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¶
# Control File for 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، ثم قسِّم بيانات الشبكة إلى مجالين.
ثم غيِّر تحديد NAME=fstrMSH في كلٍّ من hecmw_ctrl_eigen.dat وhecmw_ctrl_freq.dat إلى بيانات الشبكة بعد التقسيم.
نفِّذ التحليل النمطي وتحليل الاستجابة الترددية بعمليةَين بنفس ترتيب التنفيذ التسلسلي.
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). والقيم المتحصَّل عليها متطابقة مع نتائج التنفيذ التسلسلي ضمن حدود خطأ التقريب.
نتائج التحليل¶
تُرسم باستخدام Microsoft Excel العلاقة بين التردد وسعة الإزاحة لعقدة المراقبة (العقدة رقم 1) المحددة في بيانات التحكم في التحليل، وتُعرض في الشكل 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