|
|
Minimieren einer Funktion, die von einer Funktion abhängt |
|
TerenceSpencer |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 12.03.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2018, 13:54
Titel: Minimieren einer Funktion, die von einer Funktion abhängt
|
|
Hallo,
ich würde gerne eine Funktion minimieren, die von einer anderen Funktion abhängt, bekomme es aber nicht so richtig hin. Meine Funktion 'fun' ist definiert als:
Meine Funktion 'testfun' ist definiert als:
Wenn ich nun folgendes eingebe, berechnet er es ganz normal und gibt mir ein Ergebnis aus:
Nun möchte ich die Funktion 'testfun' minimieren. Wenn ich also
eingebe, sagt MATLAB mir natürlich, dass er nicht genug input arguments hat, da es ja nicht weiß, was 'fcn' von 'testfun' sein soll. Wenn ich aber folgendes versuche,
bekomme ich die Fehlermeldung, dass die Klammer nach @testfun dort nicht hin gehört. Nun also meine Frage: Wie kann ich MATLAB eine Funktion minimieren lassen, die von einer anderen Funktion abhängt bzw. wie kann ich MATLAB sagen um welche Funktion es sich handelt? Ich möchte sowohl nach z als auch nach x minimieren können.
Vielen Dank im Voraus!
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.03.2018, 20:22
Titel:
|
|
Hallo,
bzw.
Grüße,
Harald
|
|
|
TerenceSpencer |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 12.03.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.03.2018, 17:13
Titel:
|
|
Hallo Harald,
vielen Dank. Das hat gut funktioniert und mich ein ganzes Stück weitergebracht. In meinem konkreten Anwendungfall ist meine Variable für die ich die Funktion minimiere eine Matrix. Für diese würde ich gerne eine Bedingung festlegen. Die Hauptdiagonale der Matrix soll aus Nullen bestehen und nur die übrigen Werte anpassen. Geht das?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 13.03.2018, 23:50
Titel:
|
|
Hallo,
du kannst ja ohnehin nur einen Vektor von Variablen angeben. Insofern würdest du z.B. bei einer 3x3-Matrix nur die 6 Elemente, die außerhalb der Diagonale stehen, als zu optimierende Variablen ansehen und daraus die 3x3-Matrix mit Nullen auf der Diagonale konstruieren.
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.
|
|