|
|
nichtlineare Gleichungen loesen (Winkel updaten) |
|
AJM |
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.07.2012, 17:33
Titel: nichtlineare Gleichungen loesen (Winkel updaten)
|
|
Hi,
ich habe ein Programm, dass mir den Winkel alpha mittels Integration berechnet.
Nun möchte ich aus Ausgabegründen auch noch die Winkel beta und gamma haben die folgendermassen berechnet werden können:
Was ist eine gute Möglichkeit damit mir matlab auch noch die Winkel gamma und beta in Abhängigkeit von alpha ausrechnet?
Leider kann ich ja die beiden Gleichungssysteme nicht so auflösen, dass dort steht beta = und gamma =
Vielen Dank
|
|
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 19.07.2012, 19:06
Titel:
|
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.07.2012, 19:24
Titel:
|
|
Hi Marc,
ich kann dir noch nicht ganz folgen, wenn ich beide Gleichungen addiere/subtrahiere habe ich immer cos+sin bzw cos-sin was ich dann umschreiben kann in sqrt(2) sin(π/4+x) inwiefern hilft mir das weiter? bzw warum habe ich nach dem addieren/subtrahieren unabhängige Gleichungen?
lg und danke
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 19.07.2012, 20:00
Titel:
|
|
Das ganze hat den Sinn, dass du 2 verschiedene Ausdrücke hast. Irgendwas mit sin(beta) und was mit sin(gamma). Das führt dazu, dass du das System wie ein lineare System behandeln kannst.
Die Ausgangsgleichung hat vier verschiedene Ausdrücke: sin(beta), cos(beta) und sin(gamma), cos(gamma).
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.07.2012, 21:19
Titel:
|
|
Tut mir leid aber komplett dahintergestiegen bin ich noch immer nicht.
Nach der Umformung kommt man auf:
wobei e und f den alpha und l0 Ausdruck enthalten, da dieser ja durch Integration gewonnen werden kann.
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 20.07.2012, 09:56
Titel:
|
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.07.2012, 11:06
Titel:
|
|
sehe ich auch so, deswegen wäre meine Überlegung auch, das ganze numerisch zu lösen, sprich einmal eine implizite Funktion nur von gamma abhängig diese mit fzero lösen und dann in die 2. Gleichung die explizit in der Form beta = steht einsetzen....
Was halst du davon? Das Problem sind wohl numerische Fehler, die Frage ist nur wie viel Rechenaufwand mich die analytische Lösung kostet?!
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 20.07.2012, 12:14
Titel:
|
|
Das Problem sind nicht die Rechenfehler. Diese sind immer unter eine Schranke drückbar. Das Problem ist die Tatsache, dass es unendlich viele Lösungen gibt. Die Frage ist also, welche Lösung oder welche Lösungen man nehmen muss. Es muss dafür eine Umgebung definiert werden, die es ermöglicht eine Teilmenge des Lösungsraumes zu identifizieren.
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.07.2012, 12:23
Titel:
|
|
MaFam hat Folgendes geschrieben: |
Das Problem sind nicht die Rechenfehler. Diese sind immer unter eine Schranke drückbar. Das Problem ist die Tatsache, dass es unendlich viele Lösungen gibt. Die Frage ist also, welche Lösung oder welche Lösungen man nehmen muss. Es muss dafür eine Umgebung definiert werden, die es ermöglicht eine Teilmenge des Lösungsraumes zu identifizieren. |
Hi koenntest du das noch etwas genauer spezifizieren?
Das ist das Modell das ich simulieren möchte. alpha, sprich den Antriebswinkel berechnet mir matlab über das lösen einer Gleichung und daraus kann man über die Gleichungen ja auch beta und gamma berechnen.
Es kann ja nicht unendlich viele Lösungen geben, da es zu jedem alpha nur genau eine Stellung gibt die das System einnehmen kann.
Danke
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 20.07.2012, 13:10
Titel:
|
|
Gut, dann lass uns doch mal die numerische Kanone abfeuern. Hast du konkrete Werte für die l_i?
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.07.2012, 13:20
Titel:
|
|
die werte werden vorher definiert:
aber du kannst einsetzen was du willst solange grundlegende Bedingungen erfüllt sind. Ich schlag mal werte vor:
% Damit Kurbelschwinge sich drehen kann muss gelten:
% l1 +2(l2-l0) = l3
varalpha = 0;
dvaralpha = 0;
g = 9.81;
m1 = 15;
m2 = 21;
m3 = 2;
l1 = 3;
l2 = 7;
l3 = 5;
l0 = 6;
duration = 30;
fps = 60;
Mtorq = 0;
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 20.07.2012, 14:25
Titel:
|
|
Ich habe mal was probiert, allerdings mit Octave. Das funktioniert leider nicht. Vielleicht aber unter Matlab. Du kannst es ja mal versuchen.
Dann das ganze aufrufen und mit fsolve lösen:
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 21.07.2012, 09:59
Titel:
|
|
Guten Morgen,
So klappt es schon mal. Ich poste heute noch eine analytische Lösungsvariante.
Grüße, Marc
|
|
|
AJM |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 01.07.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.07.2012, 19:43
Titel:
|
|
Hi,
ich habe es mit fsolve schon gelöst.
Leider hast du recht und die Lösung ist nicht eindeutig. Mit den richtigen Anfangswerten (siehe code oben) kommt man auf die richtige Lösung für das System. Es sollte aber auch möglich sein, das ganze Anfangswertunabhaengig aufzubauen, aber da werde ich mich mal genau nächste Woche einlesen müssen. Vielen Dank dir auf jedenfall!
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 26.07.2012, 17:01
Titel: Re: nichtlineare Gleichungen loesen (Winkel updaten)
|
|
Hallo!
Ein wenig verspätet, aber hier die analytische Lösung zu:
Es gelten für die beiden Bedingungen.
,
so dass der 2-pi-periodige Winkel eindeutig bestimmt ist.
Weiterhin sei mit . Dieses y kann man in eine der Ausgangsgleichungen einsetzen.
Grüße, Marc
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
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 - 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.
|
|