Czy ktoś może mi pomóc znaleźć książki na temat rozwiązań numerycznych (różnic skończonych i metod Cranka – Nicolsona) równań Poissona i dyfuzji, w tym przykładów na nieregularnej geometrii, takich jak dziedzina składająca się z obszaru między prostokątem a okręgiem (zwłaszcza książek lub linków na przykładach kodu MATLAB w tym przypadku)?
pde
finite-difference
Liona
źródło
źródło
Odpowiedzi:
Kluczem do działania schematu różnic skończonych na nieregularnej geometrii jest posiadanie macierzy „kształtu” z wartościami wskazującymi punkty na zewnątrz, wewnątrz i na granicy domeny. Powiedzmy, że mieliśmy taki kształt:
Prawdziwa domena (gdzie znajdują się wszystkie niezerowe wpisy macierzy) tworzą trójkąt skierowany w dół. Jedności oznaczają punkty na granicy, a dwójki oznaczają punkty wewnętrzne (zwykle nieznane). Numery węzłów możemy przypisać w następujący sposób:
Tutaj -1 oznaczają lokalizacje graniczne. Następnie możesz uruchomić schemat różnic skończonych dla wszystkich pozycji w macierzy, ale użyj instrukcji if, aby wykonać swój schemat tylko na wewnętrznych węzłach (od 1 do 12). To podejście nie jest najskuteczniejszym sposobem na zrobienie tego, ale wykona zadanie ... jeśli możesz sobie pozwolić na pamięć, dobrze byłoby zapisać wpisy (i, j) wszystkich wewnętrznych węzłów i uruchomić pętla for tylko na tych węzłach.
Aby bezpośrednio utworzyć geometrię, możesz zrobić jedną z dwóch rzeczy:
1. Utwórz czarno-biały obraz ręcznie i zaimportuj go do swojego programu (najłatwiejszy do wdrożenia, ale niemożliwy do poprawienia rozdzielczości przestrzennej dx lub dy).
2. Napisz kod, który utworzy dyskretne reprezentacje podstawowych kształtów, które chcesz dla dowolnej rozdzielczości przestrzennej, którą wybierzesz (trudniejsze do wdrożenia, ale bardziej niezawodne dla ogólnych schematów różnic skończonych dowolnej rozdzielczości przestrzennej dx lub dy).
Jeśli chcesz dowiedzieć się więcej o tym, jak to zrobić, możesz rozważyć obejrzenie następujących filmów:
Kurs grafiki komputerowej NPTEL, Wideo 2 (Grafika rastrowa)
Kurs grafiki komputerowej NPTEL, Wideo 3 (Grafika rastrowa, ciąg dalszy)
Sprawdź je i daj mi znać, jeśli to rozwiąże twoje pytanie.
źródło
Myślę, że dobrą książką na samym początku jest książka Hackbuscha:
http://books.google.com/books/about/Elliptic_differential_equations.html?id=-ZPc_JYJFHgC&redir_esc=y
W szczególności rozdz. 4.8, „Dyskretyzacja w dowolnej dziedzinie” może być dla Ciebie interesująca. Niemiecką wersję tej książki można pobrać bezpłatnie (legalnie). Nie wiem, czy dotyczy to również wersji angielskiej.
źródło
Sugerowałbym następujące dokumenty:
Metoda różnic skończonych na dowolnych nieregularnych siatkach i jej zastosowanie w mechanice stosowanej - Liszka Orkisz
http://www.sciencedirect.com/science/article/pii/0045794980901492
Techniki różnic skończonych dla zmiennych siatek - Jensen
http://www.mendeley.com/research/finite-difference-techniques-variable-grids-7/
Rozwiązywanie równań parabolicznych i hiperbolicznych uogólnioną metodą różnic skończonych - Benito Urena Gavete
http://www.sciencedirect.com/science/article/pii/S037704270600687X
Zasadniczo opisują sposób generowania różnicy skończonej stencial dla siatek niestrukturalnych / nieregularnych. Nie znam żadnej książki, która szczegółowo omawia ten konkretny temat, ale książka Randalla LeVeque'a może mieć coś na ten temat. Oto link do strony autora, która zawiera niektóre pliki m Matlaba dla różnic skończonych.
http://faculty.washington.edu/rjl/booksnotes.html
źródło
Myślę, że dopasowanie siatki do granicy, a tym samym odejście od standardowej siatki kwadratowej fdm, jest prawdopodobnie rozwiązaniem, ale ma jednak poważne implikacje co do zastosowania algorytmów wyższego rzędu - trudne, jeśli nie niemożliwe. Przyjąłem inne podejście, mianowicie utrzymywanie prostokątnej siatki nad zakrzywioną geometrią graniczną, tworzenie algorytmów wysokiego rzędu, interpolacja od granicy w celu ustawienia wartości „poza” geometrią i to wszystko. dzięki tej metodzie osiągnęliśmy dokładność w testach geometrii koncentrycznych kuli ~ 1e-12 przy użyciu algorytmu rzędu 8. jeśli przejdziesz do Google „Edwards, fdm zakrzywiona granica”, znajdziesz odniesienia do mojej pracy.
źródło
Czy można zastosować adaptacyjne udoskonalenie siatki? Szybkie wyszukiwanie Google wyświetli wiele linków. AMR jest stosowany, na przykład, w dynamice płynów do modelowania przepływu przez skomplikowane kształty; jak również wiele innych aplikacji. Oto przykład rozwiązania systemów hiperbolicznych praw zachowania, które powstają w procesie formowania się gwiazd. Geometrie są bardzo złożone. Pierwsza część artykułu to fajny samouczek. http://www.mpa-garching.mpg.de/lectures/ADSEM/SS05_Homann.pdf
źródło
To pytanie otwiera puszkę robaków, o czym świadczy różnorodność udzielonych odpowiedzi. Wiele z nich zawiera użyteczne uwagi, ale naprawdę pomocna odpowiedź uwzględniałaby kwestie, które nie zostały podniesione. Oprócz sprecyzowania dokładnej natury geometrii warto byłoby wiedzieć a) Jakiej dokładności potrzebujesz? b) Czy chcesz pozostać przy regularnych kwadratowych oczkach? c) Ile chcesz zainwestować w naukę nowej technologii?
Regularne kwadratowe siatki utrudniają precyzyjne zdefiniowanie granicy, tak że wiele osób przechodzi na siatki zgodne. Zgodne siatki o prostokątnym łączeniu mają trudności z dopasowaniem do bardzo nieregularnych kształtów, dlatego wiele osób przyjmuje siatki niestrukturalne (trójkąty / czworościany lub bardziej ogólnie).
W przypadku danych, które nie mają regularnej struktury kartezjańskiej, trudno jest oszacować pochodne, dlatego wiele osób przeformułowuje swoje problemy w postaci integralnej, co prowadzi do metod elementów skończonych / objętości skończonych (które mogą osiągnąć wysoki poziom). Istnieją metody bez siatki. Istnieją metody elementów brzegowych. Istnieją metody graniczne zanurzone. Istnieją metody cięcia komórek. Często istnieje metoda, która jest popularna w niektórych aplikacjach, ale nie w innych, z powodów głównie historycznych.
Życzę powodzenia w poruszaniu się po tym labiryncie, ale musisz zdać sobie sprawę, że nie ma jednego uniwersalnego rozwiązania dla twojego pytania.
źródło