|
|
automatisches erzeugen und bennen von n Matrizen |
|
vincentvega |

Forum-Anfänger
|
 |
Beiträge: 35
|
 |
|
 |
Anmeldedatum: 18.08.09
|
 |
|
 |
Wohnort: berlin
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.07.2010, 20:05
Titel: automatisches erzeugen und bennen von n Matrizen
|
 |
Ich hab ein algorithmus welcher eine beliebige Zahl n ermittelt.
Nun soll mittels eines algorithmuses n-mal leere Matrizen erzeugt werden die alle nach einem Schema benannt werden sollen.
Beispiel: n=5
Es soll nun ein algorithmus geschrieben werden, dass mir folgendes eigenstäntig generiert
testmatrix01=zeros (x,y)
testmatrix02=zeros (x,y)
testmatrix03=zeros (x,y)
testmatrix04=zeros (x,y)
testmatrix05=zeros (x,y)
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.07.2010, 01:16
Titel: Re: automatisches erzeugen und bennen von n Matrizen
|
 |
Hallo vincentvega,
vincentvega hat Folgendes geschrieben: |
Nun soll mittels eines algorithmuses n-mal leere Matrizen erzeugt werden die alle nach einem Schema benannt werden sollen. |
Das ist zwar mit EVAL in Matlab möglich:
Ich würde aber deutlich davon abraten. Es ist immer wesentlich sicherer und übersichtlicher ein Cell oder Struct Array für solche Zwecke zu benutzen:
Programme die per EVAL Variablen dynamisch erstellen sind instabil, schwer zu debuggen und langsam.
Gruß, Jan
|
|
|
vincentvega |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 35
|
 |
|
 |
Anmeldedatum: 18.08.09
|
 |
|
 |
Wohnort: berlin
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.07.2010, 10:26
Titel:
|
 |
Danke für die schnelle antwort,
aber das hilft mir nicht ganz weiter.
ich will die dynamisch erzeugten matrizen nicht in einer struktur-cell haben sondern separat erzeugen.
nach dieser separaten erzeugung will ich sie gleich weiterverarbeiten.
ich brauche vielmehr ein mittel was mir ein string als variablennamen umformt!
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.07.2010, 11:23
Titel:
|
 |
Hallo vincentvega,
bitte lies doch meine letzte Antwort nochmal. Immerhin habe ich genau dafür die Lösung mittels EVAL angegeben. Hast Du es zumindest versucht?
Wie gesagt ist dies aber ein ausgesprochen fehleranfälliger Weg und ich rate deutlich davon ab. EVAL überschreibt Dir willkürlich die Namen von Funktionen und dieses und andere Foren wimmeln nur so von verzweifelten Anwendern, deren Programme von EVALs undebugbar werden.
Es gibt keinen notwendigen Grund dynamisch Variablen zu erzeugen, wenn man das mit sicheren Structs und Cell-Arrays auch erreichen kann.
Es gibt übrigens keine "struktur-cell". Structs und Cells sind zwei wichtige sehr verschiedene Typen in Matlab und die unkorrekte Benennung erzeugt im Allgemeinen mehr Konfusion als nötig.
Wenn Du mit "String als Variablen-Namen umformen" etwas komplett anderes meinst, etwa GENVARNAME, dann müsstest Du das noch mal genauer erklären.
Gruß, Jan
|
|
|
vincentvega |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 35
|
 |
|
 |
Anmeldedatum: 18.08.09
|
 |
|
 |
Wohnort: berlin
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.07.2010, 11:28
Titel:
|
 |
Hallo Jan,
ich hab alle drei vorschläge versucht und von denen kommt eval dem am nächsten.
Bei der Variante mit
S=[]....
gibt es das problem dass alle erzeugten Variablen in S enthalten sind und nicht eigenständig stehen. Wenn ich für die weiterverarbeitung eines elements von S dieses element aufrufen will muss ich mir wieder etwas einfallan lassen wie ich das in einer schleife tue.
eval reicht mir im moment aus. mein programm ist recht überschaubar sodass ich mit eval auskomme.
danke für die mühe
gruß,
vinny
|
|
|
|
|
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.
|
|