Chciałbym wiedzieć, w jaki sposób warunki Dirichleta są normalnie stosowane przy użyciu metody objętości skończonej na niejednorodnej siatce zorientowanej na komórki,
Moja obecna implementacja po prostu narzuca warunek brzegowy, że ustalam wartość pierwszej komórki,
gdzie jest zmienna w roztworze i g D ( x L ) jest Dirichlet granica wartości stanu na LHS domeny ( NB x L ≡ x 1 / 2 ). Jest to jednak niepoprawne, ponieważ warunek brzegowy powinien naprawić wartość powierzchni czołowej komórki, a nie wartość samej komórki . To, co powinienem naprawdę zastosować, to
Na przykład rozwiązajmy równanie Poissona,
z warunkiem początkowym i warunkami brzegowymi,
(gdzie to warunek brzegowy Neumanna po prawej stronie).
Zwróć uwagę, w jaki sposób rozwiązanie numeryczne ustawiło wartość zmiennej komórkowej na wartość warunku brzegowego ( ) po lewej stronie. Ma to wpływ na przesunięcie całego rozwiązania w górę. Efekt można zminimalizować za pomocą dużej liczby punktów siatki, ale nie jest to dobre rozwiązanie problemu.
Pytanie
W jaki sposób stosowane są warunki brzegowe Dirichleta przy zastosowaniu metody objętości skończonej? Sądzę muszę ustalić wartość przez interpolację lub ekstrapolację pomocą φ 0 (punkt widmo) lub φ 2 tak, że linia prosta przechodzi przez te punkty posiada pożądaną wartość przy x L . Czy możesz podać jakieś wskazówki lub przykład, jak to zrobić w przypadku niejednorodnej siatki wyśrodkowanej na komórkach?
Aktualizacja
Oto moja próba zastosowania zaproponowanego przez ciebie podejścia do komórki-widma, czy to wygląda rozsądnie?
Równanie dla komórki jest (gdzie F reprezentuje strumień ϕ ),
Jednak dzięki temu podejściu udało się odzyskać definicję niestabilną, więc nie jestem pewien, jak postępować? Czy źle zinterpretowałem twoją radę (@Jan)? Dziwne jest to, że wydaje się, że działa, patrz poniżej,
Zobacz poniżej, to działa,