Gelöste Aufgaben/ODE1: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 25: | Zeile 25: | ||
|text=Wir nehemn an: das Massenmoment des homogenen Stabes bzgl. ''A'' ist ''J<sub>A</sub>'', der Schwerpunkt des Stabes liegt in seiner Mitte. | |text=Wir nehemn an: das Massenmoment des homogenen Stabes bzgl. ''A'' ist ''J<sub>A</sub>'', der Schwerpunkt des Stabes liegt in seiner Mitte. | ||
|code= | |code= | ||
<syntaxhighlight lang="lisp" line start=1> | |||
/*******************************************************/ | /*******************************************************/ | ||
/* MAXIMA script */ | /* MAXIMA script */ | ||
Zeile 33: | Zeile 34: | ||
/* description: solve the IVP, check for stability */ | /* description: solve the IVP, check for stability */ | ||
/*******************************************************/ | /*******************************************************/ | ||
</syntaxhighlight> | </syntaxhighlight> | ||
}} | }} | ||
Zeile 105: | Zeile 105: | ||
==== Für φ<sub>1</sub> = 0 (= 2π ): ==== | ==== Für φ<sub>1</sub> = 0 (= 2π ): ==== | ||
Der [[Anfangswertprobleme/Methoden zur Lösung von Anfangswertproblemen/Integration der Differentialbeziehung (IVP) | Der [[Anfangswertprobleme/Methoden zur Lösung von Anfangswertproblemen/Integration der Differentialbeziehung (IVP)|<math>e^{\lambda\;t}</math>]] -Ansatz liefert | ||
::<math>\lambda_1^2 = -1\text{ also } \lambda_1=\pm j\cdot\omega</math>, | ::<math>\lambda_1^2 = -1\text{ also } \lambda_1=\pm j\cdot\omega</math>, | ||
also eine Schwingungslösung. Diese Lösung ist | also eine Schwingungslösung. Diese Lösung ist damit nicht instabil (weil wir keine Energiedissipation eingebaut haben, klingt sie aber auch nicht ab). | ||
==== Für φ<sub>3</sub> = π): ==== | ==== Für φ<sub>3</sub> = π): ==== |
Aktuelle Version vom 1. April 2021, 10:52 Uhr
Aufgabenstellung
Hier untersuchen wir systematisch ein System aus einem starren Pendel im Erdschwerefeld.
Gesucht sind Gleichgewichtslagen, Schwingungen um diese und die numerische Lösung der nichtlinearen Bewegungsgleichung.
Lösung mit Maxima
Header
Wir nehemn an: das Massenmoment des homogenen Stabes bzgl. A ist JA, der Schwerpunkt des Stabes liegt in seiner Mitte.
/*******************************************************/
/* MAXIMA script */
/* version: wxMaxima 15.08.2 */
/* author: Andreas Baumgart */
/* last updated: */
/* ref: TM-C */
/* description: solve the IVP, check for stability */
/*******************************************************/
Declarations
Aus dem Prinzip der virtuellen Verrückungen kommt die Gleichgewichtsbeziehung für den Stab:
- ,
wobei
- .
Mit der neuen, dimensionslosen Zeit
wird aus der Bewegungsgleichung
- .
/* parameter */
params: [t[Bez]^2=J/(m*g*l/2)];
/* dimensionless equations of motion */
ode: J*'diff(phi,tau,2)/t[Bez]^2+m*g*l/2*sin(phi)=0;
ode: expand(subst(params,ode*(t[Bez]^2/J)));
Equilibrium Conditions
Die Gleichung
ist erfüllt für
Die Funktion der Rückstell'kraft' sin(φ) schneidet die y-Achse dabei mit der Steigung +1 (z.B. bei φ1 = 0, φ3 = 2π) und mit der Steigung -1 (z.B. bei φ2 = π).
Das Vorzeichen der Steigung wird über die Stabilität der Lösung entscheiden!
/* static equilibrium conditions ....*/
plot2d(lhs(subst(['diff(phi,tau,2)=0],ode)),
[phi,-0.2,2*%pi+0.2], [title, "Rückstell'kraft'"],
[y,-1.1,1.1], [xlabel, "φ→"], [ylabel, "sin(φ)→"])$
Stability of Equilibrium Positions
Die Stabilität jeder Gleichgewichtsbedingung "im Kleinen" - also in unmittelbarer Umgebung der Gleichgewichtslage - untersuchen wir am linearisierten System.
Die Taylor-Reihenentwicklung um die Gleichgewichtslagen φi herum liefert
Dies ist Ausgangspunkt für unsere Stabilitätsanalyse:
Für φ1 = 0 (= 2π ):
- ,
also eine Schwingungslösung. Diese Lösung ist damit nicht instabil (weil wir keine Energiedissipation eingebaut haben, klingt sie aber auch nicht ab).
Für φ3 = π):
Analog ist
- ,
mit einer exponential abklingenden (λ2=-1) und einer exponential aufklingenden (λ2=+1) Lösung. Dieser zweite Anteil der Lösung macht sie instabil.
/* stability in proximity of equilib. conditions */
linode : taylor (ode, phi, Phi, 1);
Solving
Das nichtlineare Anfangswertproblem lösen wir durch numerische Integration.
Dafür müssen wir die Bewegungsgleichung als gewöhnliche Differentialgleichung (ODE) erster Ordnung schreiben, also mit
als
- .
Diese Bewegungsgleichung lösen wir mit den Anfangsbedingungen
- .
und das für verschiedene Anfangsgeschwindigkeiten y1.
In der Nähe der stabilen Lösung finden wir periodische Lösungen:
Mit mehr "Anschwung" dreht die Stange "durch", die Lösung ist nicht mehr periodisch:
/* solve initial value problem */
dudt : [omega,rhs(solve(dgl,'diff(phi,tau,2))[1])];
time : [ t, 0, 10, 0.01 ];
u0: [[0,0.6],[0,1.8],[0,2.2]];
u : [phi,omega];
samples : [];
for i:1 thru length(u0) do
(set : rk (dudt, u, u0[i], time ),
set : [makelist(set[j][1],j,1,length(set)),
makelist(set[j][2],j,1,length(set)),
makelist(set[j][3],j,1,length(set))],
samples : append(samples, set),
headline : [title, simplode(["u0 = ",u0[i]])],
plot2d([[discrete,set[1],set[2]],
[discrete,set[1],set[3]]],
headline, [legend, "φ","ω"],
[xlabel, "τ→"],[ylabel, "φ,ω→"]))$
Post-Processing
Diese Ergebnisse können wir im Phasendiagramm (Geschwindigkeit über der Auslenkung) auftragen.
/* phase diagram*/
toPlot : makelist([discrete,samples[3*(i-1)+2],
samples[3*(i-1)+3]],i,1,length(u0))$
plot2d(toPlot, [x,-%pi,+%pi], [legend, false],
[title, "phase-diagram"],
[xlabel, "φ→"],[ylabel, "ω→"])$
Links
- ...
Literature
- ...