WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Funktionen: Argument als Variable und als String verw.

 

leifquell
Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.08.2011, 14:40     Titel: Funktionen: Argument als Variable und als String verw.
  Antworten mit Zitat      
Hallo zusammen!

Schon oft wurde ich in diesem Forum als stiller Leser bei vielen Fragestellungen gut beraten. Nun finde ich bislang leider noch keine Antwort zu meinem aktuellen Problem:

Ich habe eine Funktion mit mehreren In-/Output Argumenten. Die Inputargumente sind bereits im Workspace definierte Vektoren/Zahlen. Das Outputargument wird erst im Laufe der Funktion definiert.

Frage: (Wie) Ist es möglich die Outputvariable zunächst als String zu verwenden - in dem Fall hier als Titel einer Figure - und dann unter dem selben Namen eine Variable,welche einen Vektor mit Zahlenwerten beinhaltet, zu erzeugen? Dabei soll Das Outputargument nicht in Hochkommata ' eingegben werden.

Die Ausgabe als Variable klappt ohne Probleme. Nur schaffe ich es nicht Datenoutput als String zu formatieren...

Beispiel-Code:
Code:

function [Datenoutput]=test(Dateninput)
 %beliebige Rechnung ...
 figure
 plot(Ergebnis_einer_beliebigen_Rechnung
 title(Datenoutput)

 Datenoutput=Ergebnis_einer_beliebigen_Rechnung
end
 



Kann mir da jemand helfen?

Gruß,
Leifquell
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 03.08.2011, 17:01     Titel:
  Antworten mit Zitat      
Hallo

Ich würde in so einem Fall VARARGOUT verwenden.

Code:

function [varargout]=test(Dateninput)
 %beliebige Rechnung ...
 figure
 plot(Ergebnis_einer_beliebigen_Rechnung
 title(Datenoutput)

 varargout{1}=Ergebnis_einer_beliebigen_Rechnung
end
 
Private Nachricht senden Benutzer-Profile anzeigen
 
leifquell
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.08.2011, 08:22     Titel:
  Antworten mit Zitat      
Danke für den Hinweis, danny.
Leider ist es nicht ganz das was ich suche. Allerdings komm ich damit meiner Sache näher.

Über die Hilfe wurde mir der Befehl
Code:
vorgschlagen.
Allerdings scheint es mir, dass dieses Command nicht für Outputargumente existiert.
Dies ist exakt meine Problemstellung.
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 04.08.2011, 11:01     Titel:
  Antworten mit Zitat      
leifquell hat Folgendes geschrieben:
Danke für den Hinweis, danny.
Leider ist es nicht ganz das was ich suche. Allerdings komm ich damit meiner Sache näher.

Über die Hilfe wurde mir der Befehl
Code:
vorgschlagen.
Allerdings scheint es mir, dass dieses Command nicht für Outputargumente existiert.
Dies ist exakt meine Problemstellung.


Ja für Inputs ist manchmal sinnvoll, um z.B in Plots oder Tabelle die Namen auszugeben. Für Outputs sehe ich da keinen Sinn. Wozu willst du so was?
Private Nachricht senden Benutzer-Profile anzeigen
 
leifquell
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.08.2011, 11:32     Titel:
  Antworten mit Zitat      
Ich habe eine Funktion die aus gegeben FFTs eine Transferfunktion bildet:

[Datenoutput]=F2TF(Eingangsdaten,Ausgangsdaten)

Für 'Eingangsdaten' und 'Ausgangsdaten' werden Variablen aus dem Workspace eingesetzt.
Unter dem Namen von 'Datenoutput' soll zum Einen die Übertragugnsfunktion Zahlenmäßig ausgegeben werden. Zum Andern wird bei Vorhandensein eines Outputarguments ein Plot der Übertragungsfuktion erstellt. Der Titel der Figure soll dann 'Datenoutput' lauten.

Beispiel:
Eingabe lautet:
[TF_MP1_MP2]=F2TF(FFT_Messpunkt1,FFT_Messpunkt2)

Ausageb soll sein:
1) Figure mit dem Titel "TF_MP1_MP2"
2) Vektor mit den Daten der Übertragungsfunktion: TF_MP1_MP2=[...]


Es geht mir letzendlich darum, dass der ich nicht extra den Titel für die Figure als Inputargument eingeben muss.


Ich hoffe, dass es nun etwas verständlicher ausgedrückt ist...
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 04.08.2011, 12:57     Titel:
  Antworten mit Zitat      
Du kannst doch plotten auch nach dem Funktion Aufruf?
Na ja, ich kenne keine Möglichkeit an die Namen von Ausgabeparameter zu kommen. Also besser einfacheren Weg zu nutzen, und Parameter als String zu übergeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
leifquell
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 03.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2011, 18:46     Titel:
  Antworten mit Zitat      
Klar, plotten kann ich.
Habe mich damit abgefunden einfach den Titel des Diagramms als String einzugeben.

Trotzdem vielen Dank für deine Hilfe!

Gruß,
Leifquell
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.