DDBanner02

Zur Startseite

TM-aktuell
Aufgaben zur Kinematik und Kinetik und den Prinzipien der Mechanik

Festlegung des Null-Potenzials für das Aufschreiben der potenziellen EnergieDie Bewegungsdifferenzialgleichung

Bewegungsdifferenzialgleichung für das System der Aufgabe 29-12, nach der Beschleunigung aufgelöst

wird durch Einführen einer neuen Variablen für die Geschwindigkeit zu einem Differenzialgleichungssystem 1. Ordnung:

Bewegungsdifferenzialgleichungssystem 1. Ordnung

Die für die Aufgabenstellung c benötigte Beziehung für die Gesamtenergie des Systems wird unter der Annahme formuliert, dass das Null-Potenzial (willkürlich) in Höhe des Mittelpunktes der Walze in der Ausgangslage festgesetzt wird:

Gesamtenergie im System in Abhängigkeit von der Lage x

Das nachfolgende Matlab-Script realisiert die Berechnung sowohl mit dem Runge-Kutta-Verfahren 4. Ordnung als auch mit der Matlab-ode45-Function.

% Aufgabe 29-12: Walze mit Feder gefesselt auf schiefer Ebene
%
% Die Function arbeitet mit den Standard-Einstellungen
%
%  Masse der Walze  m   = 50 kg,
%  Anfangslage      xanf =  0 m .
%
% Beide Werte koennen beim Aufruf (aus dem Command Window) veraendert
% werden, z. B.:
%
%  Aufg29_12 (41)     arbeitet mit m = 41 kg  und xanf = 0 m.
%  Aufg29_12 (50,0.25) arbeitet mit m = 50 kg  und xanf = 0,25 m.

function Aufg29_12 (mym , myxanf)

global m c alpha b g
c = 12000 ; alpha = pi/6 ; b = 0.8 ; g = 9.81 ;

if nargin > 0  m   = mym    ; else m    = 50 ;  end
if nargin > 1  xanf = myxanf ; else xanf = 0 ;  end

tanf = 0 ; tend = 10 ; vanf =  0 ;     % Integrationsintervall, Anfangswert
    
% Runge-Kutta-Algorithmus --------------------------------------------------
nRK = 2000                             % Anzahl der Runge-Kutta-Schritte
[t xv] = rk4 (@BewDglFederWalze , [tanf tend] , [xanf vanf] , nRK) ;
% Runge-Kutta-Algorithmus --------------------------------------------------

% MATLAB-ode45-Solver mit MaxStep-Option -----------------------------------
maxstep  = 0.01 
options  = odeset ('MaxStep' , maxstep) ;
[to xvo] = ode45 (@BewDglFederWalze , [tanf tend] , [xanf vanf] , options) ;
% MATLAB-ode45-Solver mit MaxStep-Option -----------------------------------

x  = xv (:,1) ;                          % Sortieren der Ergebnisse:
v  = xv (:,2) ;                          % Spalte 1: x, Spalte 2: v
xo = xvo(:,1) ;                          % Sortieren der Ergebnisse:
vo = xvo(:,2) ;                          % Spalte 1: xo, Spalte 2: vo

xEndRK   = x(end)
vEndRK   = v(end)
xEndode45 = xo(end)
vEndode45 = vo(end)

Lc       = sqrt(b^2+x.^2-2*b*x*sin(alpha)) ;
TgesRK   = 0.75*m*v.^2 - m*g*x*sin(alpha) + 0.5*c*(Lc-b).^2 ;
Lcode45  = sqrt(b^2+xo.^2-2*b*xo*sin(alpha)) ;
Tgesode45 = 0.75*m*vo.^2 - m*g*xo*sin(alpha) + 0.5*c*(Lcode45-b).^2 ;

subplot(3,1,1) , plot(t , x , to , xo , '-r') ; grid on ,
title('Weg-Zeit-Gesetz') , ylabel('x') , xlabel('t') ;
subplot(3,1,2) , plot(t , v , to , vo , '-r') ; grid on ,
title('Geschwindigkeits-Zeit-Gesetz') , ylabel('v') , xlabel('t') ;
subplot(3,1,3) ,
plot(t , TgesRK , to , Tgesode45 , '-r') ;
title('Gesamtenergie') , ylabel('Tges') , xlabel('t') ;
legend ('Runge-Kutta 4. Ordnung', 'MATLAB-ode45' , 3) ;

% =========================================================================
function xvp = BewDglFederWalze (t , xv)

global m c alpha b g

x = xv(1) ;                % Input-Werte kommen in
v = xv(2) ;                % einem Vektor an.

Lc = sqrt(b^2+x^2-2*b*x*sin(alpha)) ;
cb = (x-b*sin(alpha))/Lc ;
Fc = c*(Lc-b) ;

xp = v ;                               % Die beiden Differenzialgleichungen
vp = (m*g*sin(alpha)-Fc*cb)/(1.5*m) ;  % werden ausgewertet, ...

xvp = [xp ; vp] ;  % ... die Ergebnisse werden in einem Vektor abgeliefert.

Aufgabenstellung a:

Die graphischen Darstellung der Bewegungsgesetze für die Bewegung der Masse  m = 40 kg ist nachfolgend links zu sehen, für die Bewegung der Masse m = 50 kg rechts:

Bewegungsgesetze für die Masse m = 40 kg     Bewegungsgesetze für die Masse m = 50 kg

Für  m = 40 kg ergibt sich nur eine Schwingung mit kleinem Ausschlag, eine Masse  m = 50 kg dagegen kann sich an der Stelle, an der die Feder besonders stark zusammengedrückt wird, "vorbeidrängeln" und führt eine Schwingung mit recht großer Maximalauslenkung aus. Wenn die Auslenkung x und die Geschwindigkeit v am Ende des Zeitintervalls mit drei Stellen Genauigkeit als Kriterien für ausreichend feine Diskretisierung verwendet werden, hat man für  m = 40 kg ab 400 Runge-Kutta-Schritten bzw. mit maxstep=0,05 stabile Ergebnisse, für  m = 50 kg erst ab 2000 Runge-Kutta-Schritten bzw. mit maxstep=0,01.

Bewegungsgesetze für die Masse m = 41 kg

Aufgabenstellung b:

Eine Masse m = 41 kg schafft es gerade so mit großer Mühe, sich an der kritischen Stelle "vorbeizudrängeln" (eine Masse m = 40,99 kg schafft es schon nicht mehr), wobei die Geschwindigkeit jeweils für etwa 1 s annähernd Null ist (nebenstehende Graphik). Dies ist numerisch sehr kritisch, deshalb werden für stabile Ergebnisse wesentlich mehr Integrationsschritte benötigt als für  m = 40 kg. Ab 3000 Runge-Kutta-Schritten bzw. ab maxstep=0,005 sind aber auch für diesen Fall die Ergebnisse stabil.

 

Aufgabenstellung c:

Die graphische Ausgabe der oben angegebenen Funktion für die Gesamtenergie, die im gesamten Bereich konstant bei Null liegen müsste (weil das Null-Potenzial auf die Höhe der Ausgangslage gelegt wurde und dort auch die kinetische Energie Null ist), zeigt nur sehr kleine Abweichungen. Allerdings sieht man sehr deutlich, dass die Abweichungen in den Bereichen großer Koordinaten- und Geschwindigkeitsänderungen liegen. Mit Skepsis muss man jedoch für eine Rechnung über ein größeres Zeitintervall einen Verlauf betrachten, wie er nebenstehend für die Runge-Kutta-Rechnung zu sehen ist: Wenn nach jedem "Störungsbereich" die Gesamtenergie kleiner wird, dann kann das nicht sehr lange gut gehen.

 

Aufgabenstellung d:

Die Rechnungen mit den Anfangsbedingungen x1 bzw. x3 zeigen Schwingungen mit extrem kleinen Ausschlägen (nachfolgende Graphiken links und rechts). Dies liegt daran, dass trotz der vielen angegebenen Stellen die Werte doch noch geringfügig gerundet sind, so dass ganz kleine Abweichungen von der statischen Gleichgewichtslage zu den Bewegungen führen. Es wird aber dadurch auch bestätigt, dass diese statischen Gleichgewichtslagen stabil sind: Bei stabilem Gleichgewicht führen kleine Störungen zu einer Rückkehr in die Gleichgewichtslage.

Anders ist die Situation bei der Anfangsbedingung x2 (nachfolgend die mittlere Graphik): Hier bleibt die Masse etwa 8 s scheinbar in Ruhe, um danach die Gleichgewichtslage zu verlassen. Diese Gleichgewichtslage ist instabil.

    

Walze auf schiefer EbeneDas oben gelistete MATLAB-Script steht als Aufg29_12.m, die Function rk4 als rk4.m zum Download zur Verfügung.

Ein Script, das die Bewegung mit einer kleinen Animation verdeutlicht, steht als Aufg29_12Ani.m zur Verfügung. Dieses benötigt zusätzlich die beiden Function Files SpringCoords.m und CylCoords.m.

Zur Übersicht der Aufgaben zur Kinematik und Kinetik und den Prinzipien der Mechanik

www.DankertDankert.de

TM1-Aufgaben TM2-Aufgaben
TM3-Aufgaben TM3-Aufgaben