Elementu-zenbakien sistema eta forma-funtzioen liburutegia¶
Forma-funtzioak eta elementu finituen hurbilketa atalean sartutako \(N_\alpha^e(\boldsymbol{r})\) forma-funtzioak forma zehatza desberdina du elementu mota bakoitzerako. Kapitulu honetan FrontISTR-ek eskaintzen dituen elementu taldeak hiru digituko elementu mota zenbakien bidez sailkatzen dira, eta elementu guztiak modu bateratuan tratatzeko forma-funtzioen liburutegiaren interfazea erakusten da. Hiru dimentsioko elementu solidoen koordenatu naturalen sistemak eta forma-funtzioen forma zehatzak, baita bigarren mailako elementuen erdiko nodoen ordenaren bihurketa ere, Hiru dimentsioko elementu solidoen forma-funtzioak atalean azaltzen dira; elementu mota hautatzeko gida, berriz, Elementu-liburutegia (funtzioak) atalean.
Elementuen sailkapena eta izendapen-arauak¶
FrontISTR elementu motak hiru digituko zenbakien bidez identifikatzen dira. Digitu bakoitzaren esanahia honakoa da.
- 1. digitua (elementu taldea): 1 = lerro-elementua / truss-a, 2 = elementu laua, 3 = elementu solidoa, 5 = interfaze-elementua, 6 = habe-elementua, 7 = oskol-elementua.
- 2. digitua (oinarrizko forma): elementu taldearen barruko forma geometrikoa bereizten du (triangelua, laukilateroa, tetraedroa, prisma edo hexaedroa).
- 3. digitua (interpolazio-maila): 1 = lehen maila (erpin-nodoak soilik), 2 = bigarren maila (erdiko nodoak barne). Salbuespen gisa, bi nodoko truss elementua 301 da.
Eskainitako elementuak elementu-taldeka ageri dira beheko taulan.
| Elementu taldea | Elementu mota | Nodo kopurua | Deskribapena |
|---|---|---|---|
| Lerro-elementua | 111 | 2 | 2 nodoko lotura-elementua (ezin da erabili tentsio-analisian) |
| 112 | 3 | 3 nodoko lotura-elementua (ezin da erabili tentsio-analisian) | |
| Elementu laua | 231 | 3 | 3 nodoko triangelu-elementu lineala |
| 232 | 6 | 6 nodoko triangelu-elementu koadratikoa | |
| 241 | 4 | 4 nodoko laukilatero-elementu lineala | |
| 242 | 8 | 8 nodoko laukilatero-elementu koadratikoa (Serendipity familia) | |
| Elementu solidoa | 301 | 2 | 2 nodoko truss elementua |
| 341 | 4 | 4 nodoko tetraedro-elementu lineala | |
| 342 | 10 | 10 nodoko tetraedro-elementu koadratikoa | |
| 351 | 6 | 6 nodoko prisma-elementu lineala | |
| 352 | 15 | 15 nodoko prisma-elementu koadratikoa | |
| 361 | 8 | 8 nodoko hexaedro-elementu lineala | |
| 362 | 20 | 20 nodoko hexaedro-elementu koadratikoa (Serendipity familia) | |
| Interfaze-elementua | 541 | 4×2 | 4 nodoko laukilatero-aurpegiko elementu lineala (ezin da erabili tentsio-analisian) |
| 542 | 8×2 | 8 nodoko laukilatero-aurpegiko elementu koadratikoa (ezin da erabili tentsio-analisian) | |
| Habe-elementua | 611 | 2 | 2 nodoko Bernoulli-Euler habe-elementua (6 askatasun-gradu nodoko) |
| 641 | 2×2 | 2 nodoko Bernoulli-Euler habe-elementua (3 askatasun-gradu nodoko, askatasun-gradu mistoetarako) | |
| Oskol-elementua | 731 | 3 | MITC3 triangelu-oskol elementua (6 askatasun-gradu nodoko) |
| 741 | 4 | MITC4 laukilatero-oskol elementua (6 askatasun-gradu nodoko) | |
| 743 | 9 | MITC9 laukilatero-oskol elementua (6 askatasun-gradu nodoko) | |
| 761 | 3×2 | MITC3 triangelu-oskol elementua (3 askatasun-gradu nodoko, askatasun-gradu mistoetarako) | |
| 781 | 4×2 | MITC4 laukilatero-oskol elementua (3 askatasun-gradu nodoko, askatasun-gradu mistoetarako) |
361 hexaedro-elementu linealak hainbat formulazio ditu (integrazio osoa, modu bateraezina, B-bar eta F-bar), eta analisi-kontroletik hautatzen dira. Xehetasunetarako, ikus Elementu-formulazio aurreratuak.
641 habe-elementua eta 761/781 oskol-elementuak 6 askatasun-graduko egitura-elementuak 3 askatasun-graduko elementu solidoekin nodo beretan konektatzeko formulazioak dira; egitura-nodo bat 3 askatasun-graduko bi nodoren bidez adierazten da. Formulazioak berak dagozkien 6 askatasun-graduko bertsioen (611, 731 eta 741) berdinak dira.
Forma-funtzioen liburutegia¶
Elementuen kalkulu-errutinek (zurruntasun-matrizea eta barne-indarren bektorea osatzeko) ez dute errutina bereizirik elementu mota bakoitzerako; forma-funtzioen liburutegia deitzen dute elementu mota zenbakia fetype argumentu gisa hartzen duen interfaze bateratuaren bidez. elementInfo moduluak (fistr1/src/lib/element/element.f90) honako funtzioak eskaintzen ditu.
NumOfQuadPoints(fetype): elementu motaren integrazio-puntu kopurua \(n_q\) itzultzen du.getQuadPoint(fetype, np, pos): \(i\) integrazio-puntuaren koordenatu naturalak \(\boldsymbol{r}_i\) itzultzen ditu.getWeight(fetype, np): \(i\) integrazio-puntuaren pisua \(w_i\) itzultzen du.getShapeFunc(fetype, r, N): \(\boldsymbol{r}\) koordenatu naturaletan forma-funtzioaren balioak \(N_\alpha^e(\boldsymbol{r})\) itzultzen ditu.getShapeDeriv(fetype, r, dN): forma-funtzioen koordenatu naturalekiko deribatuak \(\partial N_\alpha^e/\partial \boldsymbol{r}\) itzultzen ditu.getGlobalDeriv(fetype, n_e, r, X^e, J, dN_x): elementu-nodoen koordenatuak \(\boldsymbol{X}^e\) emanda, koordenatu fisikoekiko deribatuak \(\partial N_\alpha^e/\partial \boldsymbol{x}\) eta Jacobi determinantea \(J\) itzultzen ditu.getNumberOfSubface(fetype),getSubFace(fetype, k, ...): elementuaren muga-aurpegien kopurua eta aurpegi bakoitza osatzen duten nodo-zenbakiak itzultzen ditu. Gainazal-kargak eta kontaktu-gainazalak osatzeko erabiltzen dira.
Funtzio bakoitzak elementu mota zenbakiaren arabera adarkatzen du barnean, eta elementu mota bakoitzerako prestatutako behe-mailako moduluetako (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) forma-funtzio eta haien deribatuen azpierrutinak deitzen ditu. Integrazio-puntuen koordenatuen eta pisuen zenbakizko taulak quadrature.f90-n bateratuta daude. Elementu mota berri bat gehitzeko, dagokion behe-mailako modulua inplementatu eta elementInfo-ko funtzio bakoitzaren adarkatzean gehitu.
Triangelu-elementu koadratikoen erdiko nodoen ordena bihurtzea¶
232 triangelu-elementu koadratikoan, erdiko nodoen ordena desberdina da HEC-MW sare-sarrera formatuan (erpin-nodoak inguratu ondoren erdiko nodoak 1-2, 2-3, … ertzen ordenan jartzen dituena) eta elementu-liburutegiko forma-funtzioek aurreikusten duten FrontISTR barne-formatuan. Bi formatuen arteko aldea sarea irakurri eta berehala deitzen den hecmw2fstr_mesh_conv-ek (fistr1/src/common/hecmw2fstr_mesh_conv.f90 eta hecmw2fstr_connect_conv.c) konpontzen du, Table232 bihurketa-taularen arabera sei nodoak \(\{1,2,3,6,4,5\}\) ordenan berrantolatuz. Bihurketa elementu-konektibitatea gordetzen duen arrayan zuzenean egiten denez, ondorengo elementu-liburutegiaren dei guztiek FrontISTR barruko nodo-ordena erabiltzen dute. Emaitzak ateratzean, fstr2hecmw_mesh_conv alderantzizko bihurketak HEC-MW formatua leheneratzen du idatzi aurretik; beraz, erabiltzaileak HEC-MW formatua bakarrik hartu behar du kontuan sarreran zein irteeran.
342 (tetraedro koadratikoa) eta 352 (prisma koadratikoa) hiru dimentsioko elementu solidoek ere antzeko bihurketa automatikoa dute, baina 362 (hexaedro koadratikoa) ez da bihurtzen. Haien tratamendurako, ikus Hiru dimentsioko elementu solidoen forma-funtzioak. 242 laukilatero-elementu lau koadratikoan eta 542 interfaze-elementuan ez da bihurketarik egiten, HEC-MW sarrera-formatuko eta barne-formatuko erdiko nodoen ordena berdina delako.
Erlazionatutako gaiak¶
- Forma-funtzioak eta elementu finituen hurbilketa — Forma-funtzioen definizio matematikoa
- Zenbakizko integrazioa — Integrazio-puntuak, pisuak eta elementu-integrazioaren hurbilketa
- Hiru dimentsioko elementu solidoen forma-funtzioak — Kontinuumeko elementu solidoen koordenatu naturalak eta forma-funtzioen forma zehatzak
- Elementu-formulazio aurreratuak — B-bar / F-bar / modu bateraezina / oskola / habea
- Elementu-liburutegia (funtzioak) — Elementu moten aukerak eta hautatzeko irizpideak