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

Lange Funktion ableiten und noch x auflösen

 

Endi5

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2014, 14:29     Titel: Lange Funktion ableiten und noch x auflösen
  Antworten mit Zitat      
Hi an alle,

Ich habe keine allzu komplizierte Frage nur ist die Gleichung, mit der ich beschäftigt bin, etwas unbequem.

Ich wollte folgende Funktion ableiten und nach x auflösen:

y=D*sin(C*atan(B*x-E*(B*x-atan(B*x))))

D, C, B, E, und x sind Variablen.

Das ableiten brachte folgende Lösung:

>> syms D C B E x y
>> y=D*sin(C*atan(B*x-E*(B*x-atan(B*x))));
>> diff(y,x)

ans =

(C*D*cos(C*atan(B*x + E*(atan(B*x) - B*x)))*(B - E*(B - B/(B^2*x^2 + 1))))/((B*x + E*(atan(B*x) - B*x))^2 + 1)


Nun möchte ich die Lösung nach x auflösen. Anders gesagt, möchte ich von der Funktion y die Extremstelle berechnen.

Leider bekomme ich mit dem Befehl solve kein richtiges Ergebnis:

>> solve(((C*D*cos(C*atan(B*x + E*(atan(B*x) - B*x)))*(B - E*(B - B/(B^2*x^2 + 1))))/((B*x + E*(atan(B*x) - B*x))^2 + 1))=0,x)

??? solve(((C*D*cos(C*atan(B*x + E*(atan(B*x) - B*x)))*(B - E*(B - B/(B^2*x^2 + 1))))/((B*x + E*(atan(B*x) - B*x))^2 + 1))=0,x)

Error: The expression to the left of the equals
sign is not a valid target for an assignment.

Wo ist da mein Fehler?
Kann mir einer von euch sagen, wie ich die Extremstelle der langen y-Funktion am besten berechnen kann?


Endi5

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2014, 14:37     Titel: Andere Fehlermeldung
  Antworten mit Zitat      
Hab es nun anders probiert, aber bekomme auch kein Ergebnis raus:

>> f=solve((C*D*cos(C*atan(B*x + E*(atan(B*x) - B*x)))*(B - E*(B - B/(B^2*x^2 + 1))))/((B*x + E*(atan(B*x) - B*x))^2 + 1),x)

Warning: Explicit solution could not be found.

> In solve at 81

f =

[ empty sym ]


Hat einer von euch einen Vorschlag wie man die Extremstelle dieser Funktion in Abhängigkeit der Variablen berechnen kann?

Ich ahne, dass da wohl etwas wüstes rauskommt:)

Gruß
Endi
 
Harald
Forum-Meister

Forum-Meister


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

es scheint keine explizite Lösung zu geben.

Für gegebene D, C, B, E kannst du mit fminunc oder fmincon ein Minimum suchen.

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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.10.2014, 12:31     Titel: Weitere Frage
  Antworten mit Zitat      
Ich habe dazu noch eine andere Frage:

Ich kann aber die erste Ableitung und die Null setzen. Dann fällt der Nenner und ein Teil vom Zähler weg, weil ich auf der rechten Seite die Null stehen habe. Nun hätte ich folgenden Ausdruck der übrig bleibt:

(B*x + E*(atan(B*x) - B*x))*(B - E*(B - B/(B^2*x^2 + 1))=0

Bringe ich den linken Teil der Gleichung auf die andere Seite, bleibt nur noch der rechte Teil übrig:

(B - E*(B - B/(B^2*x^2 + 1))=0

Dann gibt es anscheinend eine Lösung und ich kann mein x daraus ermitteln. Dann würde ich einen Wurzelausdruck bekommen.

Wo habe ich bei meinem Vorschlag den Fehler?
Und wieso sagt dann Matlab das es keine Lösung gibt?

Gruß
Endi
 
Endi5

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.10.2014, 12:35     Titel: Ergänzung zu meiner Frage
  Antworten mit Zitat      
Zur Übersicht habe ich die Ableitung mit einem Formeleditor geschrieben.

Wie könnte ich mit Matlab nun die Extremstelle ausrechnen?

Er sagt zwar es gibt keine Lösung, aber einiges von der Ableitung würde wegfallen.

Kann mir da einer helfen?

Bin für jede Hilfestellung dankbar.

Gruß
Endi

Ableitung.png
 Beschreibung:

Download
 Dateiname:  Ableitung.png
 Dateigröße:  4.23 KB
 Heruntergeladen:  554 mal
 
Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.10.2014, 14:11     Titel: Re: Weitere Frage
  Antworten mit Zitat      
Endi5 hat Folgendes geschrieben:

(B*x + E*(atan(B*x) - B*x))*(B - E*(B - B/(B^2*x^2 + 1))=0

Bringe ich den linken Teil der Gleichung auf die andere Seite,


...machst Du einfach mal potenzielle Lösungen weg.

Was da steht, ist dass entweder der linke, der rechte oder beide Terme gleich null sind. Die kannst Du dann tatsächlich jeden für sich lösen. Den rechten Term kannst Du sogar analytisch lösen, den linken wohl nur numerisch.

Analytisch lösen kannst Du schon, für numerische Lösung hat Harald schon einen Vorschlag gemacht.
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 - 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.