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

Wie kann ich der Funktion von fminsearch Werte übergeben?

 

Matmarv
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 54
Anmeldedatum: 12.03.13
Wohnort: ---
Version: Matlab R2013a
     Beitrag Verfasst am: 26.04.2013, 14:20     Titel: Wie kann ich der Funktion von fminsearch Werte übergeben?
  Antworten mit Zitat      
Hallo,

ich möchte einer Funktion, welche ich in fminsearch benutze Werte übergeben.

Also:
Code:


Wie kann ich jetzt der funktion fun noch Werte übergenen?

Code:

[p,fval,exit]=fminsearch(@(p0)para_opt(p0,RL1,RL2,RL3,RL4,RL5,RL6,RL7,endtemp_ks,endtemp_leer,temp_anfang_ks,temp_anfang_leer,temp_ks_63,temp_leer_63,simu_ks,simu_leer,verluste_leer,verluste_ks),options);


Ich habe es so probiert. Bekomme aber die Meldung, dass nur type double erlaut wäre!? Es handelt sich bei meinen Werten jedoch lediglich um vektoren.

Gruß
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.04.2013, 22:07     Titel:
  Antworten mit Zitat      
Hallo,

der Ansatz ist richtig. Bitte die Fehlermeldung kopieren, nicht interpretieren.

Bei einer derartig großen Anzahl von Parametern sollte man überlegen, diese in eine Parameterstruktur zusammenzufassen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Matmarv
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 54
Anmeldedatum: 12.03.13
Wohnort: ---
Version: Matlab R2013a
     Beitrag Verfasst am: 28.04.2013, 15:13     Titel:
  Antworten mit Zitat      
Hallo

der genaue Fehler lautet:

Code:
??? Error using ==> fminsearch at 107
FMINSEARCH only accepts inputs of data type double.

Error in ==> para_fminsearch at 48
[p,fval,exit]=fminsearch(@(p0)para_opt(p0,RL1,RL2,RL3,RL4,RL5,RL6,RL7,endtemp_ks,endtemp_leer,temp_anfang_ks,temp_anfang_leer,temp_ks_63,temp_leer_63,simu_ks,simu_leer,verluste_leer,verluste_ks),opti


Liebe Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.04.2013, 19:44     Titel:
  Antworten mit Zitat      
Hallo,

als zweites Argument muss der Startvektor an fminsearch übergeben werden. Es sieht so aus, als ob du stattdessen eine Optionsstruktur übergibst.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Matmarv
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 54
Anmeldedatum: 12.03.13
Wohnort: ---
Version: Matlab R2013a
     Beitrag Verfasst am: 28.04.2013, 19:57     Titel:
  Antworten mit Zitat      
Hallo,

das verstehe ich noch nicht ganz.
p0 ist mein Startvektor
hinter para_opt in () sind die Werte / Vektoren
ganz hinten mache ich noch ein kmma, und gebe die options an

Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

du gibst p0 nicht als Argument an, nur das Function Handle (da könntest du genauso gut irgendwas anderes als Variablennamen verwenden) und die Optionen.

Aber mich wundert es nicht, dass man bei diesem endlos langen Function Handle den Überblick verliert.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Matmarv
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 54
Anmeldedatum: 12.03.13
Wohnort: ---
Version: Matlab R2013a
     Beitrag Verfasst am: 28.04.2013, 20:50     Titel:
  Antworten mit Zitat      
Kannst du zeigen wie ich es schreiben muss.
Ich mache leider sowas zum ersten mal, und muss gleich mit so vielen parametern umgehen.

Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.04.2013, 21:02     Titel:
  Antworten mit Zitat      
Hallo,

es spricht doch nichts dagegen, erst mal ein einfacheres Problem zu versuchen?

Code:
[p,fval,exit]=fminsearch(@(p0)para_opt(p0, weitereParameter), p0, options)


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Matmarv
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 54
Anmeldedatum: 12.03.13
Wohnort: ---
Version: Matlab R2013a
     Beitrag Verfasst am: 29.04.2013, 07:24     Titel: Danke
  Antworten mit Zitat      
Besten Dank Harald

Liebe Grüße
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.