|
|
Funktion liefert zu wenig Outputs |
|
incubus |

Forum-Newbie
|
 |
Beiträge: 7
|
 |
|
 |
Anmeldedatum: 05.05.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 17:50
Titel: Funktion liefert zu wenig Outputs
|
 |
Hallo,
ich soll für einen Programmierkurs eine Funktion in Matlab schreiben, welche eine obere Schranke für Schadstoffe berechnen soll.
Als Eingabe bekommt es eine Zeitschrittweite sowie einen Endzeitpunkt und als Ausgabe soll es einen (Schadstoff-)Massevektor sowie einen Zeitvektor liefern. Ausrechnen tut es auch alles ganz Prima, nur wird seltsamerweise immer nur einer der Vektoren ausgegeben, und zwar der, der in meiner Klammer als erstes drinsteht. Hier mein Programm:
Sieht jemand, woran das liegt? Weiß echt nichtmehr weiter :/
Vielen Dank schonmal für die Hilfe und Liebe Grüße
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 19:29
Titel:
|
 |
Hallo,
du musst die Funktion schon auch mit zwei Rückgabeargumenten aufrufen:
Warum setzt du eigentlich nicht direkt
?
Grüße,
Harald
|
|
|
incubus |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 7
|
 |
|
 |
Anmeldedatum: 05.05.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 20:48
Titel:
|
 |
Harald hat Folgendes geschrieben: |
Hallo,
du musst die Funktion schon auch mit zwei Rückgabeargumenten aufrufen:
Warum setzt du eigentlich nicht direkt
?
Grüße,
Harald |
Hallo Harald,
erst einmal Danke für deine Antwort.
Zu 1: Habe ich das in meiner Funktion mit [Massevek, Zeitvek]=SchrankeOben(..) (siehe erste Zeile des Codes) nicht schon getan?
Zu deinem 2. Punkt: stimmt das ginge einfacher, danke . Bin erst seit Anfang dieses Semesters mit Matlab in Kontakt getreten, manchmal denkt man da noch zu umständlich:P
Liebe Grüße
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 21:18
Titel:
|
 |
|
|
incubus |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 7
|
 |
|
 |
Anmeldedatum: 05.05.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 22:34
Titel:
|
 |
Hallo,
das Problem ist, ich habe Matlab über eine Lizenz von der Uni, dafür musste ich kein extra Benutzerkonto dort anlegen und kann somit die Seite nicht einsehen. Hast du einen kurzen Tipp für mich, wie ich das anpassen kann?
Danke und Gruß
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 22:45
Titel:
|
 |
Hallo,
Tipp: siehe oben.
In der Hilfe unter:
MATLAB --> Programming Scripts and Functions --> Function Basics --> Examples and How to --> Create Functions in Files --> Call a Function.
Grüße,
Harald
|
|
|
incubus |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 7
|
 |
|
 |
Anmeldedatum: 05.05.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 23:00
Titel:
|
 |
Hi,
danke für die Mühe, hab die Tipps jetzt in der Doc gefunden, allerdings stehe ich wohl total auf dem Schlauch..du beziehst dich doch hierauf oder?
"If your function returns more than one output, enclose the output names in square brackets, such as function [one,two,three] = myfunction(x)" (Zitat Matlab doc).
Ich verstehe nicht so richtig, was da jetzt der Unterschied zur Funktionsdeklaration ist und wo genau mein Fehler liegt.
Danke und Gruß
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 20.05.2014, 23:08
Titel:
|
 |
funktions aufruf und funktions deklaration sind 2 unterschiedliche sachen.
harald hat dir bereits gesagt was du machen musst.
_________________
richtig Fragen
|
|
|
incubus |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 7
|
 |
|
 |
Anmeldedatum: 05.05.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.05.2014, 09:15
Titel:
|
 |
Okay jetzt hast geklappt, danke euch
|
|
|
|
|
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.
|
|