scipy.sparse.linalg.

is_sptriangular#

scipy.sparse.linalg.is_sptriangular(A)[Quelle]#

Gibt ein 2-Tupel zurück, das die untere/obere Dreiecksstruktur für spärliche A angibt.

Prüft auf Dreiecksstruktur in A. Das Ergebnis wird in zwei booleschen Werten lower und upper zusammengefasst, um anzugeben, ob A eine untere bzw. obere Dreiecksmatrix ist. Eine diagonale A führt dazu, dass beide True sind. Eine nicht-dreieckige Struktur führt zu False für beide.

Hier wird nur die spärliche Struktur verwendet. Werte werden nicht auf Nullen geprüft.

Diese Funktion konvertiert eine Kopie von A in das CSC-Format, falls es sich nicht bereits um das CSR- oder CSC-Format handelt. Es kann daher effizienter sein, dies selbst zu tun, wenn Sie andere Verwendungszwecke für die CSR/CSC-Version haben.

Wenn A nicht quadratisch ist, beeinflussen die Teile außerhalb des oberen linken Quadrats der Matrix ihre Dreiecksstruktur nicht. Wahrscheinlich möchten Sie mit dem quadratischen Teil der Matrix arbeiten, obwohl dies hier nicht erforderlich ist.

Parameter:
ASpärliches Array oder spärliche Matrix von SciPy

Eine spärliche Matrix, vorzugsweise im CSR- oder CSC-Format.

Rückgabe:
lower, upper2-Tupel von booleschen Werten

Hinzugefügt in Version 1.15.0.

Beispiele

>>> import numpy as np
>>> from scipy.sparse import csc_array, eye_array
>>> from scipy.sparse.linalg import is_sptriangular
>>> A = csc_array([[3, 0, 0], [1, -1, 0], [2, 0, 1]], dtype=float)
>>> is_sptriangular(A)
(True, False)
>>> D = eye_array(3, format='csr')
>>> is_sptriangular(D)
(True, True)