Meshing di domini geometrici complessi


16

Quando ho usato il metodo degli elementi finiti , ho sempre usato domini già mesh o molto semplici.

Da quello che ho sentito, la creazione di mesh di geometrie complesse è spesso affidata a società specializzate (poiché non è considerata una parte interessante del lavoro).

Mi chiedo come sia fatto: è parzialmente automatico, in alcuni casi dovresti definire manualmente i punti e le connettività? Quali sono i criteri più comunemente utilizzati per garantire che la mesh soddisfi le aspettative del cliente? Quali sono le tendenze: dovremmo aspettarci che sia completamente automatico nei prossimi anni?

Modifica: Recentemente ho trovato una risposta parziale a questa domanda: analisi isogeometrica (IGA). L'IGA può essere visto come un'estensione del metodo degli elementi finiti al fine di risolvere il problema della generazione di mesh creando una mesh direttamente dal CAD. Utilizza la descrizione della spline CAD della geometria per creare automaticamente sia la mesh che lo spazio degli elementi finiti.

E uno dei motivi per cui è stato sviluppato è perché gli autori hanno notato che la generazione di maglie è così dolorosa che ci vuole la maggior parte del tempo per ottenere nel settore e la convergenza delle maglie viene controllata solo raramente.

Il metodo sembra essere davvero interessante ma non ampiamente utilizzato da relativamente nuovo (10 anni).


Non sono un esperto di meshing, ma l'ho fatto alcune volte e dipende in gran parte da ciò che vuoi ottenere e da quanto tempo hai a disposizione. La mesh può essere praticamente automatica usando la configurazione predefinita, ma puoi anche cambiare la configurazione localmente e in alcuni software puoi sia definire manualmente la forma degli elementi mesh sia la loro dimensione per quasi ogni nodo.
Slovakov,

1
Questo mi sembra troppo ampio nella sua forma attuale. Ci sono interi libri scritti su mesh. Sarebbe possibile restringere ulteriormente la portata della domanda?
Paul Gessler,

Nemmeno un esperto, ma credi che il 90% + sia automatico. La regolazione manuale viene eseguita se le simulazioni mostrano risultati non realistici o non convergono. Altrimenti concordo provvisoriamente con @PaulGessler qui, anche se penso che con un po 'la domanda potrebbe funzionare molto bene. È un campo interessante. Probabilmente l'ultima parte è un po 'troppo ampia per me "tendenze nei prossimi anni" e il problema potrebbe essere dichiarato più specifico, ad esempio con un esempio concreto.
Pandita,

@PaulGessler Sono d'accordo che la domanda sia ampia. Si tratta davvero di meshing visto attraverso gli occhi di un ingegnere. So che sono molti libri sul meshing, ma immagino che la maggior parte di essi provenga da un punto di vista matematico e fornisca poche informazioni su ciò che viene fatto in casi concreti.
Bérenger,

@pandita Purtroppo non ho un esempio così concreto. Forse il 90% è automatico, forse addirittura il 99%. Ma il restante 10% o 1% è un grosso problema da quello che ho sentito.
Bérenger,

Risposte:


8

Esistono diverse tecniche per la creazione di mesh di domini complessi per l'analisi agli elementi finiti. In genere rientrano in due categorie: strutturato e non strutturato. Per le mesh strutturate, sostanzialmente l'intera mesh può essere mappata direttamente su un array 3D di coordinate XYZ, mentre le griglie non strutturate non possono. C'è una buona descrizione delle classificazioni con le immagini qui: http://en.wikipedia.org/wiki/Grid_classification

All'interno della mesh strutturata, ci sono due tipi specifici:

Maglie strutturate:

  • Maglia cartesiana - In pratica utilizza cubi hexahedral per rappresentare gli elementi. Un pacchetto ben noto che utilizza mesh cartesiane sarebbe Cart3D. Questo non è davvero complicato, ma la difficoltà sta nel definire dove i cubi si intersecano con la superficie.

  • Maglie adattate al corpo - in maglie curvilinee montate sul corpo, possono essere suddivise in: griglie algebriche o griglie ellittiche. In entrambi i casi l'utente deve definire i punti sui limiti del dominio. Per generare punti all'interno del dominio, le griglie algebriche di solito usano alcune variazioni di una tecnica chiamata interpolazione eremita per generare i punti interni. Le griglie ellittiche possono produrre griglie curvilinee dove praticamente tutte le linee della griglia sono ortogonali e sono generalmente utilizzate per le maglie adattate al corpo. I punti interni qui sono sostanzialmente calcolati risolvendo un'equazione differenziale parziale ellittica. Il libro di testo defacto per questi tipi di tecniche adattate al corpo è disponibile online qui: http://www.erc.msstate.edu/publications/gridbook/. L'autore di questo libro è sostanzialmente considerato "il padre della generazione della griglia", perché ha ideato la maglia ellittica per la generazione di maglie.

Maglie non strutturate

  • Poiché le griglie non strutturate non possono essere mappate su un array 3D, devono anche specificare una mappatura di connettività, che può mettere in relazione quali elementi sono correlati ad altri elementi. L'algoritmo di base utilizzato si chiama "triangolazione di Delauney", che è discussa in dettaglio qui: http://en.wikipedia.org/wiki/Delaunay_triangulation . Uno dei libri popolari che tratta questo argomento si chiama "The Handbook of Grid Generation".

  • L'algoritmo di base qui è, dato un insieme iniziale di punti sul confine: (1) Calcola una triangolazione iniziale, (2) Esegui un controllo di qualità basato sull'algoritmo di perfezionamento di Ruppert ( http://en.wikipedia.org/wiki/Ruppert % 27s_algorithm ), (3) Inserire o eliminare punti in base all'algoritmo di Ruppert in modo tale che i tetraedri generati abbiano un angolo minimo (ad es. 24 gradi).

Per rispondere alla tua domanda sui criteri, ciò che rende una buona mesh ha a che fare con una serie di fattori, ma un paio di fattori più importanti sono: (1) risoluzione della griglia (ci sono abbastanza punti della griglia per ottenere la risoluzione richiesta) e ( 2) la geometria degli elementi (inclinazione, angolo minimo, proporzioni, ecc.). Questo è discusso qui: http://en.wikipedia.org/wiki/Types_of_mesh Entrambi questi influenzeranno la qualità di una soluzione agli elementi finiti. C'è un altro aspetto della mesh non strutturata chiamato "Advancing Front" che viene utilizzato per produrre punti vicino al limite nel caso della fluidodinamica.

Dopo aver detto tutto ciò, la maggior parte delle tecniche richiede un po 'di lavoro in anticipo e quindi sono anche in qualche modo automatiche. In qualsiasi tipo di algoritmo mesh, l'utente dovrà impiegare del tempo per definire la geometria e una certa distribuzione iniziale dei punti sulla superficie. Dalla mia esperienza, le maglie aderenti impiegano più tempo. Sia la triangolazione di Delaunay che le maglie cartesiane sono sostanzialmente automatiche nel generare i punti del dominio interno.

Non ho lavorato molto in questo campo negli ultimi anni, ma la tendenza in passato si stava spostando dalle griglie montate sul corpo alle triangolazioni Delaunay non strutturate o alle griglie cartesiane. Inoltre, ci sono stati alcuni codici che possono convertire una mesh cartesiana in una mesh Delaunay non strutturata e viceversa (ad esempio Gambit).

Non credo che questi codici di meshing saranno mai completamente automatici, poiché è necessario un certo livello di input per specificare la geometria, che di solito comporta la pulizia di un modello CAD. Più recentemente sono state sviluppate tecniche per automatizzare gran parte di questi compiti. Generare i punti interni del dominio è praticamente completamente automatico in questi giorni. Questi moderni sistemi di generazione della rete stanno diventando abbastanza maturi in termini di produzione di reti di alta qualità. Una delle aree di ricerca dell'ultimo decennio è stata quella di accelerare la generazione della griglia utilizzando l'elaborazione parallela e negli ultimi anni la generazione di reti parallele utilizzando più unità di elaborazione grafica (GPU).

C'è un intero elenco di software per la generazione di mesh qui: http://www.robertschneiders.de/meshgeneration/software.html Questi dovrebbero rientrare in una delle tre categorie sopra.


Penso che ci sia opportunità di "campionamento casuale di dischi velenosi" nel dominio come una griglia automatica pseudo-strutturata. Mi chiedo se il diametro del disco possa essere migliorato calcolando una soluzione di qualcosa come l'equazione del calore e rendendo il raggio proporzionale al flusso di calore o simile. youtube.com/watch?v=G94y3YRqSHk sandia.gov/~samitch/papers/SIGGRAPH-MPS-for-posting.pdf stackoverflow.com/questions/14313916/...
EngrStudent - Ripristinare Monica

5

Mentre gli altri ragazzi hanno spiegato il quadro teorico alla base del meshing, la pratica è nettamente diversa e non è affatto automatica nei settori in cui la qualità della mesh è della massima importanza dato che i risultati dell'analisi degli elementi finiti coprono gran parte del processo di sviluppo del prodotto.

Vediamo innanzitutto come viene eseguita la mesh:

La mesh per domini strutturali è di tre tipi: mesh 1D, mesh 2D e mesh 3D in base al tipo di elementi utilizzati per la mesh.

  • Mesh 1D: elemento di linea

  • Mesh 2D: elemento quad / tria

  • Mesh 3D: elementi hexa (mattone) / penta / tetra.

La mesh da utilizzare, ad es. 1D, 2D o 3D, dipende principalmente dall'accuratezza computazionale richiesta, dal costo computazionale (tempo richiesto per risolvere il problema) e dalle proporzioni del dominio . Le proporzioni più alte dovrebbero essere più di 10 (come regola dei pollici in generale) per trascurare una dimensione e scegliere una mesh di dimensioni ridotte.

Lasciatemi spiegare.

  • Un dominio 100X50X80 ha tutte dimensioni comparabili e le proporzioni più alte sono 100/50 = 3. Pertanto, gli elementi 3D verranno utilizzati per mesh quella parte.

  • Un dominio 100X50X8 ha una dimensione trascurabile e le proporzioni più alte sono 100/8 = 12. Pertanto, verranno utilizzati elementi 2D. Una parte in lamiera è un perfetto esempio di questo.

  • Un dominio 100X5X8 ha due dimensioni trascurabili e le proporzioni più alte sono 100/5 = 20. Pertanto, verranno utilizzati gli elementi 1D. Un assieme di truss serve da esempio.

Una volta deciso il tipo di elementi da utilizzare, la qualità degli elementi viene visualizzata. Per mantenere la qualità, la mesh deve essere eseguita manualmente .

Tutti i software di mesh sono dotati di un'opzione automesh, che funziona solo con parti mappabili e facce / blocchi diritti. La maggior parte delle spiegazioni in altre risposte (in particolare la risposta di Wes) sono correlate a ciò che viene fatto in background affinché automesh funzioni.

L'idea quindi è quella di dividere il dominio in più patch e automatizzarle patch per patch e garantire continuamente la connessione tra le patch . Garantire che la connettività sia per lo più automatica in base a un controllo basato sulla tolleranza. Il meshing 1D è più semplice in questi aspetti.

La prossima cosa è mantenere il flusso e la simmetria della mesh. Il flusso di mesh indica la trasformazione delle dimensioni degli elementi. Quando devi rappresentare una caratteristica complessa, la dimensione dell'elemento cambierà da più grande a più piccola. Ciò non dovrebbe accadere in un lampo e il graduale cambio di dimensione deve essere mantenuto. Inoltre, le parti simmetriche dovrebbero avere una maglia simmetrica per mantenere l'integrità dei risultati della FEA.

Tutti i punti precedenti aiuteranno a mantenere la qualità della mesh. Tuttavia, i software di meshing di solito hanno una disposizione per controllare la qualità della mesh utilizzando alcuni parametri che possono essere regolati secondo le proprie esigenze. Un controllo finale su qualità e connettività è essenziale per garantire risultati di qualità da FEA.

Alcune qualità attese da una buona maglia:

dalla maglia 1D

  • Nessun problema con la connettività dei nodi
  • Nessun elemento duplicato
  • Mantenere la lunghezza minima e massima

da mesh 2D / 3D

  • Angolo di deformazione inferiore a 5 gradi {calcolato dividendo un quadrante in due trias e trovando l'angolo tra i due piani che formano il trias}
  • Proporzioni inferiori a 5 {che divide il lato di lunghezza massima di un elemento per il lato di lunghezza minima dell'elemento.}
  • Inclinare l'angolo di oltre 60 gradi {l'angolo minimo tra il vettore da ciascun nodo al lato mediano opposto e il vettore tra i due lati centrali adiacenti su ciascun nodo dell'elemento. Sono riportati novanta gradi meno l'angolo minimo trovato.}
  • Giacobiano più di 0,7 {Il rapporto giacobino è una misura della deviazione di un dato elemento da un elemento di forma ideale. Il valore giacobino varia da -1,0 a 1,0, dove 1,0 rappresenta un elemento dalla forma perfetta. La forma ideale per un elemento dipende dal tipo di elemento.}
  • Elementi tria con angolo tra 20 e 120 gradi
  • Elementi quadrupli con angolo compreso tra 45 e 135 gradi
  • Mantenere la lunghezza minima e massima
  • Connettività degli elementi
  • Meno del 10% di elementi tria in mesh 2D
  • Normali di elementi 2D orientati nella stessa direzione per parti particolari.
  • Tet collapse for tetra elements {Definito come la distanza di un nodo dalla faccia opposta divisa per l'area della faccia moltiplicata per 1,24}

da tutte le maglie

  • Numerazione dei nodi e degli elementi correttamente in intervalli definiti
  • Deviazione minima dalla geometria e deviazione supportata da un solido giudizio ingegneristico.
  • Collegamenti speciali tra diversi tipi (1D / 2D / 3D) di elementi correttamente definiti.

Tuttavia, tutti questi parametri di qualità possono variare a seconda del tipo di analisi, dell'accuratezza richiesta, delle linee guida aziendali e dei costi di calcolo.

Perché questi elementi non sono automatizzati:

L'analisi degli elementi finiti richiede una mesh corretta per ottenere risultati corretti. Questa correttezza non può essere definita con alcuni parametri e anche in questo caso, saranno contraddittorie.

Anche in questo caso per diversi tipi di analisi, la definizione della qualità della mesh può essere diversa.

La non linearità di materiale, geometrica e di contatto complica ulteriormente i requisiti definendo una buona mesh.

Un blocco iniziale che ho osservato utilizzando la funzione automesh è la rappresentazione errata della geometria per mantenere la qualità della mesh in altri aspetti. Entrambi sono importanti. Inoltre, la rappresentazione della geometria può essere semplificata con buoni giudizi ingegneristici, che è difficile da automatizzare poiché varia da caso a caso.

Ad esempio, Hypermesh è un pacchetto di mesh commerciale molto popolare di Altair Engineering che ha un'applicazione Batchmesher che esegue il meshing per te. Tuttavia, non riesce a mantenere le giuste deviazioni della geometria e le connessioni tra elementi per parti complesse.

tl; dr:

Ecco come il meshing viene eseguito in modo professionale

  • Decidi quale tipo di mesh utilizzare
  • Mesh le parti patch per patch e garantire connessioni adeguate
  • Mantenere il flusso e la simmetria della mesh
  • Effettuare tutti i controlli di qualità e garantire la qualità
  • Garantire una connettività adeguata
  • Controllare le deviazioni della geometria e la massa degli elementi finiti
  • Fornire il modello agli analisti che potrebbero ricombinare nuovamente determinate aree in base ai requisiti di analisi.

PS: sono nuovo di questo forum e questa è una delle mie prime risposte che mi sono impegnata molto. Gradirei molto se avessi un feedback. Ho alcune risposte di Quora su mesh e FEA in cui questi punti sono spiegati in dettaglio con la grafica. [Analisi pratica agli elementi finiti]


1

(1) È parzialmente automatico?

Sì. E potrebbe essere totalmente automatico.

(2) Dovresti definire manualmente i punti e le connettività in alcuni casi?

No, tranne nei compiti in classe. A proposito, si chiama nodo ed elemento.

(3) Quali sono i criteri più comunemente utilizzati per garantire che la mesh soddisfi le aspettative del cliente?

Questo potrebbe essere un libro.

(4) Quali sono le tendenze: dovremmo aspettarci che sia completamente automatico nei prossimi anni?

Sì, è già automatico, ma necessita ancora di miglioramenti.


0

La mesh di un corpo con triangoli 2D o tet 3D può essere eseguita automaticamente, ma questi elementi non danno i migliori risultati: quad e mattoni sono generalmente migliori. Tuttavia, la creazione di mesh di un corpo interamente con quadrupi / mattoni non può essere eseguita automaticamente e devi dividerlo manualmente in blocchi che possono essere automatizzati. Questo non è banale.

Inoltre, una mesh adatta a un'analisi termica non è generalmente adatta, ad esempio, a un'analisi delle vibrazioni.

Detto questo, eseguire analisi con un numero enorme di piccoli elementi non è più il problema di una volta e quindi personalizzare la mesh in base al tipo di analisi è meno importante di quanto non fosse in passato. Inoltre, l'elemento tet progettato da Burton e Clegg ( Tetrahedral Elements for Explicit Ballistics Simulation ), sembra funzionare come un mattone, quindi il mio primo punto potrebbe essere meno importante di quanto non fosse.

In breve, il meshing automatico ha fatto molta strada ma è ancora oggetto di molte ricerche. Sarà mai completamente automatico? Sono propenso a dubitarne. Anche con il remeshing automatico di aree con alti gradienti di campo, penso che una buona scelta iniziale di mesh sarà utile.


0

Sì, ci sono programmi software di meshing che consentono il meshing completamente automatico. Se sei interessato a mesh superfici piane o curve, ci sono diversi prodotti che forniscono mesh completamente automatiche, offrendo mesh quadrilatere al 100% su superfici di qualsiasi grado di complessità. Suggerirei di visitare la seguente pagina Web e di scegliere uno dei programmi più adatti alle proprie esigenze il più vicino possibile (alcuni di questi programmi sono i migliori per applicazioni di ingegneria strutturale, altri - per la modellazione di circuiti stampati, ecc.) Http: / /members.ozemail.com.au/~comecau/products.htm

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.