In einem Matlab m-File wird eine For Schleife durchlaufen: for i=1:5 % Berechnung der Variable 'Zahl' ... array(i) = zahl; end Warum kann ich in einem m-File nicht derart auf den Index des Arrays zugreifen? In der Konsole funktioniert es schließlich auch.
:
Verschoben durch Moderator
Wenn es im m-file genau so wie oben steht, geht durch die drei Punkte der Kommentar in der nächsten Zeile weiter! --> Also die Punkte wegmachen. Es klappt im m-file alles genau so wie in der Konsole.
Leider klappt es im m-File nicht. Ich erhalte den Fehler: "Array indices must be positive integers or logical values". Da ich auf ganzzahlige Werte zugreife, bedingt durch die For Schleife, weiß ich nicht, wo dr Fehler liegt.
Bei mir klappt folgender Code fehlerfrei: array = zeros(5,1); for i = 1:5 array(i) = i; end Welche Version nutzt du? Schreib ggf. den ganzen Code hier rein!
Beitrag #5798411 wurde vom Autor gelöscht.
Version ist Matlab 2018b: Im m-File wird ein Simulink Modell wiederholt ausgeführt Array = zeros(5,1) for i=1:5 starthoehe = i*5; sim('Model.slx'); xa = ScopaData.signals(1,1)values; minimum = min(xa); Array(i) = minimum end
Das "Minimum" wird aus einem Kurvenverlauf heraus gesucht, der sich zwischen -100 und 100 bewegen kann. Wie kann ich die Werte denn in einem Array abspeichern, falls diese nachkommastellen haben? Ziel ist es den Minimum wert über die Variation des Parameters Starthoehe zu erhalten.
Die Zeile: xa = ScopaData.signals(1,1)values; sieht seltsam aus. Fehlt da ein Punkt? Gruß Markus
Ja, der Punkt fehlt - nur hier im Forum. Die Werte kann ich alle auslesen. Das Problem ist lediglich der Index.
Probiere mal Array(i,1). Ich habe ML 2015b, hab aber noch im Hinterkopf, dass bei 2018 sich die Indizierung von Arrays geändert hat. In welcher Zeile kommt die Fehlermeldung und kommt sie gleich beim ersten i?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.