Jak zrobić dobrą siatkę w biologicznie dokładnym modelu z bardzo małymi domenami

10

Próbowałem stworzyć biologicznie dokładny 2D model przestrzenny warstw tkanek, w których zachodzą różne procesy fizjologiczne. Obejmuje to głównie reakcje chemiczne, dyfuzję i strumienie ponad granicami.

Tworzę ten model w COMSOL Multiphysics, pakiecie oprogramowania elementów skończonych, który rozwiązuje różne zjawiska fizyki, takie jak układy dyfuzyjne reakcji, chociaż dla mojego pytania może to nie być naprawdę istotne.

W mojej geometrii mam naprawdę małe obszary między komórkami warstw tkanek. Regiony te służą jako otwory, w których może zachodzić dyfuzja między komórkami (skrzyżowaniami). Jakość siatki nie jest tutaj świetna i jeśli chcę poprawić jakość (głównie poprzez wprowadzenie większej liczby elementów itp.), Mój czas symulacji drastycznie wzrasta. Siatka gorszej jakości powoduje również, że konwergencja trwa dłużej. Dodałem zdjęcie geometrii, aby dać pomysł. Próbowałem różnych siatek, wszystkie o różnych właściwościach elementów i liczbie elementów od 16000 do 50000.

Moje doświadczenie w MES jest naprawdę ograniczone i chciałem wiedzieć, czy mogę rozwiązać ten problem w taki sposób, aby:

  1. nie wpływa negatywnie na biologię (utrzymuj rozmiary domen / problem tkankowy itp. tak biologicznie jak to możliwe),
  2. nie zwiększa drastycznie czasu symulacji,
  3. dają lepszą jakość siatki. Naprawdę chcę wiedzieć, jaka jest najlepsza droga, ponieważ już myślałem o niektórych rzeczach.

Czy mogę więc zastosować siatkę o niższej jakości (która nie jest naprawdę zła, ale też nie jest dobra), tak że mogę zachować małe regiony dla optymalnej dokładności biologicznej i mieć stosunkowo krótki czas obliczeń (i mam nadzieję, że nie wpadnę błędy zbieżności). Ale może istnieją możliwości, których mi brakuje, na przykład: czy można powiększyć małą domenę, a następnie dodać jakiś czynnik do szybkości dyfuzji. Innymi słowy, jeśli chcę sprawić, by domena była dwukrotnie większa, czy uwzględniam szybkość dyfuzji jako połowę? Czy jest to nawet dokładne w prawach chemicznych / fizycznych: S.

Mam nadzieję, że wyjaśniłem problem nieco i z góry dziękuję za pomoc.

Twoje zdrowie,

Siatka modelu tkankowego

Eva
źródło

Odpowiedzi:

6

Próbujesz mieć swoje ciasto i to też. To nie działa.

Zasadniczo w przypadku problemów z elementami o różnych skalach długości potrzebne są siatki, które są odpowiednie w co najmniej niektórych częściach siatki. Powoduje to powstanie wielu komórek, co skutkuje długimi obliczeniami, małymi krokami czasowymi i wieloma iteracjami liniowymi. Wszystkie te implikacje są dość oczywiste, ale można je poprzeć matematycznymi stwierdzeniami, które dowodzą, że tak jest. Po prostu niewiele można na to poradzić: rozwiązywanie drobnych funkcji zawsze będzie kosztowne.

Wolfgang Bangerth
źródło
5

Z dopasowanymi trójkątnymi siatkami trudno będzie stworzyć siatkę izotropową, która dostosowuje się do wielu dramatycznie różnych skal długości w tak małej przestrzeni bez wprowadzania obcych trójkątów, z których niektóre mogą mieć bardzo duże / małe kąty.

Nie znam ich zbyt dobrze, więc weź to z odrobiną soli, ale możesz mieć więcej szczęścia, stosując metody elementów zaprawy . Zamiast dyskretyzować całą geometrię na jednej siatce, dyskretyzujesz medium masowe i połączenia na całkowicie oddzielnych, niezgodnych siatkach. Gatunki chemiczne są modelowane osobno w ramach każdej dziedziny, a następnie łączone globalnie za pomocą odpowiednich strumieni granicznych; stosuje się procedurę iteracyjną, aby upewnić się, że wszystkie strumienie są odpowiednio dopasowane na granicy.

Ta metoda nie rozwiązuje wszystkiego za Ciebie; po prostu zamienia trudność uzyskania ładnej dyskretnej geometrii na trudność w sprzężeniu PDE przez granice skrzyżowań we właściwy sposób, co może być na koniec prostsze. Ma także wyraźną zaletę polegającą na tym, że całkiem naturalnie nadaje się do równoległości.

Daniel Shapero
źródło
1

Rozwiązywanie drobnych problemów w MES zawsze będzie kosztowne, nie można od tego uciec. Twój problem wydaje się być sformułowany pod względem obciążeń obliczeniowych. W moim przypadku patrzyłem na problemy pola elektrycznego w strukturach anatomicznych, więc miałem podobny zestaw problemów do twoich. Pytanie zazwyczaj brzmi, jak szczegółowa siatka jest „wystarczająco dobra” dla danego problemu: czy zdecydowałeś się na tolerancję dla zbieżności siatki?

Inną możliwością do rozważenia jest zmniejszenie kolejności elementów. Domyślnie COMSOL wydaje się preferować elementy kwadratowe (2. rzędu), ale jeśli nie musisz rozwiązywać pochodnych w swoim rozwiązaniu, wówczas elementy liniowe (1. rzędu) znacznie zmniejszą obciążenie obliczeniowe.

Jako początkujący prawdopodobnie trzymałbym się jednego rozwiązania MES, zanim wypróbowałbym bardziej zaawansowane techniki, takie jak metody zaprawy. Ale jako początkujący pamiętaj, że analiza elementów skończonych jest raczej zbiorem umiejętności niż zdolności monolitycznych, a wraz z upływem czasu będziesz z nimi coraz lepiej.

Peadar
źródło
0

Możesz spróbować:

  • W miejsce wszystkich elementów tria można użyć elementów z czterema węzłami (quad), ponieważ jest to domena 2D, a wiele elementów tria nadmiernie usztywni domenę.
  • Możesz użyć programu do tworzenia siatki zamiast comsol, aby ręcznie kontrolować rozmiar i kształt elementów. W ten sposób możesz być w stanie kontrolować liczbę elementów i węzłów zamiast automatycznie mieszać je w comsol.

Mam dość szczegółową odpowiedź na temat tworzenia siatki tutaj, którą można odnieść do stworzenia lepszej siatki.

PS: Jeśli skomentujesz swoją opinię po wypróbowaniu ręcznego tworzenia siatki, mogę polecić coś konkretnego.

m2n037
źródło