Jakie są najlepsze pakiety / interfejsy Pythona do rzadkich bezpośrednich solverów?

11

Proszę wymienić pakiet Python (petsc4py itp.) Oraz rzadkie obsługiwane przez nie bezpośrednie solwery. Poproszę jedną odpowiedź (wiki-społeczności) na paczkę.

Md. Golam Rashed
źródło
Miałem wrażenie, że pytania „listowe” zostały uznane za złą formę na StackExchange.
Jack Poulson,
oni generalnie pozostawiamy to jako eksperyment i aby sprowokować tutaj
Aron Ahmadia
@JackPoulson: Są w złej formie. Pytanie to powinno zostać przeformułowane. Aron wykonał na nim wiele prób, dzięki czemu było znacznie lepiej. W tej chwili pozostawiamy to jako eksperyment, aby przetestować poprawność sformułowania pytań „jedna odpowiedź na pakiet”. Nie ma zbyt wielu potencjalnych odpowiedzi (tak myślę), więc nie sądzę, że lista odpowiedzi stanie się niemożliwie długa. Główną krytyką „niejasnych pytań” jest to, że trudno je utrzymać.
Geoff Oxberry

Odpowiedzi:

10

Wszystkie bezpośrednie solwery obsługiwane przez PETSc są dostępne w Pythonie pod wspólnym interfejsem poprzez Petsc4py . Obsługiwane rzadkie pakiety solverów bezpośrednich obejmują natywne bezpośrednie solvery PETSc, MUMPS, PasTiX, SuperLU, SuperLU_DIST, Umfpack, CHOLMOD, szpule, LUSOL, MATLAB i ESSL. Zobacz MATSOLVER*strony podręcznika tutaj .

Jed Brown
źródło
8

SciPy obsługuje rzadką algebrę liniową za pośrednictwem scipy.sparse.linalg(patrz dokumentacja SciPy ). SciPy obsługuje rzadkie pakiety solvera bezpośredniego SuperLU i UMFPACK.

Geoff Oxberry
źródło
4

Wszystkie bezpośrednie solwery obsługiwane przez Trilinos przez Amesos są dostępne w Pythonie pod wspólnym interfejsem przez PyTrilinos . Obsługiwane rzadkie pakiety solvera bezpośredniego obejmują UMFPACK, TAUCS, PARDISO, SuperLU i MUMPS. Zobacz ten raport techniczny omawiający rzadką algebrę liniową z PyTrilinos dla niektórych przykładów.

Geoff Oxberry
źródło