«linear-solver» etiketlenmiş sorular

Doğrusal denklem sistemlerini çözme yöntemlerine atıfta bulunur.

17
Python için yüksek kaliteli bir doğrusal olmayan programlama çözücü var mı?
Çözülmesi gereken birkaç dışbükey olmayan küresel optimizasyon problemim var. Şu anda , oldukça etkili olan MATLAB's Optimizasyon Araç Kutusu'nu (özellikle, fmincon()algoritma = ile 'sqp') kullanıyorum . Ancak, kodumun çoğu Python'da ve optimizasyonu Python'da da yapmak isterim. Rekabet edebilecek Python bağlarına sahip bir NLP çözücü var mı fmincon()? O olmalı Doğrusal …

4
Seyrek bir lineer sistem çözücü seçerken hangi yönergeleri izlemeliyim?
Seyrek doğrusal sistemler uygulamalarda artan sıklık ile ortaya çıkıyor. Birinin bu sistemleri çözmek için seçebileceği çok fazla rutini var. En üst düzeyde, doğrudan (örneğin, seyrek Gauss ortadan kaldırılması veya Cholesky ayrışımı, özel sipariş algoritmaları ve çok yönlü yöntemler) ve yinelemeli (örneğin GMRES, (iki) eşlenik gradyan) yöntemleri arasında bir havza vardır. …

3
Doğrusal denklemlerin çözümü için bir yöntem nasıl seçilir
Bildiğim kadarıyla, bir lineer denklem sistemini çözmenin 4 yolu vardır (eğer daha varsa beni düzeltin): Sistem matrisi tam dereceli bir kare matris ise, Cramer Kuralı'nı kullanabilirsiniz; Sistem matrisinin ters veya tersini hesaplayın; Matris ayrıştırma yöntemlerini kullanın (Gaussian veya Gauss-Jordan eleme, LU ayrıştırma olarak kabul edilir); Eşlenik gradyan yöntemi gibi yinelemeli …

3
Çözme
ve matrislerine sahibim . seyrek ve bir ile çok (birkaç milyon mertebesinde olabilir.), Büyük bir bir ile uzun matris oldukça küçük ( ) ve her sütunun kutunun sadece tek bir sahiptir geri kalan kısım ile girişi öyle ki 's, . çok büyük, bu yüzden tersine çevirmek gerçekten zor ve gibi …

2
Seyrek doğrusal sistemlerin çözümü için kütüphaneler
Seyrek bir denklem sistemini çözen çok sayıda farklı kütüphane var, ancak farklılıkların ne olduğunu çözmenin zor olduğunu düşünüyorum. Söyleyebileceğim kadarıyla üç ana paket var: Trilinos , PETSc ve Intel MKL . Hepsi seyrek matris çözebilir, hepsi hızlıdır (söyleyebildiğim kadarıyla, hiçbirinde sağlam kriterler bulamamıştım) ve hepsi paralelleştirilebilir. Bulamadığım şey farklılıklar. Peki, …

3
Eşlenik gradyanın GMRES'ten çok daha iyi çalıştığı sorunlar
Eşlenik gradyanın GMRES yönteminden çok daha iyi çalıştığı durumlarla ilgileniyorum. Genel olarak, CG birçok SPD vakasında tercih edilir (simetrik-pozitif-kesin) çünkü daha az depolama gerektirir ve CG için yakınsama oranına teorik olarak bağlı olması GMRES'in iki katıdır. Bu oranların gerçekte gözlemlendiği herhangi bir sorun var mı? Aynı sayıda spmv (seyrek matris-vektör …

1
Açık kaynaklı ters tabanlı çok düzeyli ILU uygulamaları var mı?
Özellikle heterojen Helmholtz için çok düzeyli ters tabanlı ILU ön koşullandırıcılarının seri performansından çok etkilendim , ancak açık kaynak uygulamaları bulamadığım için şaşırdım. Özellikle, ILUPACK ikili dosyaları akademisyenler için serbestçe kullanılabilir hale getirir, ancak kaynak kodlarını serbest bıraktıkları görülmemektedir. Açık olan hiç kimse uygulamalarını sağlamamış mıydı?

3
Direkt yöntemler kullanılırken kötü şartlanma belirtileri nelerdir?
Doğrusal bir sistemimiz olduğunu ve koşullandırması hakkında hiçbir şey bilmediğimizi ve çözüm hakkında ön bilgi sahibi olmadığımızı varsayalım. Gauss eliminasyonunu körü körüne uyguluyoruz ve bir çözüm elde ediyoruz xxx. Matrisin ayrıntılı bir ön analizi yapılmadan bu çözümün güvenilir olup olmadığını (yani sistemin iyi durumda olup olmadığını) belirlemek mümkün müdür ? …

1
Krylov tarafından hızlandırılmış Multigrid (MG'yi ön koşul olarak kullanma) nasıl motive edilir?
Multigrid (MG), bir başlangıç tahmini oluşturarak ve yakınsamaya kadar için aşağıdakini tekrarlayarak doğrusal bir sistemini çözmek için kullanılabilir :x 0 i = 0 , 1 ..Ax=bAx=bAx=bx0x0x_0i=0,1..i=0,1..i=0,1.. Kalanri=b−Axiri=b−Axir_i = b-Ax_i Yaklaşık bir elde etmek için bir çoklu ağ işlemi uygulamak , burada . A e i = r iΔxi≈eiΔxi≈ei\Delta x_i \approx …

3
Thomas algoritması, simetrik bir çapraz baskın seyrek tridiagonal doğrusal sistemi çözmenin en hızlı yolu mu
Thomas algoritmasının algoritmik karmaşıklık açısından (LAPACK vb. Hem Thomas algoritmasının hem de multigrid'in karmaşıklığı olduğunu biliyorum , ama belki multigrid için sabit faktör daha az? Bana multigrid daha hızlı olabilir gibi görünmüyor ama ben olumlu değilim.O(n)O(n)O(n) Not: Matrislerin çok büyük olduğu durumu düşünüyorum. Doğrudan veya yinelemeli yöntemler kabul edilebilir.

3
Tek ve çift kayan nokta hassasiyeti
Tek hassasiyetli kayan nokta sayıları hafızanın yarısını kaplar ve modern makinelerde (GPU'larda bile) çift hassasiyetle karşılaştırıldığında neredeyse onlarla iki kat daha hızlı işlem yapılabilir. Sadece bulduğum birçok FDTD kodu tek duyarlıklı aritmetik ve depolama kullanır. Büyük ölçekli seyrek denklem sistemlerini çözmek için tek bir hassasiyetin ne zaman kabul edilebilir olduğuna …

2
bir krylov yöntemini başka bir krylov yöntemiyle ön koşullandırma
Gmres veya bicgstab gibi yöntemlerde, ön koşul olarak başka bir krylov yönteminin kullanılması çekici olabilir. Sonuçta, matrissiz bir şekilde ve paralel bir ortamda uygulamak kolaydır. Örneğin, bir kişi, gmres için bir önkoşul olarak önceden koşullandırılmamış bigcstab'ın birkaç (yani diyelim ~ 5) yinelemesini veya krylov yöntemlerinin herhangi bir kombinasyonunu kullanır. Edebiyatta …

2
LAPACK ve BLAS kullanarak
C ++ için MATLAB mevcut bir kodu taşıma ve çözmek için bir lineer sistem bilgisi am (yerine daha tipik bir şekilde daha A x = b )x A = bxbir=bxA=bA x = bbirx=bAx=b matrisi yoğun ve genel formda olmakla birlikte 1000x1000'den daha büyük değildir. MATLAB'da çözüm, işlev veya eğik çizgi …

3
Birçok sağ taraf için seyrek doğrusal çözücü
Birçok sağ tarafı (300 ila 1000) ile aynı seyrek doğrusal sistemi (300x300 ila 1000x1000) çözmem gerekiyor. Bu ilk soruna ek olarak, farklı sistemleri de çözmek istiyorum, ancak aynı sıfır olmayan elemanlarla (sadece farklı değerler), sabit seyreklik desenine sahip birçok seyrek sistem. Matrislerim belirsiz. Çarpanlara ayırma ve başlatma işlemlerinin performansı önemli …

5
aynı
MATLAB'ı, b'nin zamanla değiştiği her zaman aralığında çözmeyi içeren bir sorunu çözmek için kullanıyorum . Şu anda bunu MATLAB'ları kullanarak gerçekleştiriyorum :Ax=bAx=b\mathbf{A} \mathbf{x}=\mathbf{b}bb\mathbf{b}mldivide x = A\b Gerektiği kadar ön hesaplama yapma esnekliğine sahibim, bu yüzden daha hızlı ve / veya daha doğru bir yöntem olup olmadığını merak ediyorum mldivide. Burada …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.