Jakie metody mogą zapewnić, że wielkości fizyczne pozostaną dodatnie podczas symulacji PDE?

18

Wielkości fizyczne, takie jak ciśnienie, gęstość, energia, temperatura i stężenie powinny zawsze być dodatnie, ale metody numeryczne czasami obliczają wartości ujemne podczas procesu rozwiązywania. Nie jest to w porządku, ponieważ równania obliczą wartości złożone lub nieskończone (zwykle powoduje awarię kodu). Jakie metody numeryczne można zastosować, aby zagwarantować, że te ilości pozostaną dodatnie? Która z tych metod jest najbardziej wydajna?

Jed Brown
źródło
Pomocne może być określenie, jakie rodzaje PDE są zainteresowane. Poniższe odpowiedzi dotyczą głównie PDE hiperbolicznych.
David Ketcheson

Odpowiedzi:

14

Najczęstszą metodą jest zresetowanie wartości ujemnych do niewielkiej dodatniej liczby. Oczywiście nie jest to matematyczne rozwiązanie. Lepszym ogólnym podejściem, które może działać i jest łatwe, jest zmniejszenie wielkości kroku czasowego.

Wartości ujemne często pojawiają się w rozwiązaniu hiperbolicznych PDE, ponieważ pojawienie się wstrząsów może prowadzić do oscylacji, które będą miały tendencję do tworzenia wartości ujemnych, jeśli w pobliżu szoku występują stany bliskie próżni. Zastosowanie metody całkowitego zmniejszenia zmienności (TVD) lub innej metody nieoscylacyjnej ( ENO, WENO ) może zmniejszyć tę tendencję. Metody te opierają się na wykorzystaniu nieliniowych ograniczników do obliczania pochodnych rozwiązania. Jednak nadal możesz uzyskać wartości ujemne z kilku powodów:

  • Jeśli użyjesz metody linii i zastosujesz integrator czasu wysokiego rzędu. Większość programów TVD jest możliwe do udowodnienia, że ​​są TVD tylko w półdyskretnym sensie lub metodą Eulera. W celu integracji czasu wyższego rzędu należy zastosować dyskretyzację czasową silnego zachowania stabilności (SSP) ; schematy te są również znane jako „kurczliwe” lub „zachowujące monotoniczność”. Istnieje ostatnia książka na ten temat autorstwa Sigala Gottlieba, Chi-Wanga Shu i mnie.
  • Jeśli nie użyjesz lokalnego rozkładu charakterystycznego dla układów równań, rozwiązaniem nie będzie TVD (schematy TVD posiadają tę właściwość tylko dla problemów skalarnych). Dlatego najlepiej zrekonstruować / interpolować w charakterystycznych zmiennych.
  • Jeśli masz układ nieliniowy, mogą pojawić się wartości ujemne, nawet jeśli użyjesz lokalnego rozkładu charakterystycznego. Na przykład można wykazać, że dowolny zlinearyzowany solver Riemanna (taki jak soler Roe) dla równań płytkiej wody lub równań Eulera generuje wartości ujemne w wystarczająco trudnych warunkach. Rozwiązaniem jest użycie solvera HLL (lub wariantu HLL); niektóre z nich są możliwe do udowodnienia.
  • Programy TVD są tylko drugim rodzajem; schematy nieoscylacyjne wyższego rzędu, takie jak WENO, nie spełniają ściśle zasad TVD ani zasad maksymalnych. Ale robi to nowa modyfikacja tych schematów wyższego rzędu; został opracowany w kilku ostatnich artykułach przez Xiangxionga Zhanga (ucznia Chi-Wang Shu).

Istnieje oczywiście wiele innych specjalistycznych podejść do określonych równań, na przykład w kodzie GeoClaw Davida George'a, który wykorzystuje solver Riemanna z dodatkowymi falami niefizycznymi w celu wymuszenia pozytywności.

David Ketcheson
źródło
6

Zakładając, że rozwiązujemy równania hiperboliczne bez żadnych terminów źródłowych i zakładając, że zapewniamy fizyczne warunki początkowe, upewniając się, że stosowanym przez nas schematem numerycznym jest Całkowite zmniejszenie zmienności, jest dobrym sposobem na zapewnienie „fizyczności” obliczonego rozwiązania. Ponieważ schemat TVD zachowuje monotoniczność, żadne nowe minima lub maksima nie zostaną utworzone, a rozwiązanie pozostanie ograniczone początkowymi wartościami, które, jak mamy nadzieję, ustawimy poprawnie. Oczywiście problemem jest to, że programy TVD nie są najbardziej oczywiste. Wśród schematów liniowych tylko schematy pierwszego rzędu to TVD (Godunov 1954). Tak więc od lat 50-tych opracowano szereg nieliniowych schematów TVD w celu połączenia wysokiej dokładności i monotoniczności dla rozwiązania równań hiperbolicznych.

W moich aplikacjach, rozwiązując równania Naviera-Stokesa z dużymi gradientami ciśnienia / gęstości, używamy hybrydowego schematu koncentrycznego MUSCL do przechwytywania dużych gradientów / nieciągłości i zachowania dobrej dokładności z dala od nich. Pierwszy schemat MUSCL (MUSCL oznacza Monotone Upstream-Schemes Schemes for Conservation Laws) został opracowany przez Van Leera w 1979 roku.

Jeśli chcesz dowiedzieć się więcej na ten temat, zajrzyj do prac Harten, Van Leer, Lax, Sod i Toro.

FrenchKheldar
źródło
4

Powyższe odpowiedzi dotyczą problemów zależnych od czasu, ale można również wymagać dodatniego wyniku w prostym równaniu eliptycznym. W takim przypadku można sformułować go jako nierówność wariacyjną , określając granice zmiennych.

W PETSc istnieją dwa solwery VI. Jeden stosuje metodę ograniczonej przestrzeni, w której zmienne w aktywnych wiązaniach są usuwane z systemu, który ma zostać rozwiązany. Drugi wykorzystuje półpłynną metodę Newtona .

Matt Knepley
źródło
3

A

Au=b
AA1

BRn×nB0B

(B0)(uv  BuBv,  u,vRn)

A

0b  0=A10A1b=u
bb0

Często schematy dyskretyzacji, które prowadzą do macierzy M, nazywane są schematami monotonicznymi i są to te schematy, które zachowują brak negatywności.

MH
źródło
M