Konzept und Darstellung der nachfolgenden Ergebnisse sind Resultate von durch Studenten ausgeführten Arbeiten - WIR

Differentialgleichungen und harmonischer Oszillator

1. Behandlung des harmonischen Oszillarots mit Differentialgleichungen

Lösen der Differentialgleichung

Remove["Global`*"]

?DSolve

<<Calculus`LaplaceTransform`

?LaplaceTransform

?InverseLaplaceTransform

Beispiel

LaplaceTransform[m y''[t] + k y[t] == 0, t, s]

LaplaceTransform[m y''[t] + k y[t] == 0, t, s] /. 
      LaplaceTransform[y[t], t, s] -> Y[s]

Solve[%, Y[s]]

%[[1]]

%[[1]]

%[[2]]

InverseLaplaceTransform[%, s, t]

Ungedämpfter harmonischer Oszillator

Allgemeine Lösung

Remove["Global`*"]

allgLoes[t_]  :=  
        DSolve[m y''[t] + k y[t] == 0, y[t], 
          t] ;allgLoes[t]

f1[t_] := allgLoes[t][[1, 1, 2]];  f1[t]

Anfangsbedingungen

fy[u_] := f1[t] /. t -> u;   fy[t]

fy[0]

D[fy[t], t]

fy'[t]

fy'[t] /. t -> 0

Eigenfrequenz aus der allgemeinen Lösung

Solve[ω == ((Sqrt[k])/(Sqrt[m])), {k}]

grundGl[
        t_] := (m y''[t] + k y[t] == 0) /. %[[1]];  
    grundGl[t]

Anfangsbedingungen:  t = 0 ==> y[0]= -1, y'[t]=0 (gespannte Ruhe)

resDGL1[t_]:=DSolve[{m (ω^2) y[t]+m y''[t]==0,y[0] == y0,y'[0] == 0},y[t],t];  resDGL1[t]

f2[u_] := resDGL1[t][[1, 1, 
            2]] /. {y0 -> -1, ω -> 1, t -> u};  
    f2[t]

Plot[f2[t], {t, 0, 4  Pi}];

Gedämpfter harmonischer Oszillator

Dämpfungskraft (Federdeformation und Luftwiderstand) proportional zur Geschwindigkeit y'[t] ==> d = μ *  y'[t]

Remove["Global`*"]

grundGlDa[
        t_] := (m y''[t] + k y[t] + μ*y'[t] == 0);  
    grundGlDa[t]

grundGlDa[
        t_] := ((m y''[t] + k y[t] + μ*y'[t])/m == 
          0);  grundGlDa[t]

solv = 
      Solve[{β == μ/(2  m), ω == ((Sqrt[k])/(Sqrt[m]))}, {k, m}] // 
        Flatten

grundGlDaNew[t_] := grundGlDa[t] /. solv  // Simplify;  
    grundGlDaNew[t]

Allgemeine Lösung, Anfangsbedingungen y[0]=y0,  y'[0]=0

Clear[ω,  β]

DGlLoes2[t_]:=DSolve[(ω^2) y[t]+2 β y'[t]+y''[t]==0,y[t],t];  DGlLoes2[t]

f3[u_] := DGlLoes2[t][[1, 1, 2]] /. {t -> u};  
    f3[t]

f3[0]

f3'[t] /. t -> 0

solv1 = 
      Solve[{y0 == 
              f3[0], (0 == f3'[t] /. t -> 0)}, {C[1], 
            C[2]}] // Flatten

f3New[t_] := f3[t] /. solv1;  f3New[t]

Fallunterscheidung!

Unterkritische Dämpfung:  β < ω

Plot[
        Evaluate[{f3New[t],  
              E^-(β t), - 
                E^-(β t)} /. {β -> 
                0.1, ω -> 1, y0 -> -1}], {t, 0, 10 Pi}, 
        PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], RGBColor[0, 1, 0], 
            RGBColor[0, 0, 1]}];

Kritische Dämpfung:  β = ω

Plot[
        Evaluate[{f3New[t]} /. {β -> 0.9999, ω -> 1, 
              y0 -> -1}], {t, 0, 10 Pi}, PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], 
            RGBColor[0, 1, 0]}];

Ueberkritische Dämpfung:  β > ω

Plot[
        Evaluate[{f3New[t]} /. {β -> 4, ω -> 1, 
              y0 -> -1}], {t, 0, 10 Pi}, PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], 
            RGBColor[0, 1, 0]}];

Animation, β variabel

Gehe in "Cell",  
    wähle "animate selected graphics"

Do[
        Plot[Evaluate[{f3New[t]} /. {ω -> 1, 
                y0 -> -1}], {t, 0, 10 Pi}, PlotRange -> All, 
          PlotStyle -> {RGBColor[1, 0, 0], 
              RGBColor[0, 1, 0]}], {β, 0, 1.5, 0.15}];

Von aussen angeregter harmonischer Oszillator

Anregungsfunktion h[t]

Remove["Global`*"]

Sei z.B.  h[t] = sin[t]

h[t_] := Sin[ω0 * t]

grundGlAn[
        t_] := (m y''[t] + k y[t] + μ*y'[t] == 
          h[t]);  grundGlAn[t]

grundGlAn[
        t_] := ((m y''[t] + k y[t] + μ*y'[t])/m == 
          h[t]/m);  grundGlAn[t]

solv = 
      Solve[{β == μ/(2  m), ω == ((Sqrt[k])/(Sqrt[m]))}, {k, m}] // 
        Flatten

grundGlAnNew[t_] := grundGlAn[t] /. solv  // Simplify;  
    grundGlAnNew[t]

Allgemeine Lösung, Anfangsbedingungen y[0]=y0,  y'[0]=0

Clear[ω,  β]

DGlLoes3[t_]:=DSolve[(ω^2) y[t]+2 β y'[t]+y''[t]==((2 β Sin[ω0*t])/μ),y[t],t]//Simplify;  DGlLoes3[t]

f4[u_] := DGlLoes3[t][[1, 1, 2]] /. {t -> u};  
    f4[t]

f4[0]

f4'[t] /. t -> 0

solv2 = 
      Solve[{y0 == 
              f4[0], (0 == f4'[t] /. t -> 0)}, {C[1], 
            C[2]}] // Flatten

f4New[t_] := f4[t] /. solv2 ;  f4New[t]

f4New[t_] := f4[t] /. solv2  // Simplify;  f4New[t]

Solve[(ω^4) + 4 (β^2) ω(0^2) - 
          2 (ω^2) ω(0^2) + ω(0^4) == 
        0, ω0]

((ω^4) + 4 (β^2) ω(0^2) - 
            2 (ω^2) ω(0^2) + ω(0^4) == 
          0) /. ω -> ω0

ω = ω0: Resonanz  ==>   Fallunterscheidung!

Unterkritische Dämpfung mit Anfangsauslenkung

Plot[
        Evaluate[{f4New[t]} /. {β -> 0.1, ω -> 
                1, ω0 -> 2, 
              y0 -> -1, μ -> 1}], {t, 0, 20 Pi}, 
        PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], RGBColor[0, 1, 0], 
            RGBColor[0, 0, 1]}];

Unterkritische Dämpfung ohne Anfangsauslenkung

Plot[
        Evaluate[{f4New[t]} /. {β -> 0.1, ω -> 
                1, ω0 -> 2, y0 -> 0, μ -> 1}], {t, 
          0, 20 Pi}, PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], RGBColor[0, 1, 0], 
            RGBColor[0, 0, 1]}];

Unterkritische Dämpfung

Plot[
        Evaluate[{f4New[t]} /. {β -> 4, ω -> 
                1, ω0 -> 2, y0 -> 0, μ -> 1}], {t, 
          0, 10 Pi}, PlotRange -> All, 
        PlotStyle -> {RGBColor[1, 0, 0], RGBColor[0, 1, 0], 
            RGBColor[0, 0, 1]}, PlotPoints -> 50];

Resonanzfall ω  = ω0

Plot[
        Evaluate[{f4New[t]} /. {β -> 0.001, ω -> 
                1, ω0 -> 1.000001, 
              y0 -> 0, μ -> 1}], {t, 0, 20 Pi}];

Animation: Harmonischer Oszillator mit Dämpfung

Anregungsfunktion h[t]

Remove["Global`*"]

grundGlDa[
        t_] := ((m y''[t] + k y[t] + μ*y'[t])/m == 
          0);  grundGlDa[t]

solv = 
      Solve[{β == μ/(2  m), ω == ((Sqrt[k])/(Sqrt[m]))}, {k, m}] // 
        Flatten

grundGlDaNew[t_] := grundGlDa[t] /. solv  // Simplify;  
    grundGlDaNew[t]

grundGlDaNew[t][[1]]

DGlLoes6[t_]:=DSolve[(ω^2) y[t]+2 β y'[t]+y''[t]==0,y[t],t];  DGlLoes6[t]

f6[u_] := DGlLoes6[t][[1, 1, 2]] /. {t -> u};  
    f6[t]

solv3 = 
      Solve[{y0 == 
              f6[0], (0 == f6'[t] /. t -> 0)}, {C[1], 
            C[2]}] // Flatten

f6New[t_] := f6[t] /. solv3;  f6New[t]

f7[t_] := 
      Re[f6New[t] /. {β -> 0.3, ω -> 3, 
            y0 -> -1, u -> t}];  f7[t]

Plot[f7[t], {t, 0, 10}, PlotRange -> All];

Graphic-Primitives

masse[y_, s_] := 
        Rectangle[{-s/2, -s/2 + y}, {s/2, 
            s/2 + y}];
feder[y_, y0_, n_, s_] := 
      Line[Table[{Sin[Pi/2 *j] 
              Sqrt[(s/2)^2 - ((y0 - y)/n)^2], -(y0 - y)/
                  n *j + y0}, {j, 0, n}]]

masse[y, s]

feder[f7[t], y0, 3, s]

Plot-Serie: Klicke danach auf "Animate Selected Graphics" in "Cell"!

Show[
        Graphics[masse[Evaluate[f7[5]], 0.2], 
          PlotRange -> {{-0.2, 0.2}, {-1, 1}}, Axes -> True, 
          Ticks -> False, AspectRatio -> Automatic], 
        Graphics[feder[Evaluate[f7[5]] + 0.1, 1, 40, 0.2]]];

sowtab[t_] := 
      Show[Graphics[masse[f7[t], 0.2], 
          PlotRange -> {{-0.2, 0.2}, {-1, 1}}, Axes -> True, 
          Ticks -> False, AspectRatio -> Automatic], 
        Graphics[feder[f7[t] + 0.1, 1, 40, 0.2]]]; sowtab[5];

Table[sowtab[n], {n, 0, 10, 0.1}];

Uebersicht

Plot-Serie: Klicke danach auf "Animate Selected Graphics" in "Cell"!

Show[
        GraphicsArray[
          Partition[
            Table[Evaluate[
                Graphics[ masse[f7[t], 0.2], 
                  PlotRange -> {{-0.2, 0.2}, {-1, 1}}, 
                  Axes -> True, Ticks -> False, 
                  AspectRatio -> Automatic]], {t, 0, 10, 0.1}], 
            90]]];

Show[
        GraphicsArray[
          Partition[
            Table[Evaluate[
                Graphics[ masse[f7[t], 0.2], 
                  PlotRange -> {{-0.2, 0.2}, {-1, 1}}, 
                  Axes -> True, Ticks -> False, 
                  AspectRatio -> Automatic]], {t, 0, 10, 0.1}], 
            30]]];