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

Funktion mit 2 Rückgabewerten, nur 2. Rückgabewert verwend

 

xxxyyyy
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 08.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2019, 18:33     Titel: Funktion mit 2 Rückgabewerten, nur 2. Rückgabewert verwend
  Antworten mit Zitat      
Hallo,

ich habe eine Funktion die eine kleine und eine relativ große Variable zurückgibt.
Letztere würde ich gerne mit einer Variablen in der aufrufenden Funktion addieren.

Momentan habe ich das so gelößt:
Code:

[~,data1] = myfunc();
sum = data_local + data1;
 


Problem:
Ich muss die relativ große Variable zunächst in data1 speichern, nur um sie dann auf data_local drauf zu addieren. Das würde ich gerne vermeiden um Rechenzeit zu sparen.

Bei einem Rückgabewert wäre das ja sehr einfach, durch:
sum = data_local + myfunc();

Aber das geht ja bei 2 Rückgabewerten nicht. Hat jemand eine Idee wie man das umsetzen könnte?

Danke vorab Smile
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 31.10.2019, 20:36     Titel:
  Antworten mit Zitat      
Hallo,

wenn du
Code:
data1 = data1 + data_local;

verwendest, dürfte die Addition "in-place", d.h. ohne zusätzlichen Speicherbedarf erfolgen.

Alternativ die Funktion so definieren, dass du über ein Eingabeargument bestimmen kannst, welche Rückgabe du haben möchtest.

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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
xxxyyyy
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 08.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2019, 21:16     Titel:
  Antworten mit Zitat      
Hi, ja das ist schon mal ein Effizientgewinn, danke.

Mit der Funkttion ist nichts zu machen, oder (außer nur ein Rückgabewert)?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 31.10.2019, 23:58     Titel:
  Antworten mit Zitat      
Hallo,

nicht, dass ich wüsste.

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 ;)
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 - 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.