Czym jest oraz jak istotna jest siatka w symulacjach CFD? Siatka jest niezmiernie ważnym elementem symulacji komputerowych. To ona jest odpowiedzialna za jakość uzyskiwanych wyników oraz to ona determinuje jak dokładnie uda nam się odwzorować rzeczywisty problem.
Aby zrozumieć wielkość oraz powagę problemu należy wspomnieć o samej idei działania programów CFD. Programy te rozwiązują równania zachowania masy, pędu czy energii. Są to równania różniczkowe cząstkowe. Założeniem jest przedstawienie tych równań w postaci układu równań algebraicznych. W tym celu dzieli się problem na tysiące elementów przestrzennych, w których obliczane są wartości parametrów na podstawie bilansu komórki oraz jej sąsiadów. Idee działania tej metody przedstawia poniższy rysunek.

Jak można łatwo wywnioskować, dokładność wyników będzie zależała od ilości komórek oraz od ich jakości. Jednakże należy również zdawać sobie sprawę, że im gęstszą zastosuje się siatkę, tym dłużej będą wykonywać się obliczenia. Dlatego też należy znaleźć optymalny kompromis pomiędzy dokładnością wyników, a trwaniem obliczeń.
Czynnością, która pozwala rozwiązać powyższy kompromis jest lokalne zagęszczanie siatki, jedynie w miejscach, w których występują duże gradienty parametrów. Takie podejście pozwala na odpowiednie odwzorowanie rzeczywistego problemu. Pytanie, które może zadawać sobie użytkownik może brzmieć następująco Jak gęsta powinna być siatka obliczeniowa, aby wiedzieć, że dobrze odzwierciedla rzeczywistość? Na to pytanie nie ma jednoznacznej odpowiedzi. Wszystko zależy od złożoności rozwiązywanego problemu, celu symulacji oraz wymagań jakie stawia się dokładności otrzymywanych wyników.
Narzędziem mogącym pomóc znaleźć wpływ gęstości siatki na otrzymane wyniki jest test zbieżności siatki. Polega to na przeprowadzeniu tej samej symulacji na kilku siatkach, zaczynając od rzadszej i przechodząc do coraz bardziej gęstych siatek. Przykładowy test został pokazany na poniższym rysunku.

Jak widać obserwowany parametr zmienia mocno swoje wartości pomiędzy pierwszymi trzema symulacjami. To samo dotyczy się przypadku, kiedy zastosowano siatkę składającą się z 200 elementów siatki, a 400 elementów siatki. Nie widać natomiast znacznej zmiany wyników pomiędzy dwoma ostatnimi symulacjami. Wynika stąd, że powyższą symulację należałoby przeprowadzić dla siatki składającej się z 400 komórek. Można rzec, że przeprowadzanie takich testów jest zrobieniem jednego kroku wstecz, żeby następnie zrobić trzy kroki do przodu.
Ponadto w trakcie przeprowadzania symulacji bardzo istotna jest jakość siatki. Mianowicie należy zwrócić uwagę czy poszczególne elementy siatki nie są za bardzo rozciągnięte lub zniekształcone. Kryteriami oceniającymi jakość siatki są skośność oraz ortogonalność. Dąży się do tego, żeby skośność była możliwie mała, a ortogonalność była maksymalnie duża. Dopóki siatka nie będzie odpowiedniej jakości, uruchomienie obliczeń jest bezcelowe, ponieważ uzyskane wyniki będą nierealne.
Jak widać w trakcie przeprowadzania symulacji numerycznych należy zwrócić ogromną uwagę na stworzoną siatkę, ponieważ to od niej zależy jakoś otrzymanych wyników. Może to być problematyczne dla osób rozpoczynających swoją przygodę z symulacjami. Ilość aspektów, na które należy zwrócić uwagę może być przytłaczająca. Z pomocą stworzenia prawidłowej siatki przychodzi program SOLIDWORKS Flow Simulation, który umożliwia przeprowadzanie symulacji związanych z numeryczną mechaniką płynów.
Sam SOLIDWORKS Flow Simulation korzysta z siatki opartej na elementach typu hex. Elementy typu hex są to prostopadłościany, tak jak pokazano na rysunku poniżej. Korzystanie z elementów prostopadłościennych zapewnia odpowiednią jakość siatki. Powoduje to, że użytkownik nie musi przejmować się ani o ortogonalność, ani o skośność siatki. Jest to znaczne ułatwienie dla użytkownika.

Ponadto należy zwrócić uwagę, że program SOLIDWORKS Flow Simulation pozwala na zbudowanie siatki na dwa różne sposoby. Pierwszym z nich jest metoda automatyczna, gdzie użytkownik ma znacznie mniejszy wpływ na ostateczny wygląd siatki. Użytkownik może jedynie zdefiniować jakość siatki za pomocą suwaka, który może przyjmować wartości z 7-stopniowej skali. Zwiększenie poziomu o jeden powoduje dwukrotne zwiększenie elementów siatki w naszej symulacji.

Ponadto użytkownik ma możliwość ustawienia takich parametrów jak: Minimum Gap Size oraz Minimum Wall Thickness. Pierwszy parametr pozwala poinformować program jaką najmniejszą przerwę chcemy uzyskać, żeby znajdował się tam przynajmniej jeden element siatki, natomiast drugi parametr informuje jaką grubość ściany chcemy oddać, aby znajdował się wzdłuż niego jeden element siatki.
Kolejną możliwością, utworzenia siatki w SOLIDWORKS Flow Simulation jest manualne ustawienie siatki. Użytkownik ma dostęp do wielu opcji, które pozwolą mu na odpowiednie odwzorowanie geometrii.
Pierwszą możliwością jest Basic Mesh, która umożliwia określić ilość elementów siatki we wszystkich trzech wymiarach. Ponadto użytkownik wybiera, czy siatka ma mieć stały rozmiar w całej swojej objętości, czy komórki siatki mają zmieniać swój rozmiar o określoną wartość.


Kolejną opcją jest Refining Cells

Jest to już trochę bardziej zaawansowana opcja, która daje dostęp do zagęszczenia siatki z podziałem na zagęszczenie wszystkich komórek płynu, ciał stałych bądź komórek, które znajdują się na pograniczu pomiędzy ciałem stałym, a płynem. Opcja ta umożliwia odpowiednie odzwierciedlenie kształtu ciał stałych.
Następną opcją umożliwiającą ulepszenie siatki jest Equidistant Refinement. Ta funkcja pozwala na zagęszczenie obszaru płynu wokół danego obszaru w odległości normalnej od powierzchni. Na samym początku użytkownik informuje program jaki jest maksymalny poziom zagęszczonej warstwy oraz jaka jest jej grubość. Ponadto użytkownik może wybrać ilość, z przedziału od jeden do trzech, zagęszczonych warstw. Każda dodana warstwa posiada poziom zagęszczenia siatki o jeden poziom niższy niż jej poprzednik.

Następną opcją umożliwiającą zagęszczenie siatki jest opcja Channels, która pozwala na definiowanie zagęszczenia w wąskich miejscach przejściach, takich jak kanały. Pozwala to na rzeczywiste odwzorowanie profilu prędkości.
Sposób tworzenia siatki jest powiązany ze sposobem, w jaki sposób wygląda profil przepływu w tych elementach. Zawsze największe gradienty uzyskuje się przy samych ściankach ciał stałych i dlatego tak istotne jest, żeby siatka w wąskich kanałach była gęstsza niż w pozostałych miejscach.
Dlatego też SOLIDWORKS Flow Simulation umożliwia zagęszczenie siatki w tych miejscach na dwa różne sposoby. Pierwszy z nich polega na podaniu liczby elementów oraz możliwego maksymalnego stopnia zagęszczenia. Drugą możliwością jest zdefiniowanie zagęszczenia siatki w zależności od szerokości kanału. Dodatkowo program umożliwia użytkownikowi zdefiniowanie odległości pomiędzy ścianami, jaki ma traktować jako kanał.

Kolejną możliwością jest opcja Advanced Refinement. Samo Advanced Refinement można podzielić na trzy podzespoły. Pierwszy z nich skupia się na odpowiednim odwzorowaniu małych obszarów, drugi jest odpowiedzialny za odpowiednie odzwierciedlenie kół oraz okręgów, a trzeci jest odpowiedzialny za upraszczanie geometrii.

W trakcie wykonywania obliczeń, użytkownikowi może zależeć na bardzo dokładnym odwzorowaniu geometrii oraz wychwyceniu wszystkich małych detali. W tym celu program znajduje elementy ciała stałego, których rozmiar jest mniejszy niż komórka bazowa. Kolejnym etapem jest zagęszczenie tej komórki w taki sposób, aby przypadał przynajmniej jeden element siatki na grubość ciała stałego.
Curvature odpowiada za zagęszczenie zaokrągleń. Dokonywane jest to za pomocą dwóch parametrów. Pierwszy z nich informuje o maksymalnym poziomie zagęszczenia, natomiast drugi parametr posiada informację o maksymalnym rozmiarze kątowym, który musi mieścić się w komórce. Sposób działania tej funkcji jest identyczny, jak wcześniejszej opcji. Program znajduje otwór i sprawdza, kąt, który jest zawarty w pojedynczej komórce. Jeżeli kąt jest większy niż wskazane maksimum, to program dogęszcza obszar.

Tolerance upraszcza powierzchnie, poziom tolerancji i kryterium tolerancji pozwalają kontrolować jak dobrze (z jaką tolerancją) wielokąty siatki rozwiązują rzeczywisty interfejs. Dopracowanie tolerancji może dotyczyć tych samych komórek, na które wpływa dopracowanie małych elementów bryłowych i dopracowanie krzywizny.
Podczas tworzenia siatki, powierzchnie są upraszczane za pomocą polilini, gdzie punkty tej krzywej są umiejscowione na krawędziach komórek. W efekcie jakość każdego elementu może zostać zdefiniowana za pomocą maksymalnej odległości między interpolowanym kształtem, a linią, którą go reprezentuje w domenie dyskretnej.
Korzystając z tej opcji użytkownik ma do dyspozycji dwa parametry – maksymalne zagęszczenie oraz podanie maksymalnej wysokości, która została przedstawiona za pomocą literki „h” na poniższym rysunku.

Kolejną opcją, do której ma dostęp użytkownik jest funkcja Close Thin Slots. Za pomocą tej opcji użytkownik pozwala programowi na domknięcie wszystkich nieszczelności.
Przedostatnią możliwością zagęszczenia siatki, jest zdefiniowanie siatki lokalnej.

W tym okienku użytkownik wybiera obszar, w którym zdefiniowane są inne warunki, niż w pozostałej geometrii. Możliwe jest wskazanie poszczególnych powierzchni bądź zdefiniowanie obszaru za pomocą takich obiektów geometrycznych jak prostopadłościan, walec, czy kula.
Ostatnią możliwością udoskonalenia siatki, jest adaptacyjne zagęszczenie siatki w trakcie trwania obliczeń. Opcja ta jest schowana w Calculation Control Options w zakładce Refirement. Użytkownik definiuje maksymalny poziom zagęszczenia siatek globalnych jak i lokalnych. Ponadto i informuje program o maksymalnej liczbie komórek w siatce. Sposób adaptacyjnego zagęszczania siatki może zostać zdefiniowany w następujący sposób:
- Manual– w trakcie trwania obliczeń, w zakładce „Calculation” użytkownik ma możliwość wybrać opcję „Refine”. Następnie użytkownik zagęszcza siatki manualnie.
- Periodic– wskazywana jest częstotliwość z jaką program ma zagęszczać siatkę. Mianowicie program zmienia siatkę po określonej liczbie iteracji, parametru travels oraz czasu rozpoczęcia obliczeń.
- Goal Coverangence – jest to bardzo subtelne narzędzie. Mianowicie siatka jest zagęszczana w momencie uzyskania zbieżności celu obliczeniowego, w celu sprawdzenia, czy kolejne zagęszczenie siatki wpływa znacząco na ostateczne wyniki.
- Tabular – użytkownik definiuje tabelę, w której podaje dokładne wartości kiedy zagęszczenie ma mieć miejsce.

Jak widać użytkownik ma ogromny wpływ na wygenerowaną siatkę, która bezpośrednio wpływa na ostateczne wyniki. Dlatego też pomimo, łatwej implementacji siatki automatycznej, zalecam zapoznać się z możliwościami tworzenia siatki manualnie. Umożliwi to uzyskanie dokładniejszych wyników w potencjalnie krótszym czasie trwania obliczeń.





