09 Fehlermeldungen entschlüsseln

Fehlermeldungen entschlüsseln

Fehlermeldungen in MATLAB können einen wirklich in den Wahnsinn treiben. Seit Stunden versucht man ein Skript zum laufen zu bringen, löst endlich das eine Problem und schon hat man den nächsten Fehler!
Zum Glück gibt MATLAB in der Fehlermeldung immer Hinweise darauf, was man denn flasch gemacht hat. Die sind aber meistens ziemlich kryptisch und wenn man sie auf Anhieb verstehen würde hätte man den Fehler wahrscheinlich gar nicht erst gemacht.

Deswegen hier ein kurzer Guide, der euch helfen soll, aus den Fehlermeldungen schlau zu werden, damit ihr den Fehler schneller beheben könnt.

"Error: Index exceeds matrix dimensions"  via GIPHY

1. Matrix dimensions must agree.

Der Fehler
Matrix dimensions must agree.
tritt auf beim Addieren, Subtrahieren oder elementweiser Multiplikation / Division,
wenn die Matrizen oder Vektoren nicht gleich groß sind.

2. Error using  - Inner matrix dimensions must agree

Der Fehler
Error using  - Inner matrix dimensions must agree
tritt auf beim Multiplizieren oder Dividieren
wenn die Matrizen oder Vektoren nicht gleich groß sind.

3. Error using plot - Vectors must be the same length.

Der Fehler
Error using plot - Vectors must be the same length.
tritt auf wenn man versucht zwei Vektoren gegeneinander zu plotten, die nicht gleich lang sind.


DIE SIND DOCH GLEICH LANG!!11! via GIPHY

4. Subscripted assignment dimension mismatch.

Der Fehler
Subscripted assignment dimension mismatch.
tritt auf, wenn der Vektor oder die Matrix, welche eingefügt werden soll, nicht die gleiche Größe wie die Zielmatrix / der Zielvektor hat.

5. Index exceeds matrix dimensions.

Der Fehler
Index exceeds matrix dimensions.
tritt auf, wenn der Index außerhalb der indizierten Matrix liegt.

6. Assignment has more non-singleton rhs dimensions than non-singleton subscripts

Die Fehler
Assignment has more non-singleton rhs dimensions than non-singleton subscripts
oder
In an assignment A(:) = B, the number of elements in A and B must be the same.

treten auf, wenn der Vektor oder die Matrix welche eingefügt werden sollen mehr Dimensionen haben als durch den Ziel-Index zur Verfügung gestellt.
D.h. man versucht z.B. eine Matrix in einen Vektor oder einen Vektor in eine einzelne Zelle zu zwingen.

7. Diverse Syntax Fehler

Es gibt eine ganze Reihe von Fehlermeldungen, die im Gegensatz zu denen oben, die meistens auf einem Denkfehler beruhen, durch falsche Zeichen an der falschen Stelle verursacht werden. Meistens hat man sich also einfach nur vertippt.

Undefined function or variable 'name'.
Tritt auf, wenn man eine Variable oder eine Funktion aufruft, bevor man diese erstellt hat. Meistens hat man die Variable aber eigentlich schon erstellt, und hat sich an dieser Stelle einfach vertippt.

Error: Unexpected MATLAB operator.
Ein Zeichen wie + - * / = ist an einer Stelle wo es nicht hingehört.

Error: Expression or statement is incomplete or incorrect.
Nach einem Operator kommt nichts mehr, z.B. x = y / _

Error: Unbalanced or unexpected parenthesis or bracket.
Auf der linken Seite fehlt eine Klammer.

Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.
Auf der rechten Seite fehlt eine Klammer.

Error: The expression to the left of the equals sign is not a valid target for an assignment.
Tritt auf, wenn man in einem if-statement etwas vergleichen möchte und ein einfaches Istgleich statt einem doppelten benutzt ('=' statt '==').

 

 


Wenn man zwei Stunden einen Fehler gesucht hat und es war einfach ein Buchstabe zuviel via GIPHY