Równania Eulera w 2d

10

Jako zadanie na studiach wykonałem symulację 1d. Stwierdzenie problemu polegało na rozwiązaniu problemu rurki uderzeniowej 1d dotyczącej sprężalnego gazu idealnego jako płynu roboczego. W przypadku tego problemu rozwiązałem układ równań Eulersa za pomocą solwera Riemanna Roe. Chcę wiedzieć, aby rozwiązać równania Eulera w 2 lub 3 wymiarach, od czego zacząć? Jaki jest problem z testem, powinienem najpierw rozważyć? (Proszę nie sugerować komercyjnych rozwiązań. Chcę napisać własny kod). Potrzebuję tylko pomocy w napisaniu własnego kodu.

Jakie są dobre zasoby, które wprowadzają problem 2d w najbardziej praktyczny sposób?

Subodh
źródło
Niedawno nauczyłem się własności niezmienności rotacyjnej równań Eulera, czy można jej użyć do kodowania 2d? Taki pierwszy wyrównujemy układ współrzędnych prostopadle do powierzchni i rozwiązujemy problem 1d, a następnie obracamy ramkę prostopadle do powierzchni ortogonalnej i powtarzamy?
Subodh
2
Polecam rozdziały 18-21 książki FV LeVeque: depts.washington.edu/clawpack/book.html Jedyną wadą tego jest to, że podejście to opiera się raczej na fluktuacjach niż fluktuacjach (te ostatnie są bardziej popularne).
David Ketcheson

Odpowiedzi:

5

Jak sugeruje David Ketcheson, książka LeVeque jest doskonałym źródłem; jednak naturalnie koncentruje się na metodach rozwiązywania Riemanna stosowanych w CLAWPACK. Alternatywą dla tych metod są nieoscylacyjne schematy centralne (np. Kurganova i Tadmora ), które są łatwe do wdrożenia i naturalnie rozszerzają się na 2-D lub 3-D (zamiast stosowania podziału wymiarowego). Na stronie http://www.cscamm.umd.edu/centpack/ znajduje się kod open source i duży zasób dokumentów .

Papieru przez Liska i Wendroff (SIAM Journal Scientific Computing 25 (3), 2003, 995-1017) porównuje różne schematy (zarówno Riemanna problemów i centralny) do równania Eulera w 1-D i 2-D i ma liczba problemów testowych, które mogą być przydatne.

Chris Johnson
źródło
4

Tak, problem 2D mniej więcej staje się rozwiązaniem problemu 1D w kierunku X, a następnie problemu 1D w kierunku Y. Struktury danych są nieco bardziej skomplikowane, macierz Roe musi zostać dostosowana do projekcji charakterystycznej w drugim kierunku, a także warunek CFL musi zostać zmodyfikowany.

Clawpack, a w szczególności przykłady 2D Clawpack (http://depts.washington.edu/clawpack/users-4.6/claw/doc/gallery/gallery_2d.html) mogą być przydatne, jeśli chcesz zajrzeć do kodu innej osoby .

Rhys Ulerich
źródło