Элемент нөмірлеу жүйесі және пішін функциялары кітапханасы¶
Пішін функциялары және ақырлы элементтік жуықтау бөлімінде енгізілген \(N_\alpha^e(\boldsymbol{r})\) пішін функциясының нақты түрі элемент түріне байланысты. Бұл тарауда FrontISTR ұсынатын элементтер үш таңбалы элемент түрі нөмірлері бойынша жіктеліп, әр элементті бірыңғай өңдеуге арналған пішін функциялары кітапханасының интерфейсі беріледі. Үшөлшемді қатты дене элементтерінің табиғи координаттар жүйесі, пішін функцияларының нақты түрлері және екінші ретті элементтердің аралық түйіндерін қайта реттеу Үшөлшемді қатты дене элементтерінің пішін функциялары бөлімінде, ал элемент түрін таңдау нұсқаулығы Элементтер кітапханасы (функциялар) бөлімінде қарастырылады.
Элементтерді жіктеу және атау ережелері¶
FrontISTR элемент түрлері үш таңбалы нөмірмен анықталады. Әр цифрдың мағынасы төмендегідей.
- 1-цифр (элемент тобы): 1=сызықтық элемент/ферма, 2=жазық элемент, 3=қатты дене элементі, 5=интерфейс элементі, 6=арқалық элементі, 7=қабықша элементі.
- 2-цифр (негізгі пішін): элемент тобы ішіндегі геометриялық пішінді (үшбұрыш, төртбұрыш, тетраэдр, үшбұрышты призма, гексаэдр) ажыратады.
- 3-цифр (интерполяция реті): 1=бірінші ретті (тек бұрыштық түйіндер), 2=екінші ретті (аралық түйіндермен). Ерекше жағдай: 2 түйінді ферма элементінің нөмірі 301.
Ұсынылатын элементтер төменде элемент топтары бойынша берілген.
| Элемент тобы | Элемент түрі | Түйін саны | Сипаттамасы |
|---|---|---|---|
| Сызықтық элемент | 111 | 2 | 2 түйінді байланыс элементі (кернеу талдауында қолданылмайды) |
| 112 | 3 | 3 түйінді байланыс элементі (кернеу талдауында қолданылмайды) | |
| Жазық элемент | 231 | 3 | Үшбұрышты бірінші ретті элемент |
| 232 | 6 | Үшбұрышты екінші ретті элемент | |
| 241 | 4 | Төртбұрышты бірінші ретті элемент | |
| 242 | 8 | Төртбұрышты екінші ретті элемент (Serendipity тұқымдасы) | |
| Қатты дене элементі | 301 | 2 | 2 түйінді ферма элементі |
| 341 | 4 | Тетраэдрлік бірінші ретті элемент | |
| 342 | 10 | Тетраэдрлік екінші ретті элемент | |
| 351 | 6 | Үшбұрышты призмалық бірінші ретті элемент | |
| 352 | 15 | Үшбұрышты призмалық екінші ретті элемент | |
| 361 | 8 | Гексаэдрлік бірінші ретті элемент | |
| 362 | 20 | Гексаэдрлік екінші ретті элемент (Serendipity тұқымдасы) | |
| Интерфейс элементі | 541 | 4×2 | Төртбұрышты бетті бірінші ретті элемент (кернеу талдауында қолданылмайды) |
| 542 | 8×2 | Төртбұрышты бетті екінші ретті элемент (кернеу талдауында қолданылмайды) | |
| Арқалық элементі | 611 | 2 | 2 түйінді Bernoulli-Euler арқалық элементі (әр түйінде 6 еркіндік дәрежесі) |
| 641 | 2×2 | 2 түйінді Bernoulli-Euler арқалық элементі (әр түйінде 3 еркіндік дәрежесі, еркіндік дәрежелерін араластыруға арналған) | |
| Қабықша элементі | 731 | 3 | MITC3 үшбұрышты қабықша элементі (әр түйінде 6 еркіндік дәрежесі) |
| 741 | 4 | MITC4 төртбұрышты қабықша элементі (әр түйінде 6 еркіндік дәрежесі) | |
| 743 | 9 | MITC9 төртбұрышты қабықша элементі (әр түйінде 6 еркіндік дәрежесі) | |
| 761 | 3×2 | MITC3 үшбұрышты қабықша элементі (әр түйінде 3 еркіндік дәрежесі, еркіндік дәрежелерін араластыруға арналған) | |
| 781 | 4×2 | MITC4 төртбұрышты қабықша элементі (әр түйінде 3 еркіндік дәрежесі, еркіндік дәрежелерін араластыруға арналған) |
Гексаэдрлік бірінші ретті 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): \(i\) интегралдау нүктесінің табиғи координаттарын \(\boldsymbol{r}_i\) қайтарады.getWeight(fetype, np): \(i\) интегралдау нүктесінің салмағын \(w_i\) қайтарады.getShapeFunc(fetype, r, N): \(\boldsymbol{r}\) табиғи координаттарындағы \(N_\alpha^e(\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 функцияларының тармақтарына қосу жеткілікті.
Үшбұрышты екінші ретті элементтің аралық түйіндерін қайта реттеу¶
Үшбұрышты екінші ретті 232 элементінде HEC-MW тор кіріс пішіміндегі аралық түйіндер реті (бұрыштық түйіндерді айналып өтіп, кейін 1-2, 2-3, … қырлары бойынша аралық түйіндерді орналастыру ережесі) мен элемент кітапханасының пішін функциялары күтетін FrontISTR ішкі пішіміндегі рет әртүрлі. Бұл айырмашылық тор оқылғаннан кейін бірден шақырылатын hecmw2fstr_mesh_conv (fistr1/src/common/hecmw2fstr_mesh_conv.f90 және hecmw2fstr_connect_conv.c) арқылы Table232 түрлендіру кестесіне сәйкес алты түйінді \(\{1,2,3,6,4,5\}\) ретіне қайта орналастырумен жойылады. Түрлендіру элемент байланыстары сақталатын массивке тікелей жасалатындықтан, кейінгі барлық элемент кітапханасы шақыруларында FrontISTR ішкі түйін реті қолданылады. Нәтиже шығарылғанда кері fstr2hecmw_mesh_conv түрлендіруімен HEC-MW пішіміне қайтарылып жазылады, сондықтан пайдаланушы кірісте де, шығыста да тек HEC-MW пішімін ескеруі жеткілікті.
Үшөлшемді қатты дене элементтері 342 (екінші ретті тетраэдр) және 352 (екінші ретті үшбұрышты призма) үшін де осындай автоматты түрлендіру бар, ал 362 (екінші ретті гексаэдр) үшін түрлендіру жоқ. Бұл өңдеуді Үшөлшемді қатты дене элементтерінің пішін функциялары бөлімінен қараңыз. Екінші ретті төртбұрышты жазық 242 элементі мен 542 интерфейс элементінде HEC-MW кіріс пішімі мен ішкі пішімдегі аралық түйіндер реті бірдей болғандықтан, түрлендіру орындалмайды.
Қатысты бөлімдер¶
- Пішін функциялары және ақырлы элементтік жуықтау — пішін функцияларының математикалық анықтамасы
- Сандық интегралдау — интегралдау нүктелері, салмақтар және элементтік интегралды жуықтау түрі
- Үшөлшемді қатты дене элементтерінің пішін функциялары — тұтас қатты дене элементтерінің табиғи координаттары мен пішін функцияларының нақты түрлері
- Жетілдірілген элемент тұжырымдамалары — B-bar / F-bar / үйлеспейтін / қабықша / арқалық
- Элементтер кітапханасы (функциялар) — элемент түрлерін таңдау және қолдану айырмашылықтары