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

Fit-Suche

 

49er
Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 23.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.02.2015, 16:26     Titel: Fit-Suche
  Antworten mit Zitat      
Hallo Zusammen,

ich hab ein kleines Problem mit Matlab, an dem ich gerade etwas hänge.

Ich möchte gerne für folgende Beispielfunktion das Ideale Volumen (V) berechnen, wobei v ein Vektor ist:

V = Pi*2^2*v + Pi*2^2*10

Wie geh ich hier am besten vor bzw. welche Fit-Funktion ist hier sinnvoll?

Grüße
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 04.02.2015, 17:13     Titel:
  Antworten mit Zitat      
Zitat:
Ich möchte gerne für folgende Beispielfunktion das Ideale Volumen (V) berechnen

was ist den das "ideale" volumen ? welche randbedingungen gibt es. was hast du bis jetzt versucht ? was hat nicht so geklappt wie du dir das vorstellst?
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
49er
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 23.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.02.2015, 08:36     Titel:
  Antworten mit Zitat      
Ah okey, nach einer Nacht drüber schlafen hab ich festgestellt, dass ich mein Problem falsch beschrieben hab... sorry.


Hier nochmal meine "Herausforderung":
Ich hab mehrer Volumen die von x abhängig sind.

V(x1) = Pi*2^2*x1 + Pi*k^2*10
V(x2) = Pi*2^2*x2 + Pi*k^2*10
V(x3) = Pi*2^2*x3 + Pi*k^2*10

Dadurch erhalte ich mehrere Volumen V(x).
Und ich Suche jetzt das eine ideale Volumen V, so dass ich für alle "x" so nahe wie möglich am fixen Durchmesser 2*k bin.


Wie geh ich hier denn am besten vor? Ich steh leider total auf dem Schlauch...
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 05.02.2015, 11:22     Titel:
  Antworten mit Zitat      
naja was meinst du denn mit dicht dran? das bei allen die relative abweichung gering ist oder die absolute? und was suchst du jetzt? einmal sagst du du hast volumen und dann schreibst du du suchst volumen. das verstehe ich nicht. was ist der parameter den du gerne ermittelt haben willst? k? falls ja kannst du das einfach über eine minimierung der fehlerquadrate machen. wie gesagt ich verstehe die aufgabe immernoch nicht ganz.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
49er
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 23.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.02.2015, 11:48     Titel:
  Antworten mit Zitat      
Okey, hier mal mein Problem mathematisch formuliert:

Sum( V(i) - Videal ) = minimal

wobei V(i) = PI*0,8^2*x(i) + PI*5^2*110.

Suchen tu ich Videal. Ich hab viel mit lsqcurvefit Versucht, allerdings weiss ich nicht, ob das der richtige Ansatz ist. Funktionieren tuts eh noch nicht.

Hier mal den Code:

Code:

function F = myfun(Videal,xdata)
F = (pi*0.8^2*xdata + pi*4.5^2*110*10^-3) - Videal;

xdata = [0.99 0.94 0.94 0.95 0.95];
V = pi*0.8^2*xdata + pi*4.5^2*110*10^-3;

V0 =[0.8; 5];
[Videal,resnorm] = lsqcurvefit(@myfun,V0,x,V)
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 05.02.2015, 12:01     Titel:
  Antworten mit Zitat      
minimal würde es werden wenn das volumen minus unedlich wird da du keine einschränkung da gemacht hast. was du dann aber ausrechnest ist das minimum der quadratischen abweichung.
Code:
xdata = [0.99 0.94 0.94 0.95 0.95];
V = pi*0.8^2*xdata + pi*4.5^2*110*10^-3;
[x,fval,exitflag,output] = fminsearch(@(x)sum((V-x).^2),mean(V))

_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
49er
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 23.02.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.02.2015, 15:04     Titel:
  Antworten mit Zitat      
Perfekt, dass ist die Lösung die ich brauche!
Vielen Dank!! Very Happy

Das Problem ist real und minus unendlich wäre nicht die Lösung. Von daher hätt ich genauer einschränken sollen, da hast Du recht.
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.