|
|
Not enough input arguments |
|
kathi_1701 |
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 02.07.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2018a
|
|
|
|
|
|
Verfasst am: 02.07.2018, 19:02
Titel: Not enough input arguments
|
|
|
|
|
Hallo zusammen,
ich bin noch recht neu im Bereich MatLab, muss aber eine Simulation für meine Bachelor-Arbeit damit schreiben, habe bis jetzt nur Erfahrungen in der objekt-orientierten Progammierung mit Java.
Ich definiere zu Anfang meines "Hauptprogrammes" eine Matrix und einen Vektor:
Mit jeder Schleife erhöht sich der Wert von e (deswegen einzeln definiert), und damit ändert sich ja eigentlich auch die Matrix epsilon.
In meinem Hauptprogramm rufe ich dann folgende Zeile auf:
Nachdem ich mein Hauptprogramm beendet habe definiere ich die Funktion e_r:
Sobald ich über den grünen "Run"-Button das Programm ausführen will,
wird mir für die Zeile [e_r1= epsilon*r;] die Fehlermeldung "Not engough input arguments" ausgegeben. Aber ich dachte meine Definitionen weiter oben im Code würden ausreichen, kann mir das jemand erklären und eine Lösung vorschlagen?
Achja, wenn ich das ganze ins Command Window kopiere und dort ausführe, klappt es und ich bekomme plausible Vektoren und Skalare raus. (e_r1 soll ein 1x3 Vektor werden und e_r ein Skalar)
Ich hoffe mal ich bin im richtigen Forum gelandet und dass mir jemand helfen kann
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.484
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 02.07.2018, 20:02
Titel:
|
|
Hallo,
ist alles in einem Fenster oder die Funktion in einem separaten Fenster? Wo ist denn die Schleife?
Es sieht an sich gut aus. Wo das Problem ist, lässt sich ohne weitere Informationen leider nicht sagen.
Grüße,
Harald
|
|
|
kathi_1701 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 02.07.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2018a
|
|
|
|
|
|
Verfasst am: 02.07.2018, 20:11
Titel:
|
|
Ich habe alles untereinander in den Editor geschrieben, begonnen mit meiner Hauptfunktion (mit function geöffnet und hinterher auch mit end beendet),
danach habe ich nach dem selben Schema (mit function und end) die einzelnen Funktionen bzw. Rechenschritte (z.B. e_r und e_t) definiert, die ich in meinem Hauptprogramm verwende.
Wie ich Funktionen in separaten Fenstern definiere weiß ich gar nicht, aber vielleicht
wäre das ganze dann ein wenig übersichtlicher.
Zu Anfang hab ich meine "Frequenzsterung" implementiert (die steuert meine FOR-Schleife):
Mein Schleife sieht dann folgendermaßen aus:
Da mein kompletter Code über 250 Zeilen hat, wollte ich den jetzt nicht komplett hier ins Forum kopieren.
Vielen Dank schonmal für die Hilfe
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.484
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 03.07.2018, 08:49
Titel:
|
|
Hallo,
es ist schwierig zu erahnen, wie die einzelnen Codeschnipsel im Zusammenhang zueinander stehen. Ohne ein reproduzierbares Beispiel (gerne abgespeckt) sehe ich keine Möglichkeit zu helfen.
Grüße,
Harald
|
|
|
kathi_1701 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 02.07.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2018a
|
|
|
|
|
|
Verfasst am: 03.07.2018, 11:01
Titel:
|
|
|
|
|
Hallo,
Im Grunde möchte ich den Vorfaktor einer Matrix (nähmlich mein e in der Matrix epsilon) für jeden Schritt also jeden Durchlauf der For-Schleife verändern. Deshalb rechne ich in jedem Schritt zu dem bestehenden e nochmal die Veränderung e_rate dazu. Das ganze habe ich und dem Kommentar "Steuerung der sich kontinuierlich ändernden Dehnung" implmentiert. (Mit einer bestimmten Anzahl Schritte, Frequenzen etc., das geht aus anderen mathematischen Hintergründen hervor).
Und dann möchte ich für jeden Durchlauf der FOR-Schleife Werte für e_r und e_t herausbekommen (in 2 verschiedene Richtungen r1 und r2, wozu ich zu Beginn Vektoren definiert habe).
Mein Problem scheint bei der Implementierung meiner Funktion e_r zu liegen:
In der zweiten Zeile kommt ja immer die Fehlermeldung Not enough input arguments, wobei der Code im Command Window (dann ohne function, sondern eingesetzt) ja funktioniert.
Wie kann etwas denn im Comand Window funktionieren und im Editor nicht?
Und auf ein Beispiel lässt sich der Code leider schlecht reduzieren, ich kann höchstens den ganzen Code hier posten.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.484
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 03.07.2018, 11:12
Titel:
|
|
Hallo,
Zitat: |
Mein Problem scheint bei der Implementierung meiner Funktion e_r zu liegen |
Dort sehe ich kein Problem. Typischerweise deutet die Fehlermeldung auf einen falschen Aufruf hin.
Zitat: |
Und auf ein Beispiel lässt sich der Code leider schlecht reduzieren, ich kann höchstens den ganzen Code hier posten. |
Dann mach das doch bitte, am besten indem du die Datei anhängst. Wie gesagt: ohne reproduzierbares Beispiel werden wir nicht weiterkommen.
Grüße,
Harald
|
|
|
|
|
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.
|
|