Ich muss überprüfen, ob eine Matrix eine Identitätsmatrix ist. Ich weiß, es gibt eine Funktion, die überprüft, ob eine Matrix eine diagonale Matrix ist, also isdiag
. Ich weiß, ich kann folgendes überprüfen tun, wenn eine Matrix a
eine Identitätsmatrix ist:Überprüfen, ob eine Matrix eine Identitätsmatrix in Matlab ist
isequal(a, eye(size(a, 1)))
Gibt es eine Funktion wie isdiag
tha tut es mir direkt?
Sie sollten es generell vermeiden, die Genauigkeit zu überprüfen, es sei denn, Sie arbeiten mit Ganzzahlen. Sie sollten wahrscheinlich etwas tun, wie 'isidentity = @ (a, tol) all (abs (a-eye (Größe (a)))
Es gibt keine eingebaute Funktion. Ihr Ansatz ist gut, es sei denn, Sie verarbeiten sehr große (spärliche) Matrizen, in denen das Auge (Größe (a, 1)) den Speicher überschreiten kann. – Daniel
Hallo @nbro Sie haben mehrere Ihrer Fragen noch offen, ohne eine akzeptierte Antwort. Wenn eine Antwort Ihre Frage gelöst hat, denken Sie bitte daran [akzeptieren] (http://meta.stackexchange.com/q/5234/179419), indem Sie auf die Schaltfläche klicken Häkchen. Dies zeigt der breiteren Gemeinschaft, dass Sie eine Lösung gefunden haben. – Daniel