Zastosowanie warunków brzegowych Dirichleta do równania Poissona metodą objętości skończonej


10

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,

Lewa strona siatki wyśrodkowanej na komórkach.

Moja obecna implementacja po prostu narzuca warunek brzegowy, że ustalam wartość pierwszej komórki,

ϕ1=gD(xL)

gdzie jest zmienna w roztworze i g D ( x L ) jest Dirichlet granica wartości stanu na LHS domeny ( NB x Lx 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ϕgD(xL) xLx1/2

ϕL=gD(xL)

Na przykład rozwiązajmy równanie Poissona,

0=(ϕx)x+ρ(x)

z warunkiem początkowym i warunkami brzegowymi,

ρ=1gD(xL)=0gN(xR)=0

(gdzie to warunek brzegowy Neumanna po prawej stronie).gN(xR)

Numeryczne rozwiązanie równania Poissona

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.gD(xL)=0

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?ϕ1ϕ0ϕ2xL


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ń ϕ ),Ω1Fϕ

F3/2FL=ρ¯

FLΩ0

FL=ϕ1ϕ0h[1]

ϕ0Ω0Ω1xLgD(xL)

gD(xL)=h12hϕ0+h02hϕ1[2]

ϕ0FLϕ1gD(xL)

FL=1h(ϕ11h1(2gDhh1ϕ1))

h0h1

FL=2gDh1+2ϕ1h

Ω0Ω1hh1

FL=2h1(ϕ1gD)

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,

Zaktualizowano obliczenia, nowe podejście bardzo dobrze zgadza się z podejściem analitycznym.


Racja, twoje pochodzenie jest poprawne. I naprawdę przypomina to, co nazwałem (**) w mojej odpowiedzi. A zatem udowodniono, że jest stabilny. Dodam komentarz do mojej odpowiedzi.
Jan

Ponadto, ogólnie rzecz biorąc, wyniki stabilności są zazwyczaj wystarczającymi warunkami. Tzn. Jeśli schemat nie spełnia warunków, w niektórych sytuacjach może on dawać wiarygodne wyniki.
Jan

Odpowiedzi:


3

Ω¯iΓD=0()
Rn1ΩRn

(dϕdx)1/2=2h1(ϕ1ϕ1/2)()
()()

Grossmann & Roos dla siatek wykazał stabilność i zbieżność (pierwszego rzędu w dyskretnej normie maksymalnej) dla problemu Poissona z wyraźnymi komórkami granicznymi z ich „środkami” na rzeczywistej granicy, jak pokazano na moim rysunku dla przypadku 1D. wprowadź opis zdjęcia tutaj

Tutaj iloraz różnicowy interfejsu jest przybliżany w prosty sposób.

Powiedziałbym, że komórki duchów są powszechnym podejściem z dwóch powodów.

  • Naśladują one stabilną sytuację opisaną na moim rysunku, ale z interpolowanym warunkiem brzegowym
  • Są po prostu przywiązani do fizycznej granicy. Można zatem zastosować triangulację domeny, co jest również korzystne, ponieważ często ma się także naturalne BC, które są bezpośrednio nałożone na interfejs [ Grossmann & Roos , str. 101].

ϕ0ϕ0ϕ1gD


Dziękuję Jan, to naprawdę interesujące. Z pewnością naśladowałoby to moje doświadczenie z niestabilnością niektórych podejść. Czy mam rację, jeśli zastosuję podejście do komórki-widma, nie muszę przesuwać ostatniej komórki, aby środek znajdował się na granicy? Mam również problem z koncepcją przesunięcia komórki granicznej; czy nie oznacza to, że komórka ma zerową objętość?
boyfarrell,

hΓ

hΓ0ϕ1ϕ0

Czy dzięki temu podejściu można usunąć zależność od wartości komórki-widma? Sądzę, że nie należy tego uwzględniać w równaniach, ale użyłem tylko narzędzia do zapisania warunków brzegowych. Odnośnie „przesuniętej” komórki granicznej. Wygląda na to, że punkt ten używa różnicy skończonej zamiast metody objętości skończonej. Czy to by było dokładne?
boyfarrell,

1
Dobrze, rozumiem! Dziękuję Ci. Jest literówka. w drugim akapicie „Zatem, jeśli w twoim ustawieniu podejście [eqn] jest niestabilne, nie jest to sprzeczne ze znanymi wynikami stabilności.” „Nie” powinno być „w” . To zmienia znaczenie zdania, co oznacza przeciwieństwo tego, czego chcesz (myślę)!
boyfarrell

4

ϕ1ϕ2ϕ1x2x1(x1x0)=0x0xiϕiϕ1ϕ2ϕ1

Odkrywasz tutaj, dlaczego objętości skończone nie są często używane w równaniach eliptycznych, dla których stawia się warunki Dirichleta. Stosuje się je w przepisach dotyczących ochrony przyrody, w których bardziej naturalne warunki są określone w odniesieniu do topników.


3

d2ϕdx2=f
(dϕdx)3/2(dϕdx)1/2=x1/2x3/2fdx
(dϕdx)3/2=ϕ2ϕ1h+

(dϕ/dx)1/2ϕ1/2x1/2x1x2h

(dϕdx)1/2=1h(13ϕ2+3ϕ183ϕ1/2)
(dϕdx)1/2=2h1(ϕ1ϕ1/2)

Oczywiście jedną rzeczą, którą należy sprawdzić, jest stabilność dyskretyzacji z przybliżeniem drugiego rzędu na granicy. Z czubka głowy nie wiem, czy będzie stabilny w połączeniu z wyśrodkowanym przybliżeniem drugiego rzędu we wnętrzu. Analiza stabilności macierzy na pewno ci powie. (Jestem prawie pewien, że przybliżenie pierwszego rzędu na granicy będzie stabilne).

Wspominasz o możliwości wykorzystania punktów duchów. Prowadzi to do problemu, który musisz ekstrapolować z wnętrza do punktu duchów i użyć w tym procesie bc. Podejrzewam, ale nie „udowodniłem”, że przynajmniej niektóre zabiegi z użyciem punktów duchów są równoważne z zastosowaniem podejścia, które opisałem powyżej.

Mam nadzieję, że to trochę pomoże.


Cześć Brian. Nie sądziłem, że można zastosować warunki brzegowe Dirichleta przy użyciu postaci strumienia (tj. Słabo). W rzeczywistości zadałem to pytanie kilka miesięcy temu, scicomp.stackexchange.com/questions/7777/ ... Próbowałem wtedy zaimplementować coś takiego, ale z jakiegoś powodu wdrożenie było niestabilne i zawsze kończyło się niepowodzeniem. Czy znasz odniesienie, w którym warunki Dirichleta są stosowane do równania Poissona, jestem zainteresowany, aby wiedzieć, co jest standardem ? Może nie dzieje się tak w przypadku równań eliptycznych?
boyfarrell,

Nie znam standardu, ale nie wyobrażam sobie, aby wszystkie takie implementacje były niestabilne. Czy próbowałeś analizy macierzowej? W takim przypadku powinno być to bardzo proste. Ludzie rozwiązują równania Naviera-Stokesa za pomocą zabiegów z punktami widma i zabiegów takich jak powyższy. (Oczywiście, lepkie efekty nie dominują w takim stopniu, że można traktować równanie Poissona jako dobry model.) Być może te odniesienia pomagają: ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/ … I nas.nasa.gov/assets/pdf/techreports/1997/nas-97-011.pdf
Brian Zatapatique

Cześć Brian. Nie, nie próbowałem analizy macierzowej. Szczerze mówiąc, nie jestem zbyt pewien, jak to zrobić. W przyszłym tygodniu będę miał czas na ponowne przyjrzenie się temu problemowi, dlatego mogę zadać nowe pytanie!
boyfarrell

Rozumiem również, że ekstrapolacja punktu ducha (kwadratowa) jest w końcu równoważna klasycznej dyskretyzacji skończonej różnicy metodą Shortleya-Wellera dla nieregularnych (zakrzywionych) warunków brzegowych Dirichleta, np. Jak opisano na str. 74 Numeryczne rozwiązanie równań różniczkowych cząstkowych (2. miejsce) wydanie). (Wersja ekstrapolacji liniowej jest równoważna prostszej metodzie Gibou i in. Sciencedirect.com/science/article/pii/S0021999101969773 ) Ponadto: zarówno ekstrapolanty liniowe, jak i kwadratowe dają dokładne rozwiązania drugiego rzędu, ale liniowe tylko gradienty pierwszego rzędu.
batty
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.