Salta el contingut

Esquema de numeració dels elements i biblioteca de funcions de forma

La funció de forma \(N_\alpha^e(\boldsymbol{r})\) introduïda a Funcions de forma i aproximació per elements finits té una forma específica per a cada tipus d'element. Aquest capítol classifica els grups d'elements proporcionats per FrontISTR mitjançant números de tipus d'element de tres xifres i presenta la interfície de la biblioteca de funcions de forma per tractar cada element de manera uniforme. Els sistemes concrets de coordenades naturals i les funcions de forma dels elements sòlids tridimensionals, així com la conversió de l'ordre dels nodes intermedis per als elements quadràtics, es tracten a Funcions de forma dels elements sòlids tridimensionals, mentre que les directrius per seleccionar tipus d'element es proporcionen a Biblioteca d'elements (Funcions).

Classificació dels elements i regles de nomenclatura

Els tipus d'element de FrontISTR s'identifiquen mitjançant números de tres xifres. El significat de cada xifra és el següent.

  • Primera xifra (grup d'elements): 1 = element de línia/armadura, 2 = element pla, 3 = element sòlid, 5 = element d'interfície, 6 = element de biga, 7 = element de làmina.
  • Segona xifra (forma bàsica): distingeix la forma geomètrica dins del grup d'elements (triangle, quadrilàter, tetraedre, prisma o hexaedre).
  • Tercera xifra (ordre d'interpolació): 1 = primer ordre (només nodes de cantonada), 2 = segon ordre (incloent-hi nodes intermedis). Com a excepció, l'element d'armadura de dos nodes és el número 301.

Els elements proporcionats s'enumeren per grup d'elements a la taula següent.

Grup d'elements Tipus d'element Nombre de nodes Descripció
Element de línia 111 2 Element d'enllaç de 2 nodes (no disponible per a l'anàlisi de tensions)
112 3 Element d'enllaç de 3 nodes (no disponible per a l'anàlisi de tensions)
Element pla 231 3 Element triangular lineal de 3 nodes
232 6 Element triangular quadràtic de 6 nodes
241 4 Element quadrilateral lineal de 4 nodes
242 8 Element quadrilateral quadràtic de 8 nodes (família Serendipity)
Element sòlid 301 2 Element d'armadura de 2 nodes
341 4 Element tetraèdric lineal de 4 nodes
342 10 Element tetraèdric quadràtic de 10 nodes
351 6 Element prismàtic lineal de 6 nodes
352 15 Element prismàtic quadràtic de 15 nodes
361 8 Element hexaèdric lineal de 8 nodes
362 20 Element hexaèdric quadràtic de 20 nodes (família Serendipity)
Element d'interfície 541 4×2 Element de cara quadrilateral lineal de 4 nodes (no disponible per a l'anàlisi de tensions)
542 8×2 Element de cara quadrilateral quadràtic de 8 nodes (no disponible per a l'anàlisi de tensions)
Element de biga 611 2 Element de biga de Bernoulli-Euler de 2 nodes (6 GDL per node)
641 2×2 Element de biga de Bernoulli-Euler de 2 nodes (3 GDL per node, per a GDL mixtos)
Element de làmina 731 3 Element de làmina triangular MITC3 (6 GDL per node)
741 4 Element de làmina quadrilateral MITC4 (6 GDL per node)
743 9 Element de làmina quadrilateral MITC9 (6 GDL per node)
761 3×2 Element de làmina triangular MITC3 (3 GDL per node, per a GDL mixtos)
781 4×2 Element de làmina quadrilateral MITC4 (3 GDL per node, per a GDL mixtos)

L'element hexaèdric lineal 361 té diverses formulacions (integració completa, mode incompatible, B-bar i F-bar), que se seleccionen mitjançant el control de l'anàlisi. Per obtenir-ne detalls, consulteu Formulacions avançades d'elements.

L'element de biga 641 i els elements de làmina 761/781 són formulacions per connectar elements estructurals amb 6 graus de llibertat a elements sòlids amb 3 graus de llibertat als mateixos nodes; un node estructural es representa mitjançant dos nodes de 3 GDL. Les formulacions en si són idèntiques a les versions corresponents de 6 GDL (611, 731 i 741).

Biblioteca de funcions de forma

Les rutines de càlcul d'elements (construcció de la matriu de rigidesa i del vector de forces internes) no tenen rutines separades per a cada tipus d'element. En lloc d'això, criden la biblioteca de funcions de forma mitjançant una interfície unificada que pren el número de tipus d'element fetype com a argument. El mòdul elementInfo (fistr1/src/lib/element/element.f90) proporciona les funcions següents.

  • NumOfQuadPoints(fetype): retorna el nombre de punts d'integració \(n_q\) per al tipus d'element.
  • getQuadPoint(fetype, np, pos): retorna les coordenades naturals \(\boldsymbol{r}_i\) del punt d'integració \(i\).
  • getWeight(fetype, np): retorna el pes \(w_i\) del punt d'integració \(i\).
  • getShapeFunc(fetype, r, N): retorna els valors de la funció de forma \(N_\alpha^e(\boldsymbol{r})\) a les coordenades naturals \(\boldsymbol{r}\).
  • getShapeDeriv(fetype, r, dN): retorna les derivades respecte de les coordenades naturals \(\partial N_\alpha^e/\partial \boldsymbol{r}\) de les funcions de forma.
  • getGlobalDeriv(fetype, n_e, r, X^e, J, dN_x): donades les coordenades nodals de l'element \(\boldsymbol{X}^e\), retorna les derivades respecte de les coordenades físiques \(\partial N_\alpha^e/\partial \boldsymbol{x}\) i el determinant jacobià \(J\).
  • getNumberOfSubface(fetype), getSubFace(fetype, k, ...): retornen el nombre de cares de contorn de l'element i els números de node que constitueixen cada cara. S'utilitzen per construir càrregues superficials i superfícies de contacte.

Cada funció bifurca internament segons el número de tipus d'element i crida les subrutines de funció de forma i de derivades de la funció de forma dels mòduls de nivell inferior proporcionats per a cada tipus d'element (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). Les taules numèriques de coordenades i pesos dels punts d'integració es consoliden a quadrature.f90. Per afegir un tipus d'element nou, implementeu el mòdul de nivell inferior corresponent i afegiu-hi branques a cada funció d'elementInfo.

Conversió de l'ordre dels nodes intermedis per a elements triangulars quadràtics

Per a l'element triangular quadràtic 232, l'ordre dels nodes intermedis és diferent entre el format d'entrada de malla HEC-MW (que ordena els nodes de cantonada al voltant de l'element i després els nodes intermedis al llarg de les arestes 1-2, 2-3, …) i el format intern de FrontISTR que pressuposen les funcions de forma de la biblioteca d'elements. La diferència entre els dos formats es resol immediatament després de carregar la malla mitjançant hecmw2fstr_mesh_conv (fistr1/src/common/hecmw2fstr_mesh_conv.f90 i hecmw2fstr_connect_conv.c), que reordena els sis nodes a \(\{1,2,3,6,4,5\}\) segons la taula de conversió Table232. Com que la conversió es fa directament sobre la matriu que emmagatzema la connectivitat dels elements, totes les crides posteriors a la biblioteca d'elements utilitzen l'ordre intern de nodes de FrontISTR. En la sortida de resultats, la conversió inversa fstr2hecmw_mesh_conv restaura el format HEC-MW abans d'escriure, de manera que els usuaris només han de tenir en compte el format HEC-MW tant per a l'entrada com per a la sortida.

Els elements sòlids tridimensionals quadràtics 342 (tetraèdric) i 352 (prismàtic) tenen conversions automàtiques similars, mentre que 362 (hexaèdric quadràtic) no té conversió. Consulteu Funcions de forma dels elements sòlids tridimensionals per al seu tractament. Per a l'element quadrilateral pla quadràtic 242 i l'element d'interfície 542, no es fa cap conversió perquè l'ordre dels nodes intermedis és el mateix en el format d'entrada HEC-MW i en el format intern.

Temes relacionats