LeSim · Numerische Gleichungslöser
Benchmark realer Knotenpotentialanalyse-Matrizen gegen neun Löseverfahren
Hier werden verschiedenste Testmarizen des LeSim mit mehreren Lösern überprüft. Die Matrizen können mit einem Mausklick ausgewählt werden, und damit im Detail betrachtet werden. Die farbliche Markierung zeigt jeweils an, ob der Solver mit der entsprechenden Matrix zurechtgekommen ist. Wenn die entsprechende Zelle rot ist, hat der Solver versagt.
Die Matrizen sind das Ergebnis einer Knotenpotentialanalyse. Diese Matrizen sind fast alle singulär. Praktisch alle Gleichungslöser können aber nur nichtsingulären Matrizen lösen. Falls jemand eine Verbesserung vom cg (für singuläre, unsymmetrisch Matrizen) hat: Bitte melden!
Wer allgemeines Interesse an Gleichungslöser hat, kann entsprechend bei Wikipedia:Lineare Algebra anfangen zu lesen. Hier sind insbesondere die Kapitel zu Wikipedia:Lineare Gleichungssysteme empfehlenswert.
Wer sich mehr für die elektrotechnische Anwendung der Mathematik interessiert, der kann bei Integrationsverfahren nachlesen.
Eine Auswertung des gesamten Matrixbestandes zur Frage, warum die iterativen Löser hier fast so viele Iterationen brauchen wie es Unbekannte gibt — und was Vorkonditionierung daran ändert — steht unter Vorkonditionierung. Dort wird auch gezeigt, dass die Ursache in der Topologie der Matrizen liegt (Reihenstapel ergeben Ketten) und nicht in ihrer Kondition.
Bezeichner
Einzeltests je Solver
Benchmark-Tabelle
Anmerkung: Die Matrizen sind alle schwach besetzt. Um die Übersichtlichkeit zu erhöhen wurden alle Nullwerte durch Punkte (.) ersetzt.
$$ A \cdot x1 = B $$
Konvergenzverlauf |Residuum|
Performance je 1000 Aufrufe
| solver name | time invers | time lu | time luRR | time jacobi | time gausseidel | time conjgrad | time conjgradsquared | time gmres | time sgmres |
|---|