Funktionen > Lösen und Optimieren > Löser für Wurzeln und lineare Systeme > Lösen linearer Systeme
  
Lösen linearer Systeme
lsolve(M, v) – Übergibt die Lösung x des linearen Gleichungssystems M·x = v mittels LU-Faktorisierung.
Argumente
M ist eine reelle oder komplexe Matrix. Wenn die Matrix quadratisch ist, darf sie nicht singulär sein.
v ist ein reeller oder komplexer Vektor bzw. eine Matrix, der bzw. die ebenso viele Zeilen aufweist wie M.
Zusätzliche Informationen
Eine Matrix ist singulär, wenn ihre Determinante 0 ist. Eine Matrix ist fast singulär, wenn sie eine hohe Konditionszahl hat. Mit diesen Bedingungen ist es schwierig, die zum Lösen des Problems verwendete invertierte Matrix zu berechnen. Die Funktion lsolve kann in diesen Fällen fehlschlagen oder bedeutungslose Ergebnisse ergeben. Für fast singuläre Matrizen möchten Sie möglicherweise andere Zerlegungen verwenden.
Die Funktion lsolve beruht auf einer Routine aus dem Buch Press, W. H., et al., Numerical Recipes in C: The Art of Scientific Computing, zweite Ausgabe, Cambridge University Press, Cambridge, 1992. Für die LU-Faktorisierung werden die BLAS/LAPACK-Bibliotheken von Intel verwendet.
Sie können überprüfen, ob ein System eine eindeutige Lösung hat, indem Sie prüfen, ob rank(M) = cols(M) ist, d.h., ob alle Spalten von M linear unabhängig sind.
Sie können diese Art von System mittels Matrixinvertierung direkt lösen, allerdings ist lsolve schneller und in einigen Fällen genauer. Zum Lösen eines linearen Gleichungssystems in natürlicher Schreibweise verwenden Sie einen Lösungsblock.
Bei einem inkonsistenten Gleichungssystem gibt lsolve die Kleinste-Quadrate-Lösung zurück, die auch durch geninv(M)·v gegeben ist.
Für Matrixwerte von v gibt lsolve(M, v<i>) die i-te Spalte von geninv(M)·v zurück.