function Schwinger(d)
% Die Funktion Schwinger plottet den Weg-Positions-Graph eines
% gedämpften Einmassenschwingers mit variabler Dämpfung. Als
% Randbedingungen gelten x(t=0) = 1m (Anfangsauslenkng von einem Meter) und
% x'(t=0) = 0 (die Masse bewegt sich am Anfang des Vorgangs nicht).
% Als Argument muss die gewünschte Dämpfung in 1/s^2 übergeben werden.
% Diese Dämpfung muss 0 < d < 20 sein !

c = 100;    % Federsteifigkeit 100 N/m
m = 1;      % Masse 1 kg

% Eigenwerte der homogenen DGL berechnen
lamda1 = -(d/(2*m))+sqrt((d/(2*m))^2-(c/m));
lamda2 = -(d/(2*m))-sqrt((d/(2*m))^2-(c/m));
% Konstanten aus Randbedingungen für x(t=0) = 1 m und x'(t=0) = 0
C1 = -(lamda2/(lamda1-lamda2));
C2 = 1/(1-(lamda2/lamda1));
% Zeitvektor erzeugen
t = 0:0.01:10;
% Lösungsvektor erzeugen
% Als Lösung der Bewegungsgleichungen ergeben sich komplexe Zahlenwerte, da
% beide lambda im allgemeinen komplexe Zahlen sind. Aufgrund der Art der
% Lösung verschwindet jedoch der komplexe Teil der Lösung (er kürzt 
% sich heraus)! Wegen möglicher Fließkommaungenauigkeiten verschwindet bei
% der Berechnung mit MatLab der komplexe Teil der Lösung nicht immer ! 
% Aus diesem Grund wird hier nur der Realteil der Lösung betrachtet (real()).
x = real(C1*exp(lamda1.*t)+C2*exp(lamda2.*t));
% plot erzeugen und beschriften
plot(t,x);
xlabel('Zeit t in Sekunden');
ylabel('Auslenkung in Metern');