dh-Materialien Einführung in Maple    Anwendungen
|  Home  |  Back  |  <   >  |

Mathematik
 

Einführung in Maple
  Hinweise
  Übersicht
  Übungen
  Anwendungen
  Stichworte
  Download
 

Die Kettenlinie

restart;

Differentialgleichung der Kettenlinie ( Herleitung):

dgl:= Diff(f(x),x,x) = c*sqrt(1+ Diff(f(x),x)^2):
dgl;

Differentialgleichung der Kettenlinie

 Lösung dieser Differentialgleichung:

dsolve (dgl, f(x));

Lösung der DGL

Gleichung der Kettenlinie:

y:= 1/c*cosh(c*(x+a)) + b:
'y' = y;

y = cosh(c*(x+a))/c + b

Dieselbe Gleichung in Exponentialschreibweise:

'y' = convert (rhs(%), exp);

Gleichung in Exponentialschreibweise

Die Länge einer Kurve im x-y-Diagramm mit y = f(x) in den Grenzen von l und r:

len:= Int(sqrt(1 + Diff(f(x),x)^2), x = l..r);

Kurvenlänge

Die Länge einer Kettenlinie zwischen zwei Punkten (l|f(l)) und (r|f(r)):

f:= x -> 1/c*cosh(c*(x+a))+b;
len:= value(len);

Länge einer Kettenlinie

Vereinfachen des Integranden:

simplify ((1+sinh(c*(x+a))^2)^(1/2));

simplify

Berechnung der Kettenlinienlänge L in Abhängigkeit von l, r, c und a:

L:= int(cosh(c*(x+a)), x = l..r);
L:= unapply (L, l, r, c, a);

Kettenlinienlänge

L(l,r,c,a)

Die Differenz der y-Werte zweier gegebener Punkte auf einer Kettenlinie:

Delta:= subs (x = r, y) - subs (x = l, y);
Delta:= unapply (Delta, l, r, c, a);

Delta

Hilfsprozedur:

change:= proc (n)
           if n = 1 then n = 2; fi;
           if n = 2 then n = 1; fi;
           n;
         end:

Berechnung der Kettenlinie bei vorgegebener Kettenlänge lng und zwei gegebenen Punkten (l|yl) und (r|yr):

catenary:= proc (l, yl, r, yr, lng)
              local xdf, ydf, lsgn, n, a, c, b;
              xdf:= r - l;
              ydf:= yr - yl;
              if evalf(sqrt(xdf^2 + ydf^2)) < lng then
                lsgn:= (solve (ydf = Delta(l, r, c, a), a));
                n:= 1;
                a:= lsgn[n];
                c:= fsolve (lng = L(l, r, c, a), c);
                if c < 0 then n:= change (n);
                  a:= lsgn[n];
                  c:= fsolve (lng = L(l, r, c, a), c);
                fi;
                b:= yl - cosh(c*(l+eval(a)))/c;
                cosh(c*(x+eval(a)))/c + b;
              else
                0;
              fi;
           end:

Zeichnen einer Kettenlinie mit den Parametern l, yl, r, yr, lng:

interface (displayprecision = 3):
f(x):= catenary (-4, 9, 12, 3, 40);
plot (f(x), x = -4..12, scaling=CONSTRAINED, labels=["",""]);

f(x)

Kettenlinie

Copyright

Valid HTML 4.01 Transitional

|  Home  |  Back  |  Top  |