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

Gleichung auflösen nach Winkel

 

TmW
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 16.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2013, 17:57     Titel: Gleichung auflösen nach Winkel
  Antworten mit Zitat      
Hallo,

ich möchte eine Gleichung nach einem Winkel auflösen, der innerhalb der Gleichung in trigonometrischen Funktionen (sin,cos,...) verwendet wird. Hierzu habe ich die solve Funktion angewendet und bekomme dabei einen komplexen Winkel im Bogenmaß. Allerdings bräuchte ich den Winkel für die weiteren Berechnung im Gradmaß. Rechne ich den Winkel durch *pi/180 ins Gradmaß um, bleibt er komplex und ich kann damit nicht weiterrechnen, da sind, cosd, ... im weiteren Berechnungsverlauf nicht mit komplexen Argumenten umgehen können. Verwende ich andererseits in der aufzulösenden Gleichung sind, cosd, ... kann die Gleichung nicht aufgelöst werden.

Kann mir an dieser Stelle jemand weiterhelfen? Vielleicht auch mit einem ganz anderen Ansatz!?

Gruß,
TmW
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


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

wenn solve einen komplexwertigen Winkel zurückgibt, liegt die Vermutung nahe, dass es keine reellwertige Lösung gibt. Genaueres kann man aber nur dazu sagen, wenn du das konkrete Problem postest.

Ich würde es ansonsten mit numerischen Lösern (fzero, fsolve) versuchen.

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

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 16.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.07.2013, 08:32     Titel:
  Antworten mit Zitat      
Dies nun ist die besagte Gleichung, die Konstanten sind normalerweise feste Zahlenwerte, x ist die Variable, nach der ich auflösen möchte. (das Ergebnis poste ich hier nicht, es ist zu umfangreich)

Code:

solve('cos(x)*(a + b + sin(x - 5)*(c - d) + cos(x - 5)*(a + e*cos(f - 5) + b*cos(x - 5) + g*sin(x - 5) - w*sin(x - 5) - a*cos(x - 5)) - sin(x - 5)*(h + k)) + sin(x)*(w - g - cos(x - 5)*(c - d) + sin(x - 5)*(a + e*cos(f - 5) + b*cos(x - 5) + g*sin(x - 5) - w*sin(x - 5) - a*cos(x - 5)) + cos(x - 5)*(h + k)) - e*cos(f)=z','x')
 


Unter Vorgabe bestimmter Konstanten und eines Wertes für x weiß ich, dass die Gleichung auch nicht komplex zu lösen ist. Und auch allgemein sollte die Gleichung nicht komplex zu lösen sein, da es sich hierbei um ein geometrisches Problem handelt. Deswegen verwundert mich nun das 'komplexe' Ergebnis für x.

Kann mir nun jemand weiterhelfen?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

Zitat:
die Konstanten sind normalerweise feste Zahlenwerte

Ein Beispiel wäre hilfreich.

Zitat:
Das Ergebnis poste ich hier nicht, es ist zu umfangreich.

Ist ja bei der Länge der Gleichung auch nicht weiter verwunderlich. Und genau deswegen würde ich wie gesagt einen numerischen Löser versuchen. Hast du das schon ausprobiert?

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

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 16.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.07.2013, 09:05     Titel:
  Antworten mit Zitat      
Einen numerischen Solver habe ich noch nicht ausprobiert, allerdings habe ich das Prinzip des numerischen Solvers auch noch nicht ganz nachvollziehen können.
Wie würde ich das auf dieses Beispiel übertragen? Müsste ich einen bestimmten Startwert vorgeben und ausgehend von diesem wird dann das genaue Ergebnis ermittelt?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

Zitat:
Wie würde ich das auf dieses Beispiel übertragen?

Code:
% Definiere die anderen Variablen
f = @(x) cos(x)*(a + b + sin(x - 5)*(c - d) + cos(x - 5)*(a + e*cos(f - 5) + b*cos(x - 5) + g*sin(x - 5) - w*sin(x - 5) - a*cos(x - 5)) - sin(x - 5)*(h + k)) + sin(x)*(w - g - cos(x - 5)*(c - d) + sin(x - 5)*(a + e*cos(f - 5) + b*cos(x - 5) + g*sin(x - 5) - w*sin(x - 5) - a*cos(x - 5)) + cos(x - 5)*(h + k)) - e*cos(f) - z;
fzero(f, x0)


Zitat:
Müsste ich einen bestimmten Startwert vorgeben und ausgehend von diesem wird dann das genaue Ergebnis ermittelt?

So kann man's sagen, ja.

Bitte gehe doch auf alle Teile der Antwort ein. Ich würde es ja gerne für dich ausprobieren, ob man vernünftige x bekommt, aber ohne Zahlenwerte geht das schlecht.

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