Które biblioteki mają dobrą obsługę wysokiego poziomu dla wielu sieci?

17

Planuję użyć multigrid do obliczenia wartości własnych i wektorów, i zauważyłem, że PETSc ma wsparcie wysokiego poziomu dla multigrid. Dokumentacja PETSc mówi, że ta część PETSc nie powinna być używana, ponieważ wkrótce zostanie wymieniona.

Które inne biblioteki mają obsługę wysokiego poziomu dla wielosiatek i z grubsza, kiedy PETSc wyda nową obsługę wielosiatek?

Dan
źródło
2
Nowa MG jest dostępna w Petsc-Dev i działa, podobnie jak nowy solver GAMG. Czekamy na wydanie, aż będziemy mogli zmienić każdy przykład (i są ich setki). Chciałbym teraz zacząć używać Petsc-dev.
Matt Knepley,

Odpowiedzi:

7

Zarówno PETSc, jak i Trilinos mają dobre algebraiczne metody wielosieciowe.

deal.II implementuje geometryczne metody wielosiatkowe do dyskretyzacji elementów skończonych, patrz na przykład program samouczka kroku 16 .

Wolfgang Bangerth
źródło
2
PETSc wykonuje geometryczne MG, jeśli używasz siatki DMDA (kartezjańskiej), ponieważ od tego czasu wiemy, jak konstruować interpolatory i zgrubne problemy.
Matt Knepley,
11

PETSc multigrid (jako warunek wstępny) jest dość dojrzały i może być używany z dowolnym solwerem KSP (iteracyjna metoda Kryłowa) w PETSc, wpisując:

-pc_type mg

Wymaga to jednak pewnej metody generowania zgrubnych poziomów, takiej jak siatki strukturalne zdefiniowane przez obiekty PETSc DA, które zostaną automatycznie zgrubione.

Lub, jeśli chcesz użyć algebraicznej multigrid z pakietu HYPRE, możesz użyć

-pc_type hypre

Lub z pakietu ML za pomocą

-pc_type ml

Są one pobierane podczas procesu konfiguracji przez dołączenie

--download-hypre=1 --download-ml=1

do linii poleceń ./configure.

Część, która jest amortyzowana (na razie) to framework DMMG, który jest zastępowany przez SNES (nieliniowy) solver FAS i lepsze wsparcie dla obsługi wielopoziomowych dyskretyzacji podczas korzystania z MG lub FAS, gdy mówimy. Innym zamiennikiem (dla problemów liniowych) jest

-pc_type gamg -pc_gamg_type sa

Jest to nowszy kod, natywny w PETSc, wysoce skalowalna algebraiczna multigrid z wygładzoną agregacją.

Peter Brune
źródło