MES: Siatka MES z kształtu przy pomocy generatora Gmsh

From FreeCAD Documentation
This page is a translated version of the page FEM MeshGmshFromShape and the translation is 100% complete.

Siatka MES z kształtu przy pomocy generatora Gmsh

Lokalizacja w menu
Siatka → Siatka MES z kształtu przy pomocy generatora Gmsh
Środowisko pracy
MES
Domyślny skrót
brak
Wprowadzono w wersji
-
Zobacz także
Poradnik MES

Opis

Geometria do analizy metodą elementów skończonych musi być poddana dyskretyzacji do siatki MES. To narzędzie korzysta z programu Gmsh (który musi być zainstalowany w systemie) do generowania siatki.

W zależności od Twojego systemu operacyjnego i pakietu instalacyjnego, Gmsh może być dołączony do programu FreeCAD lub nie. Więcej informacji można znaleźć na stronie Instalacja środowiska MES.

Użycie

  1. Wybierz kształt, który chcesz analizować. Dla objętości musi to być bryła pojedyncza lub złożona. Bryła złożona jest konieczna jeśli część jest wykonana z wielu materiałów (bryłę złożoną można utworzyć przy pomocy narzędzia Fragmentacja funkcją logiczną).
    • Press the FEM mesh from shape by Gmsh button.
    • Wybierz opcję Siatka → Siatka MES z kształtu przy pomocy generatora Gmsh z menu.
  2. Opcjonalnie, edytuj minimalny i maksymalny rozmiar elementu (autodetekcja często tworzy zbyt rzadkie siatki).
  3. Wciśnij przycisk Zastosuj i poczekaj aż zakończy się generowanie siatki.
  4. Zamknij okno dialogowe. Powinieneś widzieć nowy obiekt FEMMeshGMSH dodany do aktywnego kontenera analizy.

Po utworzeniu siatki można zmienić jej właściwości używając edytora właściwości. Po zmianie właściwości należy ponownie otworzyć okno dialogowe narzędzia i wcisnąć przycisk Zastosuj (można zostawić okno dialogowe otwarte podczas zmieniania właściwości).

Właściwości

  • DANEAlgorithm2D: Algorytm do tworzenia siatek 2D. Dostępne algorytmy są opisane na stronie projektu GMSH. Dla Delaunay zobacz stronętriangulacja Delone.
  • DANEAlgorithm3D: Algorytm do tworzenia siatek 3D. Dostępne algorytmy są opisane na stronie projektu GMSH.
  • DANECharacteristic Length Max: Maksymalny rozmiar elementów. Jeśli ustawione jest 0.0 to rozmiar zostanie dobrany automatycznie. Ta właściwość może być również zmieniona w oknie dialogowym narzędzia w polu Maksymalny rozmiar elementu.
  • DANECharacteristic Length Min: Minimalny rozmiar elementów. Jeśli ustawione jest 0.0 to rozmiar zostanie dobrany automatycznie. Ta właściwość może być również zmieniona w oknie dialogowym narzędzia w polu Minimalny rozmiar elementu.
  • DANECoherence Mesh:
    • Prawda (domyślne) zduplikowane węzły siatki zostaną usunięte
    • Fałsz
  • DANEElement Dimension: Przestrzeń elementów siatki. Ta właściwość może być również zmieniona w oknie dialogowym narzędzia w polu Wymiar elementu.
    • From Shape (domyślne) przestrzeń zostanie określona na podstawie przestrzeni obiektu, dla którego siatka jest generowana
    • 1D
    • 2D
    • 3D
  • DANEElement Order: Rząd elementów. Ta właściwość może być również zmieniona w oknie dialogowym narzędzia w polu Kolejność elementów. dostępne w wersji 0.20
    • 1st
    • 2nd (domyślne)
      Uwaga: Jeśli korzystasz z solvera Elmer, możesz trafić na ten błąd: ERROR:: GetEdgeBasis: Can't handle but linear elements, sorry. To oznacza, że dane równanie (typ analizy) nie wspiera siatek drugiego rzędu. W takim wypadku użyj siatki pierwszego rzędu lub sprawdź stronę wiki danego równania żeby znaleźć ewentualne możliwości używania siatek drugiego rzędu.
  • DANEGeometrical Tolerance: Tolerancja geometryczna dla dopasowania siatki do krawędzi obiektu. Domyślne ustawienie 0.0 oznacza, że Gmsh skorzysta z wartości 1e-8.
  • DANEGroups Of Nodes: Wszystkie węzły a nie tylko elementy zostaną zapisane dla każdej fizycznej grupy siatki. Fizyczne grupy siatki to zbiory obiektów siatki (punktów, krawędzi, powierzchni i objętości). Są one identyfikowane za pomocą przestrzeni i indywidualnego oznaczenia. Przykładowo, siatka tego samego obszaru obiektu jest wewnętrznie oznaczana tak samo. Więc wszystkie powierzchnie tego obszaru będą tworzyły jedną grupę fizyczną.
  • DANEHigh Order Optimize: Czy i jak siatki z właściwością DANEElement Order = 2nd są optymalizowane. Optymalizacja odbywa się poprzez deformację krawędzi elementu.
    dostępne w wersji 0.20 Gmsh wspiera różne algorytmy optymalizacji. Elastic to algorytm, w którym elementy siatki są traktowane jako kolekcja deformowalnych ciał lepkosprężystych. Siatki pierwszego rzędu nie mogą być optymalizowane, ponieważ ich krawędzie są liniowe i nie można ich deformować.
  • DANEMesh Size From Curvature dostępne w wersji 0.20: Liczba elementów siatki na razy promień krzywizny. Aby uzyskać gęstszą siatkę dla małych wierzchołków lub otworów, należ zwiększyć tą wartość dla lepszych wyników.

Efekt właściwości Mesh Size From Curvature'. Po lewej: ustawionej na 12. Po prawej: dezaktywowanej.

  • DANEOptimize Netgen: Czy siatka będzie optymalizowana przy pomocy generatora siatki 3D Netgen aby poprawić jakość elementów czworościennych. Uwaga: ponieważ Netgen może tworzyć tylko elementy czworościenne, ta opcja jest ignorowana dla siatek, których właściwość DANEElement Dimension nie jest ustawiona na 3D.
  • DANERecombination Algorithm dostępne w wersji 0.20: Algorytm używany przez DANERecombine 3D All i przez DANERecombine All. Więcej informacji można znaleźć w sekcji Rekombinacja elementów a szczegóły technicznej znajdują się w dokumentacji Gmsh.
  • DANERecombine 3D All dostępne w wersji 0.20: Stosuje algorytm rekombinacji 3D dla wszystkich objętości. Czworościany będą przekształcone w pięciościany, prostopadłościany lub piramidki gdzie będzie to możliwe.
  • DANERecombine All: Stosuje algorytm rekombinacji dla wszystkich powierzchni. Trójkąty będą przekształcone w czworokąty gdzie będzie to możliwe a recombination algorithm to all surfaces.
  • DANEOptimize Std Optymalizuje siatkę aby zwiększyć jakość elementów czworościennych.
  • DANESecond Order Linear: Czy węzły elementów drugiego rzędu (jeśli wlaściwość DANEElement Order jest ustawiona 2nd) i / lub punkty zagęszczania siatki są tworzone przez interpolację liniową.
    • Prawda używana jest interpolacja liniowa.
    • Fałsz (domyślne) używana jest interpolacja krzywoliniowa.
  • DANEAlgorytm podziału. dostępne w wersji 0.22: umożliwia tworzenie elementów czworościennych i sześciościennych przez podział.
    • Brak: nie używa żadnego algorytmu podziału.
    • Wszystkie czworokąty: tworzy elementy czworokątne poprzez podział.
    • Wszystkie heksaedry: tworzy elementy heksaedralne poprzez podział.
    • Barocentryczny: tworzy elementy trójkątne poprzez podział barycentryczny.

Uwagi

Ujemne jakobiany

Jeśli pojawia się błąd o ujemnych jakobianach, można wypróbować następujące podejściaː

  • Ustawić właściwość DANESecond Order Linear na Prawda, ale zostawić DANEElement Order na 2nd.
  • Ustawić DANEElement Order na 1st.
  • Zmniejszyć rozmiar elementów siatki poprzez redukcję DANECharacteristic Length Max.
  • Jeśli używany jest solver ccxtools i przycisk uruchamiania (nie panel zadań) to węzły elementów z ujemnymi jakobianami będą zaznaczone na zielono.

Wzrost siatki

Na krawędziach i małych obiektach geometrycznych siatka musi być mniejsza niż w obszarach z dala od krawędzi. Więc rozmiar elementu rośnie w oddaleniu od krawędzi. Strategia wzrostu siatki w Gmsh to wzrost między krawędziami o różnych rozmiarach. Więc wzrost zawodzi jeśli obszar ma krawędzie o tych samych rozmiarach jak w poniższym przykładzieː

Wzrost siatki zawodzi, ponieważ obszar cylindryczny jest otoczony takimi samymi krawędziami.

Aby umożliwić rozsądny wzrost siatki, należy w takim przypadku dodać krawędź do tego obszaru. W tym przykładzie byłby to okrąg w środku walca. Okrąg jest dodany jako część bryły złożonej z fragmentacji funkcją logiczną, zobacz plik projektu tego przykładu.

Rozsądny wzrost siatki dzięki dodatkowej krawędzi w środku cylindrycznego obszaru.

Rekombinacja elementów

Elementy mogą być rekombinowane na dwa sposoby, na powierzchni obiektów tak, że trójkąty są przekształcane w czworoboki jeśli to możliwe i w objętości obiektów tak, że czworościany są przekształcane w pięciościany, prostopadłościany lub piramidki jeśli to możliwe. Oczywiste jest, iż wynik rekombinacji silnie zależy od geometrii obiektu i że rekombinacja obiektu 3D tylko na powierzchni zwykle prowadzi do niepożądanych rezultatów.

Zostało to przedstawione na rysunku poniżej. Siatka dla prostopadłościanu jest tworzona ze standardowymi ustawieniami (czworościany drugiego rzędu) To rysunek w lewym górnym rogu. Rysunek w prawym górnym rogu pokazuje wynik gdy dodatkowo elementy są rekombinowane tylko na powierzchni obiektu. Wynik jest zły, ponieważ zmienione elementy na powierzchni nie pasują do niezmienionych elementów w objętości. Więc sama właściwość DANERecombine All zwykle ma sens tylko dla siatek 2D.
Jeśli używana jest dodatkowo właściwość DANERecombine 3D All, wynik jest lepszy (lewy dolny rysunek). Jednak wynik nie odbiega znacząco od siatki bez rekombinacji. Ponieważ obiekt jest prostopadłościanem, rozsądne jest użycie algorytmu rekombinacji, który próbuje też utworzyć prostopadłościany. Taki wynik jest pokazany na prawym dolnym rysunku.

Algorytm rekombinacji Simple zostawi pewną liczbę trójkątów w siatce jeśli rekombinacja prowadzi do złej jakości czworoboków. W takich przypadkach należy użyć algorytmu full-quad, który automatycznie tworzy rzadszą siatkę a następnie dokonuje rekombinacji, wygłaszania i podziału. Więcej informacji można znaleźć w tym wątku na forum.

Efekt rekombinacji elementów siatki.
Górny lewy róg: standardowa siatka.
Górny prawy róg: rekombinacja tylko na powierzchni przy pomocy algorytmu Simple.
Dolny lewy róg: rekombinacja na powierzchni i w objętości przy pomocy algorytmu Simple.
Dolny prawy róg: rekombinacja na powierzchni i w objętości przy pomocy algorytmu Simple full-quad