Randwertprobleme/Methoden zur Lösung von Randwertproblemen/Finite Differenzen Verfahren (EBB): Unterschied zwischen den Versionen

Aus numpedia
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(14 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 11: Zeile 11:
so dass wir die erste Ableitung der Funktion ''w(x)'' an ''N'' Stellen ''x<sub>i</sub>'' bequem durch ''N+1'' viele Stützstellen ''W<sub>i</sub> := w(x<sub>i</sub>)'' berechnen können.
so dass wir die erste Ableitung der Funktion ''w(x)'' an ''N'' Stellen ''x<sub>i</sub>'' bequem durch ''N+1'' viele Stützstellen ''W<sub>i</sub> := w(x<sub>i</sub>)'' berechnen können.


Wie klappt das für die vierte Ableitung in<blockquote><blockquote><math>EI \cdot w^{IV} = q</math>?
==Feld-Differentialgleichung==
Wie klappt das für die vierte Ableitung in
 
::<math>EI \cdot w^{IV} = q</math>?


{|
{|
Zeile 62: Zeile 65:
</syntaxhighlight>
</syntaxhighlight>
|}
|}


Die vierte Ableitung κ des Polynoms ''p'' setzen wir nun anstelle der Ableitung in unserer Differentialbeziehung an, aus unserer Biege-Differentialgleichung wird die Biege-Differenzenbeziehung
Die vierte Ableitung κ des Polynoms ''p'' setzen wir nun anstelle der Ableitung in unserer Differentialbeziehung an, aus unserer Biege-Differentialgleichung wird die Biege-Differenzenbeziehung


::<math>\displaystyle \frac{{{W}_{i-2}}-4\cdot {{W}_{i-1}}+6\cdot {{W}_{i}}-4\cdot {{W}_{i+1}}+{{W}_{i+2}}}{{{\mathit{Δx}}^{4}}}=\frac{q_i}{\mathit{EI}}</math>
::<math>\displaystyle \frac{{{W}_{i-2}}-4\cdot {{W}_{i-1}}+6\cdot {{W}_{i}}-4\cdot {{W}_{i+1}}+{{W}_{i+2}}}{{{\Delta x}^{4}}}=\frac{q_i}{E\;I}</math>


Für jede Stützstelle ''W<sub>i</sub>'' im Gebiet muss nun diese gewöhnliche, lineare Gleichung erfüllt sein, so dass ein Gleichungssystem für die ''W<sub>i</sub>'' zunächst so aussieht:
Für jede Stützstelle ''W<sub>i</sub>'' im Gebiet muss nun diese gewöhnliche, lineare Gleichung erfüllt sein, so dass ein Gleichungssystem für die ''W<sub>i</sub>'' zunächst so aussieht:
Zeile 75: Zeile 76:
allgemein mit der Systemmatrix ''A'', den Unbekannten ''W'' und der rechten Seite ''b''
allgemein mit der Systemmatrix ''A'', den Unbekannten ''W'' und der rechten Seite ''b''


::<math>\underline{\underline{A}}\cdot\underline{W} = \underline{b}</math
::<math>\underline{\underline{A}}\cdot\underline{W} = \underline{b}</math>.


Sie sehen sofort: das geht an den Rändern schief:
Sie sehen sofort: das geht an den Rändern schief:
Zeile 89: Zeile 90:
Wir schreiben nun alle Rand- und Übergangs-Bedingungen für die Biegelinie ''w(x)'' auf die Stützstellen ''W<sub>j</sub>'' und ''q<sub>j</sub>'' um:
Wir schreiben nun alle Rand- und Übergangs-Bedingungen für die Biegelinie ''w(x)'' auf die Stützstellen ''W<sub>j</sub>'' und ''q<sub>j</sub>'' um:


Sie sehen sofort: das geht an den Rändern schief:
==Rand- und Übergangs-Bedingungen für behinderte Freiheitsgrade==


an der Stelle x=0 gibt es "links" neben W0 keine Stützstellen W0-1, W0-2 mehr - genauso fehlen am "rechten" zwei Stützstellen.
Für Lager, die einzelne Freiheitsgrade behindern (hier ''w'' oder ''w''') ersetzen wir einzelne Zeilen der Systemmatrix ''A'' durch die geometrische Zwangsbedingung:
Und


uns fehlen noch die Randbedingungen in der Formulierung des Problems!
Z.B. für
Wir lösen beide Probleme pragmatisch: wir erweitern die Anzahl der Gleichungen in A und gesuchten Größen W an jedem Rand um zwei - also um vier. Diese vier zusätzlichen Gleichungen nutzen wir nun zur Einarbeitung unserer Randbedingungen.
 
Wir schreiben nun alle Rand- und Übergangs-Bedingungen für die Biegelinie w(x) auf die Stützstellen Wj und qj um:
 
Rand- und Übergangs-Bedingungen für behinderte Freiheitsgrade
Für Lager, die einzelne Freiheitsgrade behindern (hier w oder w') ersetzen wir einzelne Zeilen der Systemmatrix A durch die geometrische Zwangsbedingung:


Z.B. für
<ul>
<li>
''w(ξ) = 0'':


w(xi) = 0:
An dieser Stützstelle ist der Wert  
An dieser Stützstelle ist der Wert  


  ,
  ::<math>W_{i} =  0</math>,


die Zeile des Gleichungssystems lautet:
die Zeile des Gleichungssystems lautet:


  .
  ::<math>\left(  \begin{array}{rrrrr} \ddots&\vdots&\vdots&\vdots&\vdots\\    ...&0&1&0&...\\    \vdots&\vdots&\vdots&\vdots&\ddots\\  \end{array} \right) \cdot \left(  \begin{array}{l}    \vdots\\    W_{i}\\    \vdots       \end{array} \right) =  \left(  \begin{array}{c}    \vdots\\    0\\    \vdots  \end{array} \right)</math>.
</li>
<li>
''w'(ξ) = 0'':


w'(xi) = 0:
An dieser Stelle stellen wir die horizontale Tangente der Biegelinie durch
An dieser Stelle stellen wir die horizontale Tangente der Biegelinie durch


  ,
  ::<math>\displaystyle \frac{W_{i+1}-W_{i-1}}{2\cdot\Delta x} = 0</math>,


die Zeile des Gleichungssystems lautet:
die Zeile des Gleichungssystems lautet:


::<math>\left(  \begin{array}{rrrrr}  \ddots&\vdots&\vdots&\vdots&\vdots\\    \\    ...&-1&0&1&...\\    \\    \vdots&\vdots&\vdots&\vdots&\ddots\\  \end{array} \right) \cdot \left(  \begin{array}{l}    \vdots\\    W_{i-1}\\    W_{i}\\    W_{i+1}\\    \vdots       \end{array} \right) =  \left(  \begin{array}{c}    \vdots\\    0\\    \vdots  \end{array} \right)</math>.
===Äußere Kräfte- und Momente===
====... im Feld====


Äußere Kräfte- und Momente
... im Feld
Um äußere, diskrete Lasten auf unser Finite-Differenzen-Modell im Feld einzubeziehen, interpretieren wir  
Um äußere, diskrete Lasten auf unser Finite-Differenzen-Modell im Feld einzubeziehen, interpretieren wir  
 
::<math>q_i \cdot \Delta\, x =: Q_i</math>,
,


als diskrete Kraft auf unser System an den Stützstellen. Denen können wir auch äußere Lasten hinzufügen, nämlich
als diskrete Kraft auf unser System an den Stützstellen. Denen können wir auch äußere Lasten hinzufügen, nämlich
* die eingeprägte, äußere Kraft ''F<sub>i</sub>'' und
* das eingeprägte, äußere Moment ''M<sub>i</sub>'' durch das Kräftepaar


die eingeprägte, äußere Kraft Fi und
::<math>\displaystyle \left\{\frac{M_i}{2\,\Delta\,x}, 2\cdot\Delta\,x ,\frac{M_i}{2\, \Delta\,x}\right\}</math>.
das eingeprägte, äußere Moment Mi durch das Kräftepaar
 


<table>
<table>
<tr><td>[[Datei:FiniteDifferenzenVerfahren-Lasten.png|ohne|mini|Streckenlast und äußere Lasten im kontinuierlichen Fall um den Knoten ''I'' herum.]]</td>
<tr><td style="vertical-align:top; width:50%;">[[Datei:FiniteDifferenzenVerfahren-Lasten.png|ohne|mini|Streckenlast und äußere Lasten im kontinuierlichen Fall um den Knoten ''I'' herum.]]</td>
<td>[[Datei:FiniteDifferenzenVerfahren-Ersatzsystem.png|ohne|mini|Streckenlast und äußere Lasten im Fall von endlichen Differenzen um den Knoten ''I'' herum.]]</td>
    <td style="vertical-align:top">[[Datei:FiniteDifferenzenVerfahren-Ersatzsystem.png|ohne|mini|Streckenlast und äußere Lasten im Fall von endlichen Differenzen um den Knoten ''I'' herum.|alternativtext=|rand]]</td>
</tr>
</tr>
</table>
</table>Dazu müssen die Stützstellen mit den Last-Einleitungsstellen zusammenfallen!
 
==== ... am Rand ====
<ul>
<li>Wir müssen unserer Stützstellen-Liste
* eine Anfangs- bzw. End-Krümmung (2te Ableitung) für ein dort angreifendes Moment ''M = -EI w<nowiki>''</nowiki>'' oder / und
* eine vordefinierte 3te Ableitung für eine dort angreifende Querkraft ''Q = -EI w<nowiki>'''</nowiki>'' mitgeben.
 
Die erforderlichen weiteren Beziehungen zwischen den Ableitungen von ''w'' und deren Erfassung durch die Stützstellen ''W<sub>i</sub>'' sind
:<math>\begin{array}{ll} w(x_i)    &= W_i\\ w'(x_i)  &= \displaystyle \frac{            -W_{i-1}            + W_{i+1}            }{2\cdot\Delta x  }\\ w''(x_i)  &= \displaystyle \frac{        +    W_{i-1} - 2\,W_{i} +    W_{i+1}          }{      \Delta x^2}\\ w'''(x_i) &= \displaystyle \frac{-W_{i-2} + 2\,W_{i-1}            - 2\,W_{i+1} + W_{i+2}}{2\cdot\Delta x^3}\\ w''''(x_i)&= \displaystyle \frac{+W_{i-2} - 4\,W_{i-1} + 6\,W_{i} - 4\,W_{i+1} + W_{i+2}}{      \Delta x^4}\\ \end{array}</math>
 (vgl. [[Gelöste Aufgaben/Kit6|Kit6]]).
 
 
Da wir für jeden Rand des Euler-Bernoulli-Balkens genau zwei Randbedingungen erhalten, verbrauchen wir dafür genau 4 Gleichungen. Wir ersetzen also vier Gleichungen der Biegedifferentialgleichung durch vier Gleichungen der Randbedingungen.
 
== Macht das Verfahren Sinn? ==
Das Finite-Differenzen-Verfahren erscheint also auf den ersten Blick anschaulich und intuitiv, ist aber numerisch ineffizient und basiert auf fragwürdigen mathematischen Ansätzen.
* Es setzt als Näherungslösung für die Differentialbeziehung einer kontinuierlichen Funktion ''w'' im Feld des [[Sources/Lexikon/Euler-Bernoulli-Balken|Euler-Bernoulli-Balkens]] ein gewöhnliches Gleichungssystem mit einigen 100 Stützstellen (= Unbekannten) an. Für die analytische Lösung brauchen wir gerade mal 4 Unbekannte (= Integrationskonstanten) je Feld!
* Für Randwertprobleme mit linearen, partiellen Differentialgleichungen - z.B. für Schalen, bei denen man üblicherweise keine analytische Lösung findet - kann man das Verfahren sinnvoller einsetzen. Heute gibt es jedoch mit der [[Randwertprobleme/Methoden zur Lösung von Randwertproblemen/Finite Elemente Methode|Methode der Finiten Elemente]] deutlich effizientere Lösungsverfahren.
* Der zentrale Ansatz des Verfahrens - das Ersetzen der Differentialbeziehung durch eine Differenzenbeziehung - nutzt kein mathematisch begründetes Näherungsverfahren.

Aktuelle Version vom 20. Februar 2021, 18:49 Uhr

Das Differenzenverfahren ersetzt die Bewegungsgleichung des Euler-Bernoulli-Balkens im Gebiet (die Differentialgleichung) durch den Differenzenquotienten.

Also wird aus

mit endlich großem Δx. Wir wählen

,

so dass wir die erste Ableitung der Funktion w(x) an N Stellen xi bequem durch N+1 viele Stützstellen Wi := w(xi) berechnen können.

Feld-Differentialgleichung

Wie klappt das für die vierte Ableitung in

?
Maxima
Indem wir die vierte Ableitung eines Polynoms, das durch benachbarte Punkte der Stützstellen verläuft, bestimmen und dies als vierten Ableitung der gesuchten Funktion verwenden.

Wir erfassen Ableitungen der gesuchten Verschiebung durch Linearkombinationen der Stützstellen.

Dazu brauchen wir mindestens ein Polynom 4ter Ordnung, damit wir es vier mal ableiten können, ohne dass es dabei verschwindet (Null wird). Wir wählen also 5 äquidistante Stützstellen um xi herum und sampeln die x-Koordinate ξ, die unbekannte Auslenkung Wj und den Wert der bekannten Streckenlast qj:

Das Polynom 4ter Ordnung dazu ist

und dessen vierte Ableitung

,

wobei wir die Ci aus der Anpassung an die Stützstellen erhalten. Wie das im Detail geht, steht in Kit6.

/* Maxima Sourcecode */
declare("Δx", alphabetic);
dgl: 'diff(w,x,4)=q/EI;
/*samples */
S : makelist([x[0]+j*Δx,W[i+j]],j,-2,2);
/* polynom */		
p : sum(C[j]*x^j,j,0,4);
/* equations */		
equs : makelist(subst([x=S[j][1]],p)=S[j][2],j,1,5);
/* unknown coefficients */
coef : makelist(C[j],j,0,4);
/* solution */
sol : linsolve(equs,coef);
/* 4th derivative*/
kappa : diff(p,x,4);
kappa : subst(sol,kappa);
		
print(dgl," -> ", subst(['diff(w,x,4)=kappa],dgl));
ole : Δx^4*subst(['diff(w,x,4)=kappa],dgl);

Die vierte Ableitung κ des Polynoms p setzen wir nun anstelle der Ableitung in unserer Differentialbeziehung an, aus unserer Biege-Differentialgleichung wird die Biege-Differenzenbeziehung

Für jede Stützstelle Wi im Gebiet muss nun diese gewöhnliche, lineare Gleichung erfüllt sein, so dass ein Gleichungssystem für die Wi zunächst so aussieht:

,

allgemein mit der Systemmatrix A, den Unbekannten W und der rechten Seite b

.

Sie sehen sofort: das geht an den Rändern schief:

  • an der Stelle x=0 gibt es "links" neben W0 keine Stützstellen W0-1, W0-2 mehr - genauso fehlen am "rechten" zwei Stützstellen.

Und

  • uns fehlen noch die Randbedingungen in der Formulierung des Problems!

Wir lösen beide Probleme pragmatisch: wir erweitern die Anzahl der Gleichungen in A und gesuchten Größen W an jedem Rand um zwei - also um vier. Diese vier zusätzlichen Gleichungen nutzen wir nun zur Einarbeitung unserer Randbedingungen.

Wir schreiben nun alle Rand- und Übergangs-Bedingungen für die Biegelinie w(x) auf die Stützstellen Wj und qj um:

Rand- und Übergangs-Bedingungen für behinderte Freiheitsgrade

Für Lager, die einzelne Freiheitsgrade behindern (hier w oder w') ersetzen wir einzelne Zeilen der Systemmatrix A durch die geometrische Zwangsbedingung:

Z.B. für

  • w(ξ) = 0: An dieser Stützstelle ist der Wert  ::, die Zeile des Gleichungssystems lautet:  ::.
  • w'(ξ) = 0: An dieser Stelle stellen wir die horizontale Tangente der Biegelinie durch  ::, die Zeile des Gleichungssystems lautet:
    .

    Äußere Kräfte- und Momente

    ... im Feld

    Um äußere, diskrete Lasten auf unser Finite-Differenzen-Modell im Feld einzubeziehen, interpretieren wir

    ,

    als diskrete Kraft auf unser System an den Stützstellen. Denen können wir auch äußere Lasten hinzufügen, nämlich

    • die eingeprägte, äußere Kraft Fi und
    • das eingeprägte, äußere Moment Mi durch das Kräftepaar
    .
    Streckenlast und äußere Lasten im kontinuierlichen Fall um den Knoten I herum.
    Streckenlast und äußere Lasten im Fall von endlichen Differenzen um den Knoten I herum.
    Dazu müssen die Stützstellen mit den Last-Einleitungsstellen zusammenfallen!

    ... am Rand

    • Wir müssen unserer Stützstellen-Liste
      • eine Anfangs- bzw. End-Krümmung (2te Ableitung) für ein dort angreifendes Moment M = -EI w'' oder / und
      • eine vordefinierte 3te Ableitung für eine dort angreifende Querkraft Q = -EI w''' mitgeben.
      Die erforderlichen weiteren Beziehungen zwischen den Ableitungen von w und deren Erfassung durch die Stützstellen Wi sind
       (vgl. Kit6). Da wir für jeden Rand des Euler-Bernoulli-Balkens genau zwei Randbedingungen erhalten, verbrauchen wir dafür genau 4 Gleichungen. Wir ersetzen also vier Gleichungen der Biegedifferentialgleichung durch vier Gleichungen der Randbedingungen.

      Macht das Verfahren Sinn?

      Das Finite-Differenzen-Verfahren erscheint also auf den ersten Blick anschaulich und intuitiv, ist aber numerisch ineffizient und basiert auf fragwürdigen mathematischen Ansätzen.

      • Es setzt als Näherungslösung für die Differentialbeziehung einer kontinuierlichen Funktion w im Feld des Euler-Bernoulli-Balkens ein gewöhnliches Gleichungssystem mit einigen 100 Stützstellen (= Unbekannten) an. Für die analytische Lösung brauchen wir gerade mal 4 Unbekannte (= Integrationskonstanten) je Feld!
      • Für Randwertprobleme mit linearen, partiellen Differentialgleichungen - z.B. für Schalen, bei denen man üblicherweise keine analytische Lösung findet - kann man das Verfahren sinnvoller einsetzen. Heute gibt es jedoch mit der Methode der Finiten Elemente deutlich effizientere Lösungsverfahren.
      • Der zentrale Ansatz des Verfahrens - das Ersetzen der Differentialbeziehung durch eine Differenzenbeziehung - nutzt kein mathematisch begründetes Näherungsverfahren.