|
|
Brace indexing is not supported for variables of this type |
|
Akinh0 |
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 29.06.22
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.08.2022, 17:46
Titel: Brace indexing is not supported for variables of this type
|
|
|
|
|
Hallo Leute,
ich muss für meine Bachelorarbeit ein experiment auswerten. Hierzu hab ich ein sehr kompliziertes MatLab-Skript von meinem Prof. bekommen, welches auf ganz viele "functions" zugreift und dann mehrere Plots erstellt. Dieses Skript erstellt einen Datensatz, wo mehrere einträge für eine Spannung (sig) und eine Dehnung (eps) zu finden sind. Ich soll den Abstand zwischen den einträgen aus dem Datensatz zu den Musterlösungen sig_fem bzw eps_fem berechnen (siehe Code). die Gleichung für distance ist so richtig wie sie da steht also auch mit den geschweiften Klammern um das "q".
in einer "Function" sind die Variablen wie folgt geschrieben.
in den beiden letzen Zeilen muss die linke Seite statt D_sample_eps_e(q) zu eps.list{q} umgeformt werden und D_sample_sig_e(q) zu sig.list{q}. (Das hat mein Prof so vorgegeben)
Wenn ich jetzt nur die letzten beiden Zeilen ändere kriege ich die Fehlermeldung:
"Brace indexing is not supported for variables of this type."
Was muss ich noch ändern damit ich die Gleichung für Distance so benutzen kann?
Ich hoffe ich konnte das Problem schildern.
Vielen Dank schon mal im Voraus für die Hilfe,
Gruß Akin
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.08.2022, 20:17
Titel:
|
|
Hallo,
eps.list und sig.list sollen also anscheinend Cell Arrays werden. Die Fehlermeldung legt nahe, dass mindestens eins von beiden mit einem anderen Datentyp belegt ist. Das verursacht den Fehlermeldung.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Akinh0 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 29.06.22
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.08.2022, 15:31
Titel:
|
|
Hallo Harald,
vielen Dank erst einmal für die schnelle Antwort. Ich habe den fehler gefunden und behoben.
Jetzt habe ich aber ein anderes Problem.
Ich möchte das Skript mehrmals ausführen und die Variable "distance" in einer Liste abspeichern.
Also zB: Skript wird insgesamt 3 mal ausgeführt. Dann möchte ich alle drei Ergebnisse für distance in einer liste sehen.
Könnte mir jemand dabei helfen?
Gruß Akin
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 31.08.2022, 15:56
Titel:
|
|
Hallo,
wiederholtes Ausführen von Skripten ist keine sehr gute Idee. Dafür sind an sich Funktionen viel besser geeignet.
Generell ist eine Möglichkeit für Listen Cell Arrays.
Initialisierung:
Neue Ergebnisse anhängen:
Viele Unis haben eine "Flatrate" für https://matlabacademy.mathworks.com/. Ob das bei deiner Uni zutrifft, kann ich ggf. für dich in Erfahrung bringen. "MATLAB Fundamentals" und weiterführend "MATLAB Programming Techniques" könnten dir helfen, MATLAB besser zu nutzen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Akinh0 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 29.06.22
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.08.2022, 17:13
Titel:
|
|
Hallo Harald,
also bei meiner Aufgabe geht es darum ein experiment auszuwerten und ich habe quasi eine Funktion geschrieben, die das skript meine Profs mehrmals ausführt. Das sieht ungefähr so aus:
und die funktion getdistance sieht so aus.
Meintest du das so mit Funktionen oder sollte ich das Skript anders ausführen?
Das mit den Cell-Arrays hört sich schon mal gut an. Ist es möglich bei den Cell-Arrays auch einezweite Variable einzubinden ?
Also noch mal zum Verstädnis:
in dem Skript von meinem prof ist eine Variable die "D_sample" heißt und diese Variable greift sich aus einem Datensatz zufällig 4 Werte und berechnet dann ganz viele andere sache und halt durch meine funktion zusätzlich noch "distance".
Ich möchte gerne den Versuch mehrmals laufen lassen und am Ende sehen zu welchem "D_sample" welches "distance" ausgerechnet wurde.
Ich hoffe ich konnte dir mein Problem schildern.
Gruß Akin
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 31.08.2022, 21:41
Titel:
|
|
Hallo,
es ist schwer zu erahnen, welche Variablen das Skript nun erzeugt.
Zitat: |
Meintest du das so mit Funktionen oder sollte ich das Skript anders ausführen?
|
Geschickt wäre es vor allem, aus dem Skript eine Funktion zu machen.
Die Funktion akin ist momentan noch wenig sinnvoll. distance wird anscheinend nicht belegt, und das Ergebnis des Aufrufs von getdistance wird nicht zugewiesen. Sinnvoll wäre z.B.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Akinh0 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 29.06.22
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.09.2022, 19:19
Titel:
|
|
Hallo Harald,
vielen Dank für deine Hilfe, ich habe es jetzt so hinbekommen
Gruß Akin
|
|
|
|
|
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 - 2024
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.
|
|