|
|
Nicht vorhandene Matrixdimensionen erkennen |
|
SMC09 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.07.2009, 08:52
Titel: Nicht vorhandene Matrixdimensionen erkennen
|
|
Hallo!
Ich habe folgendes Problem: Ich möchte gerne Matlab überprüfen lassen, ob die bla.bla(x-5) existiert.
Mit dem Befehl "isempty" kommt man nicht weit, da dieser nur auf leere Matrizen anspricht. Da bla.bla(x-5) ja gar nicht existiert, ist sie also auch nicht leer.
Gibt es dafür eine Lösung?
Vielen Dank!
|
|
|
|
|
qualle |
Forum-Anfänger
|
|
Beiträge: 40
|
|
|
|
Anmeldedatum: 03.07.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2007a
|
|
|
|
|
|
Verfasst am: 15.07.2009, 08:55
Titel:
|
|
Hallo,
mit dem Befehl
kannst du dir alle bisher definierten Dinge aufrufen lasse.
Gruß qualle
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 15.07.2009, 08:56
Titel:
|
|
Moin,
ist "bla.bla" deine Matrix?! Dann kannst du mit
die Größe der Matrix feststellen und anschließend mittels > und < überprüfen ob das zu wählende Element überhaupt vorhanden sein kann.
Oder meinst du etwas anderes?
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Gast |
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.07.2009, 09:01
Titel:
|
|
Hallo!
Ich glaub ich erläutere das ganze noch etwas tiefer: Es geht darum, dass ein Algorithmus jede Iteration einen Wert einspeichert, mittels bla.bla(x), wobei x die aktuelle Zeit ist. Anschließend muss er in der nächsten Iteration auf die zurückliegende Zeit bla.bla(x-1) zugreifen. Diese ist jedoch aufgrund der unregelmäßigen Berechnungen manchmal nicht vorhanden, da Zeitschritte gößer 1 Sekunde gemacht wurden. Aus diesem Grund soll Matlab überprüfen, ob das Zeitschritt bla.bla(x-1) existiert.
Es dar nix manuelles sein, dass ich in das Comand Window schreibe!
Gibt es dafür eine Möglichkeit?
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 15.07.2009, 09:08
Titel:
|
|
Moin,
dann solltest nicht überprüfen, ob dieser Eintrag leer ist, sondern ob er ==0 ist:
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Gast |
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.07.2009, 09:18
Titel:
|
|
Ja klar, das würde schon gehen, aber leider nicht bei mir, da der Eintrag ja noch garnicht existiert. In deinem Beispiel hast du a(1) und a(3), wodurch Matlab selbstständig a(2) = 0 setzt. Aber ich habe bei mir NUR a(1) und will prüfen ob a(2) existiert. Dadurch bekomme ich bisher den Fehler "Index exceeds Matrix dimensions".
Hast du vielleicht noch eine andere Idee?
|
|
|
Maddy |
Ehrenmitglied
|
|
Beiträge: 494
|
|
|
|
Anmeldedatum: 02.10.08
|
|
|
|
Wohnort: Greifswald
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.07.2009, 09:31
Titel:
|
|
Dann teste doch einfach mit size bzw. length auf die Größe, wenn dein Index größer ist, als die entsprechende ausgegebene Zahl, dann hast du deine Bedingung.
_________________
>> why
The computer did it.
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 15.07.2009, 09:31
Titel:
|
|
Siehe mein erster Beitrag. Ansonsten gib bitten einen Beispiel-Code der dein Verhalten zeigt.
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|