Którego 2D PDE z dokładnym rozwiązaniem mogę użyć do przetestowania / weryfikacji mojego kodu FEM-PDE?
Stworzyłem program do rozwiązywania 2D zależnych od czasu PDE metodą elementów skończonych i uzyskiwania rozsądnych wyników dla równania fali akustycznej 2D. Teraz chciałbym pójść dalej i rozwiązać PDE ze znanym dokładnym / analitycznym rozwiązaniem do porównania. Jednak mam duży problem ze znalezieniem odpowiedniego równania. Wydaje się, że nie ma dwuwymiarowych, zależnych od czasu równań z rozwiązaniem analitycznym, które nie obejmuje nieskończonych sum lub tym podobnych. Pomyślałem o wzięciu równania 1D i rozszerzeniu go na dwa wymiary, po prostu rozwiązując je w domenie 2D bez zmiany czegokolwiek, w efekcie powielając równanie wzdłuż osi y. Jednak warunki brzegowe wydają się komplikować sprawę i te równania 1D działają na nieskończonych domenach, tj. Na całej osi rzeczywistej.
Czy istnieje takie równanie, którego mogę użyć? Czy istnieje inny ustalony sposób testowania poprawności implementacji solvera PDE?
Odpowiedzi
Jak wskazuje komentarz Maxima, powinieneś być w stanie stworzyć dowolne rozwiązanie, przepuścić je przez oryginalne, ciągłe PDE, wygenerować funkcję wymuszającą, warunki brzegowe (zależne od czasu) i warunek początkowy, podłączyć je do swojego programu, uruchom go i porównaj otrzymaną odpowiedź z funkcją, od której zacząłeś. Jest to znane jako metoda wytworzonych rozwiązań i jest bardzo skutecznym sposobem ustalenia jakości rozwiązań programu. Jest to również świetny sposób na przeprowadzanie badań udoskonalania siatki i etapów czasowych, które mogą pasować do potrzeb użytkownika lub recenzenta.