ប្រព័ន្ធលេខធាតុ និងបណ្ណាល័យអនុគមន៍រាង¶
អនុគមន៍រាង \(N_\alpha^e(\boldsymbol{r})\) ដែលបានណែនាំក្នុង អនុគមន៍រាង និងការប៉ាន់ស្មានធាតុកំណត់ មានទម្រង់ជាក់លាក់ខុសគ្នាតាមប្រភេទធាតុ។ ជំពូកនេះចាត់ថ្នាក់ក្រុមធាតុដែល FrontISTR ផ្ដល់ជាលេខប្រភេទធាតុ 3 ខ្ទង់ និងបង្ហាញចំណុចប្រទាក់នៃបណ្ណាល័យអនុគមន៍រាងសម្រាប់ដោះស្រាយធាតុនីមួយៗតាមរបៀបឯកសណ្ឋាន។ សម្រាប់ប្រព័ន្ធកូអរដោនេធម្មជាតិ និងទម្រង់ជាក់លាក់នៃអនុគមន៍រាងរបស់ធាតុសូលីដ 3 វិមាត្រ ព្រមទាំងការបម្លែងលំដាប់ថ្នាំងកណ្ដាលគែមរបស់ធាតុលំដាប់ទី 2 សូមមើល អនុគមន៍រាងរបស់ធាតុសូលីដ 3 វិមាត្រ ហើយសម្រាប់មគ្គុទ្ទេសក៍ជ្រើសរើសប្រភេទធាតុ សូមមើល បណ្ណាល័យធាតុ (មុខងារ)។
ការចាត់ថ្នាក់ធាតុ និងច្បាប់ដាក់ឈ្មោះ¶
ប្រភេទធាតុរបស់ FrontISTR ត្រូវបានសម្គាល់ដោយលេខ 3 ខ្ទង់។ អត្ថន័យនៃខ្ទង់នីមួយៗមានដូចខាងក្រោម។
- ខ្ទង់ទី 1 (ក្រុមធាតុ)៖ 1=ធាតុបន្ទាត់/ត្រាស់, 2=ធាតុប្លង់, 3=ធាតុសូលីដ, 5=ធាតុចំណុចប្រទាក់, 6=ធាតុធ្នឹម, 7=ធាតុសែល។
- ខ្ទង់ទី 2 (រូបរាងមូលដ្ឋាន)៖ បែងចែករូបរាងធរណីមាត្រនៅក្នុងក្រុមធាតុ (ត្រីកោណ, ចតុកោណ, តេត្រាហេដ្រុង, ត្រីកោណ ព្រីស, ហិចសាហេដ្រុង)។
- ខ្ទង់ទី 3 (លំដាប់អន្តរប៉ូល)៖ 1=លំដាប់ទី 1 (មានតែថ្នាំងជ្រុង), 2=លំដាប់ទី 2 (រួមមានថ្នាំងកណ្ដាលគែម)។ ជាករណីលើកលែង ធាតុត្រាស់ 2 ថ្នាំងមានលេខ 301។
ធាតុដែលមានផ្ដល់ត្រូវបានបង្ហាញក្នុងតារាងខាងក្រោមដោយបែងចែកតាមក្រុមធាតុ។
| ក្រុមធាតុ | ប្រភេទធាតុ | ចំនួនថ្នាំង | សេចក្ដីពណ៌នា |
|---|---|---|---|
| ធាតុបន្ទាត់ | 111 | 2 | ធាតុលីង 2 ថ្នាំង (មិនអាចប្រើក្នុងការវិភាគស្ត្រេស) |
| 112 | 3 | ធាតុលីង 3 ថ្នាំង (មិនអាចប្រើក្នុងការវិភាគស្ត្រេស) | |
| ធាតុប្លង់ | 231 | 3 | ធាតុត្រីកោណលំដាប់ទី 1 |
| 232 | 6 | ធាតុត្រីកោណលំដាប់ទី 2 | |
| 241 | 4 | ធាតុចតុកោណលំដាប់ទី 1 | |
| 242 | 8 | ធាតុចតុកោណលំដាប់ទី 2 (គ្រួសារ Serendipity) | |
| ធាតុសូលីដ | 301 | 2 | ធាតុត្រាស់ 2 ថ្នាំង |
| 341 | 4 | ធាតុ តេត្រាហេដ្រុង លំដាប់ទី 1 | |
| 342 | 10 | ធាតុ តេត្រាហេដ្រុង លំដាប់ទី 2 | |
| 351 | 6 | ធាតុ ត្រីកោណ ព្រីស លំដាប់ទី 1 | |
| 352 | 15 | ធាតុ ត្រីកោណ ព្រីស លំដាប់ទី 2 | |
| 361 | 8 | ធាតុ ហិចសាហេដ្រុង លំដាប់ទី 1 | |
| 362 | 20 | ធាតុ ហិចសាហេដ្រុង លំដាប់ទី 2 (គ្រួសារ Serendipity) | |
| ធាតុចំណុចប្រទាក់ | 541 | 4×2 | ធាតុផ្ទៃចតុកោណលំដាប់ទី 1 (មិនអាចប្រើក្នុងការវិភាគស្ត្រេស) |
| 542 | 8×2 | ធាតុផ្ទៃចតុកោណលំដាប់ទី 2 (មិនអាចប្រើក្នុងការវិភាគស្ត្រេស) | |
| ធាតុធ្នឹម | 611 | 2 | ធាតុធ្នឹម Bernoulli-Euler 2 ថ្នាំង (6 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង) |
| 641 | 2×2 | ធាតុធ្នឹម Bernoulli-Euler 2 ថ្នាំង (3 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង សម្រាប់ការលាយដឺក្រេសេរីភាព) | |
| ធាតុសែល | 731 | 3 | ធាតុសែលត្រីកោណ MITC3 (6 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង) |
| 741 | 4 | ធាតុសែលចតុកោណ MITC4 (6 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង) | |
| 743 | 9 | ធាតុសែលចតុកោណ MITC9 (6 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង) | |
| 761 | 3×2 | ធាតុសែលត្រីកោណ MITC3 (3 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង សម្រាប់ការលាយដឺក្រេសេរីភាព) | |
| 781 | 4×2 | ធាតុសែលចតុកោណ MITC4 (3 ដឺក្រេសេរីភាពក្នុងមួយថ្នាំង សម្រាប់ការលាយដឺក្រេសេរីភាព) |
ធាតុ ហិចសាហេដ្រុង លំដាប់ទី 1 លេខ 361 មានទម្រង់បង្កើតច្រើន (អាំងតេក្រាលពេញលេញ, មិនស្រប, B-bar, F-bar) ដែលអាចជ្រើសពីការគ្រប់គ្រងការវិភាគ។ សម្រាប់ព័ត៌មានលម្អិត សូមមើល ទម្រង់បង្កើតធាតុប្រសិទ្ធភាពខ្ពស់។
ធាតុធ្នឹម 641 និងធាតុសែល 761/781 គឺជាទម្រង់បង្កើតសម្រាប់ភ្ជាប់ធាតុរចនាសម្ព័ន្ធដែលមាន 6 ដឺក្រេសេរីភាពទៅធាតុសូលីដដែលមាន 3 ដឺក្រេសេរីភាពនៅថ្នាំងដូចគ្នា ដោយតំណាងថ្នាំងរចនាសម្ព័ន្ធមួយជាថ្នាំង 3 ដឺក្រេសេរីភាពចំនួនពីរ។ ទម្រង់បង្កើតខ្លួនវាដូចគ្នានឹងកំណែ 6 ដឺក្រេសេរីភាពដែលត្រូវគ្នា (611, 731, 741)។
បណ្ណាល័យអនុគមន៍រាង¶
រូទីនគណនាធាតុ (ការបង្កើតម៉ាទ្រីសភាពរឹង និងវ៉ិចទ័រកម្លាំងខាងក្នុង) មិនមានរូទីនដាច់ដោយឡែកសម្រាប់ប្រភេទធាតុនីមួយៗទេ ប៉ុន្តែហៅបណ្ណាល័យអនុគមន៍រាងតាមចំណុចប្រទាក់ឯកសណ្ឋានដែលយកលេខប្រភេទធាតុ fetype ជាអាគុយម៉ង់។ ម៉ូឌុល elementInfo (fistr1/src/lib/element/element.f90) ផ្ដល់អនុគមន៍ដូចខាងក្រោម។
NumOfQuadPoints(fetype)៖ ត្រឡប់ចំនួនចំណុចអាំងតេក្រាល \(n_q\) សម្រាប់ប្រភេទធាតុ។getQuadPoint(fetype, np, pos)៖ ត្រឡប់កូអរដោនេធម្មជាតិ \(\boldsymbol{r}_i\) នៃចំណុចអាំងតេក្រាល \(i\)។getWeight(fetype, np)៖ ត្រឡប់ទម្ងន់ \(w_i\) នៃចំណុចអាំងតេក្រាល \(i\)។getShapeFunc(fetype, r, N)៖ ត្រឡប់តម្លៃអនុគមន៍រាង \(N_\alpha^e(\boldsymbol{r})\) នៅកូអរដោនេធម្មជាតិ \(\boldsymbol{r}\)។getShapeDeriv(fetype, r, dN)៖ ត្រឡប់ដេរីវេនៃអនុគមន៍រាងតាមកូអរដោនេធម្មជាតិ \(\partial N_\alpha^e/\partial \boldsymbol{r}\)។getGlobalDeriv(fetype, n_e, r, X^e, J, dN_x)៖ ផ្ដល់កូអរដោនេថ្នាំងធាតុ \(\boldsymbol{X}^e\) ហើយត្រឡប់ដេរីវេតាមកូអរដោនេរូបវន្ត \(\partial N_\alpha^e/\partial \boldsymbol{x}\) និងដេទែរមីណង់ យ៉ាកូបៀន \(J\)។getNumberOfSubface(fetype),getSubFace(fetype, k, ...)៖ ត្រឡប់ចំនួនផ្ទៃព្រំដែនរបស់ធាតុ និងលេខថ្នាំងដែលបង្កើតផ្ទៃនីមួយៗ។ ប្រើសម្រាប់បង្កើតបន្ទុកផ្ទៃ និងផ្ទៃប៉ះ។
អនុគមន៍នីមួយៗបែងចែកសាខាខាងក្នុងតាមលេខប្រភេទធាតុ ហើយហៅសាប់រូទីនអនុគមន៍រាង និងដេរីវេអនុគមន៍រាងក្នុងម៉ូឌុលថ្នាក់ទាបដែលរៀបចំសម្រាប់ប្រភេទធាតុនីមួយៗ (tet4n.f90, tet10n.f90, prism6n.f90, prism15n.f90, hex8n.f90, hex20n.f90, tri3n.f90, tri6n.f90, quad4n.f90, quad8n.f90, quad9n.f90, line2n.f90, line3n.f90)។ តារាងលេខនៃកូអរដោនេ និងទម្ងន់ចំណុចអាំងតេក្រាលត្រូវបានប្រមូលផ្ដុំក្នុង quadrature.f90។ ពេលបន្ថែមប្រភេទធាតុថ្មី គ្រាន់តែអនុវត្តម៉ូឌុលថ្នាក់ទាបដែលត្រូវគ្នា ហើយបន្ថែមវាទៅសាខានៃអនុគមន៍នីមួយៗក្នុង elementInfo។
ការបម្លែងលំដាប់ថ្នាំងកណ្ដាលគែមសម្រាប់ធាតុត្រីកោណលំដាប់ទី 2¶
សម្រាប់ធាតុត្រីកោណលំដាប់ទី 2 លេខ 232 លំដាប់ថ្នាំងកណ្ដាលគែមខុសគ្នារវាងទម្រង់បញ្ចូលមេស HEC-MW (ច្បាប់ដែលរៀបថ្នាំងជ្រុងជុំវិញជាមុន បន្ទាប់មករៀបថ្នាំងកណ្ដាលគែមតាមគែម 1-2, 2-3, …) និងទម្រង់ខាងក្នុង FrontISTR ដែលអនុគមន៍រាងក្នុងបណ្ណាល័យធាតុសន្មត។ ភាពខុសគ្នានេះត្រូវបានដោះស្រាយដោយ hecmw2fstr_mesh_conv (fistr1/src/common/hecmw2fstr_mesh_conv.f90 និង hecmw2fstr_connect_conv.c) ដែលត្រូវហៅភ្លាមបន្ទាប់ពីអានមេស ហើយរៀបថ្នាំង 6 ឡើងវិញជា \(\{1,2,3,6,4,5\}\) តាមតារាងបម្លែង Table232។ ដោយសារការបម្លែងធ្វើដោយផ្ទាល់លើអារេផ្ទុកព័ត៌មានការតភ្ជាប់ធាតុ ការហៅបណ្ណាល័យធាតុបន្ទាប់ទាំងអស់ប្រើលំដាប់ថ្នាំងខាងក្នុង FrontISTR។ ពេលបញ្ចេញលទ្ធផល fstr2hecmw_mesh_conv ធ្វើបម្លែងបញ្ច្រាសទៅទម្រង់ HEC-MW មុនសរសេរ ដូច្នេះអ្នកប្រើត្រូវយកចិត្តទុកដាក់តែទម្រង់ HEC-MW ទាំងសម្រាប់បញ្ចូល និងបញ្ចេញ។
ធាតុសូលីដ 3 វិមាត្រ 342 (តេត្រាហេដ្រុង លំដាប់ទី 2) និង 352 (ត្រីកោណ ព្រីស លំដាប់ទី 2) ក៏មានការបម្លែងស្វ័យប្រវត្តិប្រភេទដូចគ្នា ខណៈ 362 (ហិចសាហេដ្រុង លំដាប់ទី 2) មិនមានការបម្លែងទេ។ សម្រាប់ការដោះស្រាយទាំងនេះ សូមមើល អនុគមន៍រាងរបស់ធាតុសូលីដ 3 វិមាត្រ។ សម្រាប់ធាតុប្លង់ចតុកោណលំដាប់ទី 2 លេខ 242 និងធាតុចំណុចប្រទាក់ 542 មិនមានការបម្លែងទេ ព្រោះលំដាប់ថ្នាំងកណ្ដាលគែមរបស់ទម្រង់បញ្ចូល HEC-MW និងទម្រង់ខាងក្នុងដូចគ្នា។
ប្រធានបទពាក់ព័ន្ធ¶
- អនុគមន៍រាង និងការប៉ាន់ស្មានធាតុកំណត់ — និយមន័យគណិតវិទ្យានៃអនុគមន៍រាង
- អាំងតេក្រាលលេខ — ចំណុចអាំងតេក្រាល ទម្ងន់ និងទម្រង់ប្រហាក់ប្រហែលនៃអាំងតេក្រាលធាតុ
- អនុគមន៍រាងរបស់ធាតុសូលីដ 3 វិមាត្រ — កូអរដោនេធម្មជាតិ និងទម្រង់ជាក់លាក់នៃអនុគមន៍រាងសម្រាប់ធាតុសូលីដបន្ត
- ទម្រង់បង្កើតធាតុប្រសិទ្ធភាពខ្ពស់ — B-bar / F-bar / មិនស្រប / សែល / ធ្នឹម
- បណ្ណាល័យធាតុ (មុខងារ) — ជម្រើសប្រភេទធាតុ និងរបៀបជ្រើសប្រើ