Prawidłowe zdefiniowanie siatki obliczeniowej jest fundamentalnym krokiem w każdej symulacji w oprogramowaniu Fire Dynamics Simulator (FDS). Jakość siatki bezpośrednio wpływa na wiarygodność wyników, stabilność numeryczną i czas trwania obliczeń.
W tym artykule szczegółowo omawiamy kluczowe aspekty tworzenia siatki. Wyjaśniamy, jak definiować jej granice, dobierać gęstość komórek oraz stosować zaawansowane strategie, takie jak użycie wielu siatek. Zrozumienie tych zagadnień pozwoli Ci unikać typowych błędów i tworzyć precyzyjne modele pożarowe.
Czym Jest Siatka Obliczeniowa (Mesh) w FDS?
Siatkowanie (meshing) w FDS to proces podziału całej domeny obliczeniowej na regularną siatkę prostokątnych komórek. Wewnątrz każdej z tych komórek solver FDS rozwiązuje równania opisujące dynamikę płynów i transport ciepła.
Kluczowe cechy siatki FDS:
- Struktura Kartezjańska: FDS wykorzystuje wyłącznie siatkę kartezjańską. Oznacza to, że powierzchnie zakrzywione lub ukośne są aproksymowane schodkowo (stair-step effect). Aby zminimalizować ten błąd, w obszarach o skomplikowanej geometrii należy stosować siatkę o wyższej rozdzielczości.
- Kształt Komórek: Dla zapewnienia stabilności numerycznej komórki powinny mieć kształt jak najbardziej zbliżony do sześcianu. Duże różnice w długości krawędzi (wysoki współczynnik proporcji) mogą prowadzić do niedokładności.
- Kompromis: Wysokiej jakości siatka optymalizuje kompromis między wymaganą rozdzielczością a czasem symulacji. Zbyt gęsta siatka drastycznie wydłuża obliczenia, a zbyt rzadka może nie uchwycić kluczowych zjawisk fizycznych.
Jak Określić Rozmiar Komórki? Kluczowa Rola D*
Dobór odpowiedniego rozmiaru komórek (rozdzielczości siatki) jest najważniejszą decyzją podczas tworzenia modelu. Podstawową metodą jest wykorzystanie charakterystycznej średnicy pożaru (D*).
Obliczanie Charakterystycznej Średnicy Pożaru
Wskaźnik D* zależy od mocy pożaru (HRR) i pozwala ocenić, czy siatka jest wystarczająco gęsta, aby poprawnie odwzorować przepływy w smudze konwekcyjnej. Oblicza się go ze wzoru:
D_ = ( Q / (ρ∞ c_p T∞ _ √g) )^(2/5)
Gdzie:
- Q – moc pożaru (HRR) kW
- ρ_∞ – gęstość otaczającego powietrza kg/m³
- c_p – ciepło właściwe powietrza kJ/(kg·K)
- T_∞ – temperatura otoczenia K
- g – przyspieszenie ziemskie m/s²
Stosunek D*/dx, gdzie dx to nominalny rozmiar komórki, jest miarą rozdzielczości siatki. Zaleca się, aby wartość tego stosunku mieściła się w przedziale od 4 do 16. Wartości bliższe 16 oznaczają siatkę gęstszą i dokładniejsze wyniki, ale kosztem dłuższego czasu obliczeń.
Uwaga: Zmniejszenie rozmiaru komórki o połowę w każdym z trzech wymiarów zwiększa ich całkowitą liczbę ośmiokrotnie. Czas obliczeń może wzrosnąć nawet szesnastokrotnie!
Weryfikacja Siatki: Analiza Wrażliwości (Grid Sensitivity Analysis)
Najlepszą praktyką potwierdzającą poprawność doboru siatki jest analiza wrażliwości siatki. Proces ten polega na wykonaniu tej samej symulacji dla co najmniej dwóch siatek o różnej gęstości.
Jak przeprowadzić analizę wrażliwości?
- Siatka bazowa: Uruchom symulację na siatce o rozdzielczości wybranej na podstawie D*.
- Siatka gęstsza: Uruchom tę samą symulację na siatce dwukrotnie gęstszej (rozmiar komórki zmniejszony o połowę).
- Porównanie wyników: Porównaj kluczowe wskaźniki, takie jak temperatura w określonych punktach, czas aktywacji czujek czy stężenie dymu.
Jeśli wyniki nie różnią się znacząco (np. o więcej niż 5-10%), można uznać, że rozdzielczość siatki bazowej jest wystarczająca i model jest wiarygodny.
Strategia Wielu Siatek (Multiple Meshes): Kiedy i Jak Stosować?
Stosowanie wielu siatek to kluczowa technika optymalizacyjna w FDS. Pozwala ona na zróżnicowanie rozdzielczości w modelu – gęstsza siatka w obszarach kluczowych (np. wokół źródła ognia) i rzadsza w pozostałych.
Zalety wielu siatek:
- Oszczędność zasobów: Znacząco redukuje całkowitą liczbę komórek i skraca czas obliczeń.
- Obliczenia równoległe (MPI): Umożliwia przypisanie każdej siatki do osobnego rdzenia procesora, co drastycznie przyspiesza symulacje na wielordzeniowych stacjach roboczych.
Zasady stosowania wielu siatek:
- Dopasowanie granic: Sąsiadujące siatki muszą być idealnie dopasowane na styku. Rozmiary komórek na granicy muszą pozostawać w prostych proporcjach całkowitych (np. 2:1, 3:1).
- Zawieranie geometrii: Wszystkie obiekty geometryczne (ściany, otwory) muszą w całości mieścić się w granicach jednej siatki. Umieszczanie obiektów na granicy siatek jest częstym źródłem błędów.
- Kolejność deklaracji: W pliku wejściowym FDS zaleca się deklarowanie siatek w kolejności od najdrobniejszej do najgrubszej.
Najczęstsze Błędy w Siatkowaniu i Metody ich Diagnostyki
Błędy związane z siatką są jedną z najczęstszych przyczyn problemów w symulacjach FDS. Poniższa tabela podsumowuje typowe problemy i sposoby ich rozwiązania.
| Błąd | Przyczyna | Rozwiązanie |
|---|---|---|
| Niedopasowanie siatek (Misalignment) | Niedopasowanie granic lub rozmiarów komórek na styku. | Użyj opcji CHECK_MESH_ALIGNMENT=.TRUE. w linii &MESH. Zweryfikuj wizualnie granice w Smokeview. |
| Geometria na granicy | Obiekty (ściany, otwory) umieszczone na styku dwóch lub więcej siatek. | Zmodyfikuj granice siatek tak, aby każdy obiekt w całości mieścił się w jednej z nich. |
Błąd ZONE ... meets ZONE ... | Otwór w gęstej siatce jest mniejszy niż komórka w sąsiedniej, rzadszej siatce. | Dopasuj granice siatek lub rozmiar otworu, aby zapewnić spójność geometryczną. |
Diagnostyka w Smokeview
Podstawowym narzędziem do weryfikacji siatki jest Smokeview. Aby szybko sprawdzić poprawność siatkowania przed uruchomieniem pełnej symulacji:
- Ustaw krótki czas symulacji, np.
T_END=0.1. - Dodaj parametr
CHECK_MESH_ALIGNMENT=.TRUE.do każdej linii&MESH. - Uruchom FDS. Wygeneruje on plik
.smv, który można otworzyć w Smokeview. - Włącz widoczność siatek (Load/Unload -> Mesh -> Show Mesh Boundaries), aby wizualnie sprawdzić ich dopasowanie.
Optymalizacja Wydajności: Narzędzia i Dobre Praktyki
Poza poprawnym siatkowaniem, wydajność obliczeń można poprawić, optymalizując ustawienia solvera FDS.
- Liczba komórek: Solver ciśnienia FDS działa najwydajniej, gdy liczba komórek w kierunkach przepływu (wartości J i K w parametrze
IJK) jest iloczynem małych liczb pierwszych, takich jak 2, 3 i 5. - Kalkulator rozmiaru siatki: Aby ułatwić dobór optymalnej wielkości komórki na podstawie D*, można skorzystać z dedykowanych kalkulatorów online. Automatyzują one proces i pomagają uniknąć błędów.
- Obliczenia równoległe (MPI): W przypadku modeli z wieloma siatkami, wykorzystanie MPI (Message Passing Interface) jest standardem. Każdy proces MPI oblicza jedną siatkę, co znacząco skraca całkowity czas symulacji.