Bibliothèque Python permettant de Gauss-Seidel Solveur Itératif?
Est-il une algèbre linéaire bibliothèque qui implémente itérative de Gauss-Seidel pour résoudre des systèmes linéaires? Ou peut-être un préconditionnés gradient solveur?
Grâce
EDIT: En fin de compte j'ai utilisé une sorte de brut mais bonne façon de le résoudre. Comme j'ai eu à créer la matrice A (pour Ax=b) de toute façon, j'ai partitionné de la matrice comme
A = M - N
avec
M = (D + L) and N = -U
où D est la diagonale, L est triangulaire inférieure de la section, et U triangulaire supérieure de la section. Puis
Pinv = scipy.linalg.inv(M)
x_k_1 = np.dot(Pinv,np.dot(N,x_k)) + np.dot(Pinv,b)
Également fait quelques tests de convergence. Elle fonctionne.
OriginalL'auteur Ivan | 2011-04-11
Vous devez vous connecter pour publier un commentaire.
Il est un exemple de mise en œuvre où ils vont à travers différentes implémentations ici:
http://www.scipy.org/PerformancePython
un autre exemple ici:
http://www.dur.ac.uk/physics.astrolab/py_source/kiusalaas/v1_with_numpy/gaussSeidel.py
Vous pourriez également vouloir vérifier les liaisons python pour
petsc
:http://code.google.com/p/petsc4py/
Malheureusement, les deux premiers liens sont rompus, et le dernier de la date.
OriginalL'auteur JoshAdel
{}
bouton). Merci de modifier votre réponse à expliquer d'oùsage.all
vient et pourquoi vous l'avez utilisé.sage est le général scientifique package: sagemath.org. Merci pour la réponse.
OriginalL'auteur bokks