Pytania otagowane jako linear-solver

Nawiązanie do metod rozwiązywania liniowych układów równań.

17
Czy istnieje wysokiej jakości nieliniowy solver programowania dla Pythona?
Mam kilka trudnych, niewypukłych problemów globalnej optymalizacji do rozwiązania. Obecnie używam MATLAB's Optimization Toolbox (konkretnie fmincon()z algorytmem = 'sqp'), co jest dość skuteczne . Jednak większość mojego kodu znajduje się w języku Python i chciałbym również przeprowadzić optymalizację w języku Python. Czy istnieje solver NLP z powiązaniami Pythona, z którym …

4
Jakich wskazówek należy przestrzegać przy wyborze rzadkiego solvera systemu liniowego?
W aplikacjach pojawiają się rzadkie systemy liniowe. Do rozwiązania tych systemów jest wiele procedur do wyboru. Na najwyższym poziomie istnieje przełom między metodami bezpośrednimi (np. Rzadka eliminacja Gaussa lub rozkład Choleskiego, ze specjalnymi algorytmami porządkowania i metodami wielopłaszczyznowymi) i iteracyjnymi (np. GMRES, gradient (sprzężony)). Jak określić, czy zastosować metodę bezpośrednią, …

3
Jak wybrać metodę rozwiązywania równań liniowych
Według mojej wiedzy istnieją 4 sposoby rozwiązania układu równań liniowych (popraw mnie, jeśli jest więcej): Jeśli macierz systemowa jest kwadratową matrycą pełnego rzędu, można użyć reguły Cramera; Oblicz odwrotność lub pseudoinwersję macierzy systemowej; Użyj metod rozkładu macierzowego (eliminacja Gaussa lub Gaussa-Jordana jest uważana za rozkład LU); Użyj iteracyjnych metod, takich …


2
Biblioteki do rozwiązywania rzadkich układów liniowych
Istnieje wiele różnych bibliotek, które rozwiązują rzadki liniowy układ równań, jednak trudno mi zrozumieć, jakie są różnice. O ile wiem, istnieją trzy główne pakiety: Trilinos , PETSc i Intel MKL . Wszyscy mogą wykonywać rzadkie rozwiązania macierzy, wszystkie są szybkie (o ile mogę stwierdzić, nie byłem w stanie znaleźć solidnych …

3
Problemy, w których gradient sprzężony działa znacznie lepiej niż GMRES
Interesują mnie przypadki, w których gradient sprzężony działa znacznie lepiej niż metoda GMRES. Ogólnie rzecz biorąc, CG jest lepszym wyborem w wielu przypadkach SPD (symetrycznie-dodatnio-określony), ponieważ wymaga mniej pamięci, a teoretyczna granica szybkości konwergencji dla CG jest dwukrotnie wyższa niż GMRES. Czy są jakieś problemy z faktycznym obserwowaniem takich stawek? …

1
Czy są jakieś wielopoziomowe implementacje ILU oparte na odwrotnych źródłach?
Jestem pod wielkim wrażeniem seryjnej wydajności wielopoziomowych odwracalnych warunków wstępnych ILU , szczególnie w przypadku heterogenicznego Helmholtza , ale jestem zaskoczony, że nie mogłem znaleźć żadnych implementacji typu open source. W szczególności ILUPACK udostępnia naukowo pliki binarne, ale nie wydaje się, aby publikowali swój kod źródłowy. Czy tak naprawdę nikt …


1
W jaki sposób motywowana jest przyspieszana przez Kryłowa Multigrid (wykorzystująca MG jako warunek wstępny)?
Multigrid (MG) można zastosować do rozwiązania układu liniowego poprzez skonstruowanie początkowej domysły x 0 i powtarzanie następujących czynności dla i = 0 , 1 .. aż do zbieżności:Ax=bAx=bAx=bx0x0x_0i=0,1..i=0,1..i=0,1.. Oblicz resztkową wartość ri=b−Axiri=b−Axir_i = b-Ax_i Zastosuj cykl z wieloma siatkami, aby uzyskać przybliżenie , gdzie A e i = r i …

3
Czy algorytm Thomasa jest najszybszym sposobem rozwiązania symetrycznego, ukośnego, rzadkiego, tridiagonalnego układu liniowego
Zastanawiam się, czy algorytm Thomasa jest najszybszym (możliwym do udowodnienia?) Rozwiązaniem symetrycznego, dominującego po przekątnej, rzadkiego systemu tridiagonalnego pod względem złożoności algorytmicznej (nie szukając pakietów implementacyjnych takich jak LAPACK itp.). Wiem, że zarówno algorytm Thomasa, jak i multigrid mają złożoność , ale może stały współczynnik dla multigrid jest mniejszy? Nie …

3
Precyzja pojedynczego kontra podwójnego zmiennoprzecinkowego
Liczby zmiennoprzecinkowe pojedynczej precyzji zajmują połowę pamięci, a na nowoczesnych komputerach (nawet na GPU) operacje można wykonywać z nimi prawie dwukrotnie szybciej niż podwójna precyzja. Wiele kodów FDTD, które znalazłem, używa wyłącznie arytmetyki i pamięci o pojedynczej precyzji. Czy istnieje ogólna zasada, kiedy dopuszczalne jest stosowanie pojedynczej precyzji do rozwiązywania …


2
rozwiąż
Przenoszę istniejący kod z MATLAB do C ++ i mam liniowy system do rozwiązania (zamiast bardziej typowej formy A x = b )x A = bxZA=bxA=bA x = bZAx=bAx=b Matryca jest gęsta i ma ogólną formę, ale nie jest większa niż 1000 x 1000. Tak więc w MATLAB rozwiązaniem jest …

3
Rzadki liniowy solver dla wielu prawych stron
Muszę rozwiązać ten sam rzadki układ liniowy (300 x 300 do 1000 x 1000) z wieloma prawymi bokami (300 do 1000). Oprócz tego pierwszego problemu chciałbym również rozwiązać różne systemy, ale z tymi samymi niezerowymi elementami (tylko różne wartości), to znaczy wiele rzadkich systemów o stałym wzorcu rzadkości. Moje macierze …

5
Wielokrotnie rozwiązując
Korzystam z MATLAB, aby rozwiązać problem polegający na rozwiązywaniu za każdym razem, gdy b zmienia się z czasem. Obecnie realizuję to za pomocą MATLAB-a :Ax=bAx=b\mathbf{A} \mathbf{x}=\mathbf{b}bb\mathbf{b}mldivide x = A\b Mam elastyczność, aby wykonać tyle wstępnych obliczeń, ile potrzeba, więc zastanawiam się, czy istnieje szybsza i / lub dokładniejsza metoda niż …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.