Shema numeriranja elemenata i biblioteka funkcija oblika¶
Funkcija oblika \(N_\alpha^e(\boldsymbol{r})\) uvedena u Funkcije oblika i aproksimacija konačnim elementima ima poseban oblik za svaki tip elementa. Ovo poglavlje klasificira grupe elemenata koje pruža FrontISTR pomoću troznamenkastih brojeva tipova elemenata i prikazuje sučelje biblioteke funkcija oblika za jednoliko rukovanje svakim elementom. Specifični prirodni koordinatni sustavi i funkcije oblika trodimenzijskih punih elemenata, kao i pretvorba redoslijeda srednjih čvorova za kvadratne elemente, obrađeni su u Funkcijama oblika trodimenzijskih punih elemenata, dok su smjernice za odabir tipova elemenata dane u Biblioteci elemenata (funkcije).
Klasifikacija elemenata i pravila imenovanja¶
Tipovi elemenata FrontISTR-a označeni su troznamenkastim brojevima. Značenje svake znamenke je sljedeće.
- Prva znamenka (grupa elemenata): 1 = linijski element/rešetka, 2 = ravninski element, 3 = puni element, 5 = sučeljni element, 6 = gredni element, 7 = ljuskasti element.
- Druga znamenka (osnovni oblik): razlikuje geometrijski oblik unutar grupe elemenata (trokut, četverokut, tetraedar, prizma ili heksaedar).
- Treća znamenka (red interpolacije): 1 = prvi red (samo kutni čvorovi), 2 = drugi red (uključujući srednje čvorove). Kao iznimka, dvočvorni rešetkasti element ima broj 301.
Dostupni elementi navedeni su po grupama elemenata u tablici u nastavku.
| Grupa elemenata | Tip elementa | Broj čvorova | Opis |
|---|---|---|---|
| Linijski element | 111 | 2 | 2-čvorni spojni element (nije dostupan za analizu naprezanja) |
| 112 | 3 | 3-čvorni spojni element (nije dostupan za analizu naprezanja) | |
| Ravninski element | 231 | 3 | 3-čvorni linearni trokutni element |
| 232 | 6 | 6-čvorni kvadratni trokutni element | |
| 241 | 4 | 4-čvorni linearni četverokutni element | |
| 242 | 8 | 8-čvorni kvadratni četverokutni element (serendipity obitelj) | |
| Puni element | 301 | 2 | 2-čvorni rešetkasti element |
| 341 | 4 | 4-čvorni linearni tetraedarski element | |
| 342 | 10 | 10-čvorni kvadratni tetraedarski element | |
| 351 | 6 | 6-čvorni linearni prizmski element | |
| 352 | 15 | 15-čvorni kvadratni prizmski element | |
| 361 | 8 | 8-čvorni linearni heksaedarski element | |
| 362 | 20 | 20-čvorni kvadratni heksaedarski element (serendipity obitelj) | |
| Sučeljni element | 541 | 4×2 | 4-čvorni linearni element četverokutne plohe (nije dostupan za analizu naprezanja) |
| 542 | 8×2 | 8-čvorni kvadratni element četverokutne plohe (nije dostupan za analizu naprezanja) | |
| Gredni element | 611 | 2 | 2-čvorni Bernoulli-Eulerov gredni element (6 stupnjeva slobode po čvoru) |
| 641 | 2×2 | 2-čvorni Bernoulli-Eulerov gredni element (3 stupnja slobode po čvoru, za mješovite stupnjeve slobode) | |
| Ljuskasti element | 731 | 3 | MITC3 trokutni ljuskasti element (6 stupnjeva slobode po čvoru) |
| 741 | 4 | MITC4 četverokutni ljuskasti element (6 stupnjeva slobode po čvoru) | |
| 743 | 9 | MITC9 četverokutni ljuskasti element (6 stupnjeva slobode po čvoru) | |
| 761 | 3×2 | MITC3 trokutni ljuskasti element (3 stupnja slobode po čvoru, za mješovite stupnjeve slobode) | |
| 781 | 4×2 | MITC4 četverokutni ljuskasti element (3 stupnja slobode po čvoru, za mješovite stupnjeve slobode) |
Linearni heksaedarski element 361 ima više formulacija (potpuna integracija, nekompatibilni mod, B-bar i F-bar), koje se odabiru putem upravljanja analizom. Pojedinosti potražite u Naprednim formulacijama elemenata.
Gredni element 641 i ljuskasti elementi 761/781 formulacije su za povezivanje konstrukcijskih elemenata sa 6 stupnjeva slobode s punim elementima s 3 stupnja slobode u istim čvorovima; jedan konstrukcijski čvor predstavlja se s dva čvora s 3 stupnja slobode. Same formulacije jednake su odgovarajućim verzijama sa 6 stupnjeva slobode (611, 731 i 741).
Biblioteka funkcija oblika¶
Rutine za proračun elemenata (izgradnja matrice krutosti i vektora unutarnjih sila) nemaju zasebne rutine za svaki tip elementa. Umjesto toga pozivaju biblioteku funkcija oblika preko jedinstvenog sučelja koje kao argument prima broj tipa elementa fetype. Modul elementInfo (fistr1/src/lib/element/element.f90) pruža sljedeće funkcije.
NumOfQuadPoints(fetype): vraća broj integracijskih točaka \(n_q\) za tip elementa.getQuadPoint(fetype, np, pos): vraća prirodne koordinate \(\boldsymbol{r}_i\) integracijske točke \(i\).getWeight(fetype, np): vraća težinu \(w_i\) integracijske točke \(i\).getShapeFunc(fetype, r, N): vraća vrijednosti funkcija oblika \(N_\alpha^e(\boldsymbol{r})\) u prirodnim koordinatama \(\boldsymbol{r}\).getShapeDeriv(fetype, r, dN): vraća derivacije funkcija oblika po prirodnim koordinatama \(\partial N_\alpha^e/\partial \boldsymbol{r}\).getGlobalDeriv(fetype, n_e, r, X^e, J, dN_x): za zadane koordinate čvorova elementa \(\boldsymbol{X}^e\) vraća derivacije po fizičkim koordinatama \(\partial N_\alpha^e/\partial \boldsymbol{x}\) i determinantu Jacobijana \(J\).getNumberOfSubface(fetype),getSubFace(fetype, k, ...): vraćaju broj graničnih ploha elementa i brojeve čvorova koji čine svaku plohu. Koriste se za konstruiranje površinskih opterećenja i kontaktnih površina.
Svaka funkcija interno grana prema broju tipa elementa i poziva potprograme funkcija oblika i njihovih derivacija u modulima niže razine predviđenima za svaki tip elementa (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). Numeričke tablice koordinata integracijskih točaka i težina objedinjene su u quadrature.f90. Za dodavanje novog tipa elementa implementirajte odgovarajući modul niže razine i dodajte grananja za njega u svaku funkciju u elementInfo.
Pretvorba redoslijeda srednjih čvorova za kvadratne trokutne elemente¶
Za kvadratni trokutni element 232 redoslijed srednjih čvorova razlikuje se između HEC-MW ulaznog formata mreže (koji najprije navodi kutne čvorove oko elementa, a zatim srednje čvorove duž bridova 1-2, 2-3, …) i internog formata FrontISTR-a koji pretpostavljaju funkcije oblika u biblioteci elemenata. Razlika između dvaju formata razrješava se neposredno nakon učitavanja mreže pomoću hecmw2fstr_mesh_conv (fistr1/src/common/hecmw2fstr_mesh_conv.f90 i hecmw2fstr_connect_conv.c), koji prema tablici pretvorbe Table232 preuređuje šest čvorova u \(\{1,2,3,6,4,5\}\). Budući da se pretvorba izvodi izravno na polju koje pohranjuje povezanost elementa, svi kasniji pozivi biblioteke elemenata koriste interni redoslijed čvorova FrontISTR-a. Pri izlazu rezultata inverzna pretvorba fstr2hecmw_mesh_conv vraća HEC-MW format prije zapisivanja, pa korisnici trebaju poznavati samo HEC-MW format i za ulaz i za izlaz.
Kvadratni trodimenzijski puni elementi 342 (tetraedarski) i 352 (prizmski) imaju slične automatske pretvorbe, dok 362 (kvadratni heksaedarski) nema pretvorbu. Za njihovu obradu vidi Funkcije oblika trodimenzijskih punih elemenata. Za kvadratni ravninski četverokutni element 242 i sučeljni element 542 pretvorba se ne izvodi jer je redoslijed srednjih čvorova jednak u HEC-MW ulaznom i internom formatu.
Povezane teme¶
- Funkcije oblika i aproksimacija konačnim elementima — matematička definicija funkcija oblika
- Numerička integracija — integracijske točke, težine i približni oblik integracije elementa
- Funkcije oblika trodimenzijskih punih elemenata — specifične prirodne koordinate i funkcije oblika za kontinuumske pune elemente
- Napredne formulacije elemenata — B-bar / F-bar / nekompatibilni mod / ljuska / greda
- Biblioteka elemenata (funkcije) — mogućnosti tipova elemenata i smjernice za odabir