Gelöste Aufgaben/Kw50: Unterschied zwischen den Versionen

Aus numpedia
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 12: Zeile 12:
<onlyinclude>
<onlyinclude>
[[Datei:Kw50-01.png|alternativtext=|links|mini|Lageplan]]
[[Datei:Kw50-01.png|alternativtext=|links|mini|Lageplan]]
Geben Sie die analytische Lösung für ein Euler-Bernoulli-Modell der Brücke in dimensiuonslosen Koordinaten an.
Geben Sie die [[Randwertprobleme/Methoden zur Lösung von Randwertproblemen/Integration der Differentialbeziehung (EBB)|analytische Lösung]] für ein Euler-Bernoulli-Modell der Brücke in dimensiuonslosen Koordinaten an.
</onlyinclude>
</onlyinclude>
Ermitteln Sie für dabei die Verläufe der Schnittgrößen und Verschiebungen im Balken für diese Parameter:
Ermitteln Sie für dabei die Verläufe der Schnittgrößen und Verschiebungen im Balken für diese Parameter:


<math>\begin{array}{ll}K_C =&\displaystyle  5 \frac{E\,I}{\ell_0}\\m_A =&\displaystyle \frac{m_B}{5}  \end{array}</math>
::<math>\begin{array}{ll}K_C =&\displaystyle  5 \frac{E\,I}{\ell_0}\\m_A =&\displaystyle \frac{m_B}{5}  \end{array}</math>


== Lösung mit Maxima ==
== Lösung mit Maxima ==
Die Aufgabe ist ein klassisches Randwertproblem mit
Die Aufgabe ist ein klassisches Randwertproblem mit


# zwei Gebieten, in denen ein Euler-Bernoulli-Balken in AB und BC durch eine Streckenlast ''q<sub>0</sub>'' belastet ist und somit durch die Differentialbeziehung
<ol>
<math>E\; I_i w_i^{IV}(x) = q_0,\;\; i=\{1,2\}</math> beschrieben wird;
<li>zwei Gebieten, in denen ein Euler-Bernoulli-Balken in AB und BC durch eine Streckenlast ''q<sub>0</sub>'' belastet ist und somit durch die Differentialbeziehung
# Rand- und Übergangsbedingungen in den Punkten A, B, C.
::<math>E\; I_i w_i^{IV}(x) = q_0,\;\; i=\{1,2\}</math> beschrieben wird;</li>
<li>Rand- und Übergangsbedingungen in den Punkten A, B, C.</li>
</ol>


Die Biegesteifigkeit des Balkens ist konstant (nicht von "''x"'' abhängig), wir können als den Index "''i''" beim Flächenmoment also weglassen.
Die Biegesteifigkeit des Balkens ist konstant (nicht von "''x"'' abhängig), wir können als den Index "''i''" beim Flächenmoment also weglassen.
Zeile 31: Zeile 33:
<table class="wikitable" style="background-color:white;">
<table class="wikitable" style="background-color:white;">
<tr><th>Rand<br/>A</th><th>Bereich I</th><th>Übergang<br/>B</th><th>Bereich II</th><th>Rand<br/>C</th></tr>
<tr><th>Rand<br/>A</th><th>Bereich I</th><th>Übergang<br/>B</th><th>Bereich II</th><th>Rand<br/>C</th></tr>
<tr><td></td><td>[[Datei:Kw50-11AB.png|rahmenlos]]</td><td></td><td>[[Datei:Kw50-11BC.png|rahmenlos]]</td><td></td></tr>
<tr><td></td><td>[[Datei:Kw50-11AB.png|rahmenlos|alternativtext=|200x200px]]</td><td></td><td>[[Datei:Kw50-11BC.png|rahmenlos|alternativtext=|260x260px]]</td><td></td></tr>
<tr><td>[[Datei:Kw50-11A.png|150px|rahmenlos]]</td><td></td><td>[[Datei:Kw50-11B.png|rahmenlos]]</td><td></td><td>[[Datei:Kw50-11C.png|rahmenlos]]
<tr><td>[[Datei:Kw50-11A.png|116x116px|rahmenlos|alternativtext=]]</td><td></td><td>[[Datei:Kw50-11B.png|rahmenlos|alternativtext=|128x128px]]</td><td></td><td>[[Datei:Kw50-11C.png|rahmenlos|alternativtext=|116x116px]]
</td></tr>
</td></tr>
</table>
</table>
Zeile 40: Zeile 42:
Wie? Das machen wir uns an einem Bild klar:[[Datei:Kw50-12.png|mini|Geometrische Zwangsbedingung|alternativtext=|200x200px]]In linearer Näherung ist der Zusammenhang zwischen der Seil-Abwicklung ''Δs<sub>A</sub>'' und der vertial-Verschibung ''W<sub>A</sub>'' in Punkt ''A''  
Wie? Das machen wir uns an einem Bild klar:[[Datei:Kw50-12.png|mini|Geometrische Zwangsbedingung|alternativtext=|200x200px]]In linearer Näherung ist der Zusammenhang zwischen der Seil-Abwicklung ''Δs<sub>A</sub>'' und der vertial-Verschibung ''W<sub>A</sub>'' in Punkt ''A''  


<math>\displaystyle \sin(30^\circ) = \frac{\Delta s_A}{W_A}</math>.
::<math>\displaystyle \sin(30^\circ) = \frac{\Delta s_A}{W_A}</math>.


Analog gilt für Punkt ''B''
Analog gilt für Punkt ''B''


<math>\displaystyle \sin(60^\circ) = \frac{\Delta s_B}{W_B}</math>.
::<math>\displaystyle \sin(60^\circ) = \frac{\Delta s_B}{W_B}</math>.


Da das Seil undehnbar ist, gilt außerdem
Da das Seil undehnbar ist, gilt außerdem


<math>\Delta s_A + \Delta s_B = 0</math>
::<math>\Delta s_A + \Delta s_B = 0</math>


Diese zusätzliche Bedingung ist das entscheidende Element dieser Aufgabe.
Diese zusätzliche Bedingung ist das entscheidende Element dieser Aufgabe.


==tmp==
In dieser Lösung arbeiten wir mit dimensionslosen Koordinaten für die unabhängige Koordinate ''x'' und die abhängige Koordinate ''w(x)''.
<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Header
{{MyCodeBlock|title=Header
|text=Text
|text=
In dieser Lösung arbeiten wir mit dimensionslosen Koordinaten für die unabhängige Koordinate ''x'' und die abhängige Koordinate ''w(x)''.
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/*******************************************************/
/* MAXIMA script                                      */
/* version: wxMaxima 18.10.1                           */
/* author: Andreas Baumgart                            */
/* last updated: 2019-02-12                            */
/* ref: TM-C, Labor 1, dimensionless representation    */
/* description: finds the analytic solution for        */
/*              lab problem #1                        */
/*******************************************************/
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Declarations
|text=
Die Streckenlast auf den Balken ist natürlich seine Gewichtskraft, also
Die Streckenlast auf den Balken ist natürlich seine Gewichtskraft, also


<math>\displaystyle q_0 = \frac{m_B\;g}{\ell_0}</math>.[[Datei:Kw50-06.png|mini|Geometrie]]Geometrische Zusammenhänge müssen wir auch anschreiben, so für
::<math>\displaystyle q_0 = \frac{m_B\;g}{\ell_0}</math>.[[Datei:Kw50-06.png|mini|Geometrie]]Geometrische Zusammenhänge müssen wir auch anschreiben, so für


<math>\begin{array}{l}\ell = \ell_1 + \ell_2\\\tan(\alpha_B) = \displaystyle \frac{H}{\ell_2}\\\tan(\alpha_A) = \displaystyle \frac{H}{\ell}\end{array}</math>
::<math>\begin{array}{l}\ell = \ell_1 + \ell_2\\\tan(\alpha_B) = \displaystyle \frac{H}{\ell_2}\\\tan(\alpha_A) = \displaystyle \frac{H}{\ell}\end{array}</math>


mit  
mit  


<math>\alpha_A = 30\circ, \;\;\;\alpha_B = 60\circ</math>.
::<math>\alpha_A = 30\circ, \;\;\;\alpha_B = 60\circ</math>.


Und wir wählen noch eine Bezugslänge ''ℓ<sub>Bez</sub>'' zu
Und wir wählen noch eine Bezugslänge ''ℓ<sub>Bez</sub>'' zu


<math>\displaystyle \ell_{Bez} = \frac{m_B\;g \ell^3}{3 EI}</math>
::<math>\displaystyle \ell_{Bez} = \frac{m_B\;g \ell^3}{3 EI}</math>
 
aus der tabellierten Lösung für einen Kragbalken der Länge ''ℓ'' und einer Endlast ''m<sub>B</sub> g.'' Das erscheint nicht sonderlich schlau - es gibt Standard -Lastfälle die besser passen würden. Aber dann schleppen wir die ganze Zeit Koeffizienten wie z.B. ''5/384'' mit durch die Rechnungen - das macht die Arbeit unübersichtlich.<!-------------------------------------------------------------------------------->


{{MyCodeBlock|title=Declarations
aus der [[Sources/Lexikon/Standard-Lösungen|tabellierten Lösung]] für einen Kragbalken der Länge ''ℓ'' und einer Endlast ''m<sub>B</sub> g.'' Das erscheint nicht sonderlich schlau - es gibt Standard -Lastfälle die besser passen würden. Aber dann schleppen wir die ganze Zeit Koeffizienten wie z.B. ''5/384'' mit durch die Rechnungen - das macht die Arbeit unübersichtlich.
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/* declare variational variables - see 6.3 Identifiers */
declare("Δs", alphabetic);
declare( "ϕ", alphabetic);
declare( "ℓ", alphabetic);
 
/* system parameters                                  */
params: [K[C]    = kappa*EI/ℓ[0],
        q[0]    = m[B]*g/ℓ[0],
        m[A]    = theta*m[B],
        theta    = 1/5,
        kappa    = 5];
 
geometry: [alpha[A] = 30*%pi/180,
          alpha[B] = 60*%pi/180,
          ℓ[1]    = ℓ[0]-ℓ[2],
          Δs[A]    = W[A]*cos(%pi/2-alpha[A]),
          Δs[B]    = W[B]*cos(%pi/2-alpha[B]),
          tan(alpha[B]) = H/ℓ[2],
          tan(alpha[A]) = H/ℓ[0],
          xi[1]    = ℓ[1]/ℓ[0],
          xi[2]    = ℓ[2]/ℓ[0]];
geometry: ratsimp(solve(geometry,[alpha[A],alpha[B],ℓ[1],ℓ[2],Δs[A],Δs[B],H,xi[1],xi[2]])[1]);
 
/* reference length selected:                        */
dimless : ℓ[Bez] = 1/3*m[B]*g*ℓ[0]^3/(EI); /*cantilevered*/
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Integration Of Differential Equation
|text=
In Bereich I und II gilt dieselbe Bewegungs-Differentialgleichung
In Bereich I und II gilt dieselbe Bewegungs-Differentialgleichung


<math>E\,I\, w_i^{IV}(x) = q_0 ,\;\; i=\{1,2\}</math>,
::<math>E\,I\, w_i^{IV}(x) = q_0 ,\;\; i=\{1,2\}</math>,


die wir durch Integration lösen und dann bereichsweise an Rand- und Übergangsbedingungen anpassen. Diese Aufgabe wird etwas übersichtlicher, wenn wir die Auslenkung ''w'' und die Ortskoordinate ''x'' dimensionslos machen. So wählen wir:
die wir durch Integration lösen und dann bereichsweise an Rand- und Übergangsbedingungen anpassen. Diese Aufgabe wird etwas übersichtlicher, wenn wir die Auslenkung ''w'' und die Ortskoordinate ''x'' dimensionslos machen. So wählen wir:


<math>w = \ell_{Bez}\cdot \tilde{w}</math>
::<math>w = \ell_{Bez}\cdot \tilde{w}</math>


und setzten für die Bezugslänge die Auslenkung eines Kragbalkens unter konstanter Streckenlast (hier ''q<sub>A</sub>'') an.
und setzten für die Bezugslänge die Auslenkung eines Kragbalkens unter konstanter Streckenlast (hier ''q<sub>A</sub>'') an.
Zeile 102: Zeile 135:
Zusätzlich wählen wir eine unabhängige, dimensionslose Ortskoordinaten für die Bereich I und II, die ihren Ursprung in den Punkt A hat:
Zusätzlich wählen wir eine unabhängige, dimensionslose Ortskoordinaten für die Bereich I und II, die ihren Ursprung in den Punkt A hat:


<math>\xi = \displaystyle \frac{x}{\ell}</math>
::<math>\xi = \displaystyle \frac{x}{\ell}</math>


Mit den weiteren Gleichungen für
Mit den weiteren Gleichungen für


<math>\begin{array}{ll} \ldots\text{ die Verdrehung: }&\displaystyle \phi_i(x) = \frac{d\,w_i(x)}{d\,x}\\ \ldots\text{ das Biege-Moment: }&\displaystyle M_i(x) = - E I \frac{d^2\,w_i(x)}{d\,x^2}\\ \ldots\text{ die Querkraft: }&\displaystyle Q_i(x) = - EI \frac{d^3\,w_i(x)}{d\,x^3} \end{array}</math>
::<math>\begin{array}{ll} \ldots\text{ die Verdrehung: }&\displaystyle \phi_i(x) = \frac{d\,w_i(x)}{d\,x}\\ \ldots\text{ das Biege-Moment: }&\displaystyle M_i(x) = - E I \frac{d^2\,w_i(x)}{d\,x^2}\\ \ldots\text{ die Querkraft: }&\displaystyle Q_i(x) = - EI \frac{d^3\,w_i(x)}{d\,x^3} \end{array}</math>


finden wir für Bereich i:
finden wir für Bereich i:


<math>\begin{array}{lll}  {{w}_{i}}\left( \xi\right) &:=&\displaystyle \frac{1}{m_B\,g} \left( \frac{1}{8} {q_0}\, {\ell_0}\, {\ell_{Bez}}\, {{\xi}^{4}} + \frac{1}{2} {\ell_0}\, {C_{i,3}}\, {\ell_{Bez}}\, {{\xi}^{3}} + \frac{1}{2} 3 {\ell_0}\, {C_{i,2}}\, {\ell_{Bez}}\, {{\xi}^{2}}+ 3 {\ell_0}\, {C_{i,1}}\, {\ell_{Bez}} \xi\right) + 3 {\ell_0}\, {C_{i,0}}\, {\ell_{Bez}}\\ \phi_{i}\left( \xi\right)  &:=&\displaystyle \frac{1}{m_B\,g} \left(\frac{1}{2} {{q}_{0}}\cdot \ell_{Bez}\cdot {{\xi}^{3}} + \frac{1}{2} 3\cdot {{C}_{i,3}}\cdot \ell_{Bez}\cdot {{\xi}^{2}}  +  3\cdot {{C}_{i,2}}\cdot \ell_{Bez}\cdot \xi + 3\cdot {{C}_{i,1}}\cdot \ell_{Bez} \right)\\ {{M}_{i}}\left( \xi\right) &:=&\displaystyle \frac{E I}{2 \ell_0 m_B\,g} \left(-3\cdot {{q}_{0}}\cdot \ell_{Bez}\cdot {{\xi}^{2}}-6\cdot {{C}_{i,3}}\cdot \ell_{Bez}\cdot \xi-6\cdot {{C}_{i,2}}\cdot \ell_{Bez} \right)\\ {{Q}_{i}}\left( \xi\right) &:=&\displaystyle \frac{E I}{\ell_0^2 m_B\,g} \left(-3\cdot {{q}_{0}}\cdot \ell_{Bez}\cdot \xi-3\cdot {{C}_{i,3}}\cdot \ell_{Bez} \right) \end{array}</math>.<!-------------------------------------------------------------------------------->
::<math>\begin{array}{lll}  {{w}_{i}}\left( \xi\right) &:=&\displaystyle \frac{1}{m_B\,g} \left( \frac{1}{8} {q_0}\, {\ell_0}\, {\ell_{Bez}}\, {{\xi}^{4}} + \frac{1}{2} {\ell_0}\, {C_{i,3}}\, {\ell_{Bez}}\, {{\xi}^{3}} + \frac{1}{2} 3 {\ell_0}\, {C_{i,2}}\, {\ell_{Bez}}\, {{\xi}^{2}}+ 3 {\ell_0}\, {C_{i,1}}\, {\ell_{Bez}} \xi\right) + 3 {\ell_0}\, {C_{i,0}}\, {\ell_{Bez}}\\ \phi_{i}\left( \xi\right)  &:=&\displaystyle \frac{1}{m_B\,g} \left(\frac{1}{2} {{q}_{0}}\cdot \ell_{Bez}\cdot {{\xi}^{3}} + \frac{1}{2} 3\cdot {{C}_{i,3}}\cdot \ell_{Bez}\cdot {{\xi}^{2}}  +  3\cdot {{C}_{i,2}}\cdot \ell_{Bez}\cdot \xi + 3\cdot {{C}_{i,1}}\cdot \ell_{Bez} \right)\\ {{M}_{i}}\left( \xi\right) &:=&\displaystyle \frac{E I}{2 \ell_0 m_B\,g} \left(-3\cdot {{q}_{0}}\cdot \ell_{Bez}\cdot {{\xi}^{2}}-6\cdot {{C}_{i,3}}\cdot \ell_{Bez}\cdot \xi-6\cdot {{C}_{i,2}}\cdot \ell_{Bez} \right)\\ {{Q}_{i}}\left( \xi\right) &:=&\displaystyle \frac{E I}{\ell_0^2 m_B\,g} \left(-3\cdot {{q}_{0}}\cdot \ell_{Bez}\cdot \xi-3\cdot {{C}_{i,3}}\cdot \ell_{Bez} \right) \end{array}</math>.
 
{{MyCodeBlock|title=Integration Of Differential Equation
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/******************************************************/
/* Boundary Value Problem Formulation                */
/* part I: field                                      */
dgl : EI*ℓ[Bez]*diff(w(xi),xi,4)/ℓ[0]^4 = q[0];
dgl: subst(dimless,dgl);
/* generic solution */
displ : solve(integrate(integrate(integrate(integrate(dgl,xi),xi),xi),xi),w(xi));
sections: [[i=1, %c4=C[1,0], %c3=C[1,1], %c2=C[1,2], %c1=C[1,3]],
          [i=2, %c4=C[2,0], %c3=C[2,1], %c2=C[2,2], %c1=C[2,3]]];
/* section I */
define(  w[1](xi),  ratsimp(subst(sections[1],subst(displ,ℓ[Bez]*w(xi)))));
define(Phi[1](xi),      diff(w[1](xi),xi  )/ℓ[0]^1);
define(  M[1](xi), -EI*diff(w[1](xi),xi,2)/ℓ[0]^2);
define(  Q[1](xi), -EI*diff(w[1](xi),xi,3)/ℓ[0]^3);
/* section II */
define(  w[2](xi),  ratsimp(subst(sections[2],subst(displ,ℓ[Bez]*w(xi)))));
define(Phi[2](xi),      diff(w[2](xi),xi  )/ℓ[0]);
define(  M[2](xi), -EI*diff(w[2](xi),xi,2)/ℓ[0]^2);
define(  Q[2](xi), -EI*diff(w[2](xi),xi,3)/ℓ[0]^3);
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Boundary Conditions
|text=
Für die 2*4 = 8 Integrationskonstanten
Für die 2*4 = 8 Integrationskonstanten


<math>\left[ C_{1,0},C_{1,1},C_{1,2},C_{1,3},C_{2,0},C_{2,1},C_{2,2},C_{2,3}\right]</math>
::<math>\left[ C_{1,0},C_{1,1},C_{1,2},C_{1,3},C_{2,0},C_{2,1},C_{2,2},C_{2,3}\right]</math>


suchen wir jetzt die passenden Gleichungen aus Rand- und Übergangsbedingungen. Und zusätzlich - und das ist hier besonders - brauchen wir noch eine Gleichung für die Seilkraft ''S''.
suchen wir jetzt die passenden Gleichungen aus Rand- und Übergangsbedingungen. Und zusätzlich - und das ist hier besonders - brauchen wir noch eine Gleichung für die Seilkraft ''S''.
Zeile 133: Zeile 186:
====Aus Rand "A"====
====Aus Rand "A"====
<table class="wikitable" style="background-color:white;">
<table class="wikitable" style="background-color:white;">
<tr><td>[[Datei:Kw50-11A.png|rahmenlos|alternativtext=|200px]]
<tr><td>[[Datei:Kw50-11A.png|rahmenlos|alternativtext=|150px]]
</td><td>Geometrische Randbedingungen
</td><td>''Geometrische Randbedingungen''


* keine
* keine


Kraft- und Momenten-Randbedingungen
''Kraft- und Momenten-Randbedingungen''


# <math>m_A\;g - S \sin(\alpha_A) + Q_{A,+}= 0 \text{ mit } Q_{A,+} = - E I\cdot w'''(x)|_{x=0}</math>
# <math>m_A\;g - S \sin(\alpha_A) + Q_{A,+}= 0 \text{ mit } Q_{A,+} = - E I\cdot w'''(x)|_{x=0}</math>
Zeile 147: Zeile 200:
====Aus Übergang "B"====
====Aus Übergang "B"====
<table class="wikitable" style="background-color:white;">
<table class="wikitable" style="background-color:white;">
<tr><td>[[Datei:Kw50-11B.png|rahmenlos|alternativtext=|200]]
<tr><td>[[Datei:Kw50-11B.png|rahmenlos|alternativtext=|180px]]
</td><td>Geometrische Randbedingungen
</td><td>''Geometrische Randbedingungen''
# <math>w_1(\ell_1)=w_2(\ell_1)</math>
# <math>w_1(\ell_1)=w_2(\ell_1)</math>
# <math>\phi_1(\ell_1) = \phi_2(\ell_1)</math>
# <math>\phi_1(\ell_1) = \phi_2(\ell_1)</math>


Kraft- und Momenten-Randbedingungen
''Kraft- und Momenten-Randbedingungen''


# <math>-M_{B,-} + M_{B,+} = 0</math>
# <math>-M_{B,-} + M_{B,+} = 0</math>
Zeile 161: Zeile 214:
====Aus Rand "C"====
====Aus Rand "C"====
<table class="wikitable" style="background-color:white;">
<table class="wikitable" style="background-color:white;">
<tr><td>[[Datei:Kw50-11C.png|rahmenlos|alternativtext=|200]]
<tr><td>[[Datei:Kw50-11C.png|rahmenlos|alternativtext=|170px]]
</td><td>Geometrische Randbedingungen
</td><td>''Geometrische Randbedingungen''
# <math>w_2(\ell)=0</math>
# <math>w_2(\ell)=0</math>


Kraft- und Momenten-Randbedingungen
''Kraft- und Momenten-Randbedingungen''


# <math>K_C\cdot \Phi_C - M_{C,-} = 0 \text{ mit } M_{C,-} = - E I\cdot w''(x)|_{x=\ell}</math>
# <math>K_C\cdot \Phi_C - M_{C,-} = 0 \text{ mit } M_{C,-} = - E I\cdot w''(x)|_{x=\ell}</math>
Zeile 171: Zeile 224:
</table>
</table>


====Aus Rand D (Umlenkrolle für das Seil)====
====Aus Rand "D" (Umlenkrolle für das Seil)====
Kinematische Verträglichkeit für das Abwickeln des Seils:
<table class="wikitable" style="background-color:white;">
<tr><td>''Kinematische Verträglichkeit für das Abwickeln des Seils''
# <math>\Delta s_A +\Delta s_B =0</math>
# <math>\Delta s_A +\Delta s_B =0</math>
</td></tr>
</table>


Ein bisschen exotisch ist, dass wir nun neun Unbekannte haben, nämlich
Ein bisschen exotisch ist, dass wir nun neun Unbekannte haben, nämlich
Zeile 180: Zeile 236:


Aber mit den Randbedingungen oben steht uns nun ein vollständiges Gleichungssystem für neun Unbekannte - die Integrationskonstanten und S - zur Verfügung.
Aber mit den Randbedingungen oben steht uns nun ein vollständiges Gleichungssystem für neun Unbekannte - die Integrationskonstanten und S - zur Verfügung.
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Boundary Conditions
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/******************************************************/
/* Boundary Value Problem Formulation                */
/* part II: boundary conditions                      */
node[A]: [ Q[1](0)+m[A]*g-S*sin(alpha[A]) = 0,
          M[1](0) = 0];
node[B]: [ w[1](ℓ[1]/ℓ[0]) = w[2](ℓ[1]/ℓ[0]),
          Phi[1](ℓ[1]/ℓ[0]) = Phi[2](ℓ[1]/ℓ[0]),
          -Q[1](ℓ[1]/ℓ[0]) - S*sin(alpha[B]) +Q[2](ℓ[1]/ℓ[0]) = 0,
          -M[1](ℓ[1]/ℓ[0]) + M[2](ℓ[1]/ℓ[0]) = 0];
node[C]: [ w[2](1) = 0,
          -M[2](1) + K[C]*Phi[2](1) = 0];
node[D]: subst([W[A]=w[1](0), W[B]=w[1](ℓ[1]/ℓ[0])] ,subst(geometry,[Δs[A]+Δs[B] = 0]));
 
BCs : subst(dimless,append(node[A],node[B],node[C],node[D]));       
scale: [1/ℓ[0], -1/ℓ[0]^2, EI/ℓ[0]^4, EI/ℓ[0]^3,
        1, 1/ℓ[0]^2, EI/ℓ[0]^4, 1/ℓ[0]^2,
        EI/ℓ[0]^4];
BCs : subst(geometry,subst(params,expand(scale*BCs)));
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Prepare for Solver
|text=
Das Gleichungssystem wollen wir als
Das Gleichungssystem wollen wir als


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


schreiben, also - hier nach Einsetzen der System-Parameter:
schreiben, also - hier nach Einsetzen der System-Parameter:


<math>\begin{pmatrix}
::<math>\begin{pmatrix}
  0 & 0 & 0 & -1 & 0 & 0 & 0 & 0 & -\frac{1}{2\cdot {\ell_{0}}}\\
  0 & 0 & 0 & -1 & 0 & 0 & 0 & 0 & -\frac{1}{2\cdot {\ell_{0}}}\\
  0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0\\
  0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0\\
Zeile 218: Zeile 287:
  {{C}_{2,2}}\\
  {{C}_{2,2}}\\
  {{C}_{2,3}}\\
  {{C}_{2,3}}\\
S\end{pmatrix} = \begin{pmatrix}-\frac{g\cdot {{m}_{B}}}{5\cdot {\ell_{0}}}\\ 0\\ 0\\ 0\\ 0\\ 0\\ -\frac{g\cdot {{m}_{B}}}{24\cdot {\ell_{0}}}\\ -\frac{4\cdot g\cdot {{m}_{B}}}{3\cdot {\ell_{0}}}\\ -\frac{g\cdot {{m}_{B}}}{{{3}^{\frac{9}{2}}}\cdot {\ell_{0}}}\end{pmatrix}</math>
\end{pmatrix} = \begin{pmatrix}-\frac{g\cdot {{m}_{B}}}{5\cdot {\ell_{0}}}\\ 0\\ 0\\ 0\\ 0\\ 0\\ -\frac{g\cdot {{m}_{B}}}{24\cdot {\ell_{0}}}\\ -\frac{4\cdot g\cdot {{m}_{B}}}{3\cdot {\ell_{0}}}\\ -\frac{g\cdot {{m}_{B}}}{{{3}^{\frac{9}{2}}}\cdot {\ell_{0}}}\end{pmatrix}
<!-------------------------------------------------------------------------------->
</math>.
 
{{MyCodeBlock|title=Prepare for Solver
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/* integration constants = unknowns */
ICs : [C[1,0],C[1,1],C[1,2],C[1,3],C[2,0],C[2,1],C[2,2],C[2,3]];
ACM: augcoefmatrix(BCs,ICs);
/* system matrix and rhs */
AA :  submatrix(ACM,9);
bb : - col(ACM,9);
/* print OLE */
print(subst(params,AA),"*",x,"=",subst(params,bb));
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Solving
|text=
Das Lösen des Gleichungssystems liefert dann
Das Lösen des Gleichungssystems liefert dann


<math>\displaystyle \left( \begin{array}{c} C_{1,0}\\C_{1,1}\\C_{1,2}\\C_{1,3}\\C_{2,0}\\C_{2,1}\\C_{2,2}\\C_{2,3}\\ S \end{array} \right) = \frac{m_B \; g}{\ell_0}  \left( \begin{array}{l}  +9.716 {{10}^{-4}}\\+0.00389\\+0.0\\-0.250\\+0.0394\\-0.169\\+0.520\\-1.03\\+0.900 {\ell_0} \end{array} \right)</math>.<!-------------------------------------------------------------------------------->
::<math>\displaystyle \left( \begin{array}{c} C_{1,0}\\C_{1,1}\\C_{1,2}\\C_{1,3}\\C_{2,0}\\C_{2,1}\\C_{2,2}\\C_{2,3}\\ S \end{array} \right) = \frac{m_B \; g}{\ell_0}  \left( \begin{array}{l}  +9.716 {{10}^{-4}}\\+0.00389\\+0.0\\-0.250\\+0.0394\\-0.169\\+0.520\\-1.03\\+0.900 {\ell_0} \end{array} \right)</math>.
 
 
{{MyCodeBlock|title=Solving
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/* solving */
D : ratsimp(determinant(AA))$
[ P, L, U] : ratsimp(get_lu_factors(lu_factor(AA)))$
cc : ratsimp(linsolve_by_lu(AA,bb)[1])$
sol : makelist(ICs[i] = cc[i][1],i,1,8)$
</syntaxhighlight>
</syntaxhighlight>
}}
}}


==tmp==
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Post-Processing
|text=
Und die Ergebnisse können wir uns anschauen ...
Und die Ergebnisse können wir uns anschauen ...


Zeile 260: Zeile 337:
==== ... für die Lager-Reaktionskräfte ====
==== ... für die Lager-Reaktionskräfte ====
<math>\begin{array}{ll} {{M}_{C}}=0.227\cdot {{\ell}_{0}} \cdot g \cdot {{m}_{B}},\\{{C}_{z}}=-0.030\cdot g\cdot {{m}_{B}} \end{array}</math>
<math>\begin{array}{ll} {{M}_{C}}=0.227\cdot {{\ell}_{0}} \cdot g \cdot {{m}_{B}},\\{{C}_{z}}=-0.030\cdot g\cdot {{m}_{B}} \end{array}</math>
|code=
<syntaxhighlight lang="lisp" line start=1>
/* bearing forces and moments */
reactForces: [A[z] = Q[1](0),
              M[A] = K[A]*Phi[1](0),
              B[z] = k[B]*w[2](0),
              C[z] = k[C]*w[2](1),
              M[C] = M[2](1)];


<!-------------------------------------------------------------------------------->
expand(subst(dimless,subst(params,subst(sol, reactForces))));
 
/* plot displacements */
 
fcts: [[ w [1](xi), w [2](xi)],
      [Phi[1](xi),Phi[2](xi)],
      [ M [1](xi), M [2](xi)],
      [ Q [1](xi), Q [2](xi)]];
facts: [1/l[Bez], l[1]/l[Bez], 1/(q[A]*l[1]^2), 1/(q[A]*l[1])];


{{MyCodeBlock|title=Post-Processing
textlabels : ["w(x)/(M[B]*l^2/EI[1])→", "w'(x)/(M[B]*l/EI[1])→", "M(x)/M[B]→", "Q(x)/(M[B]/l[1]→"];
|text=Text
for i: 1 thru 4 do(
|code=
  f : expand(subst(dimless,subst(params,facts[i]*[subst(sol, fcts[i][1]),
<syntaxhighlight lang="lisp" line start=1>
                                                  subst(sol, fcts[i][2])]))),
1+1
  r : subst(params,l[2]/l[1]),                                         
  preamble: if i<=2 then "set yrange [] reverse" else "set yrange []",
  plot2d([[parametric,    t, subst(t,xi,f[1]), [t,0,1]],
          [parametric, 1+r*t, subst(t,xi,f[2]), [t,0,1]]],
                            [legend, "sec. I", "sec. II"],
                            [gnuplot_preamble, preamble],
                            [xlabel, "x/l[1] ->"],
                            [ylabel, textlabels[i]]))$
</syntaxhighlight>
</syntaxhighlight>
}}
}}
Zeile 273: Zeile 373:
<hr/>
<hr/>
'''Links'''
'''Links'''
* ...
* [[Gelöste Aufgaben/Kw51|Aufgabe Kw51]] (Lösung dieser Aufgabe mit dem Ansatz der Finiten Elemente)
* [[Gelöste Aufgaben/Kw52|Aufgabe Kw52]] (Lösung dieser Aufgabe mit dem Ansatz von Rayleigh-Ritz und Lagrange-Multiplikator)
* [[Gelöste Aufgaben/Kw53|Aufgabe Kw53]] (Lösung dieser Aufgabe mit dem Ansatz von Rayleigh-Ritz)


'''Literature'''
'''Literature'''
* ...
* ...

Aktuelle Version vom 31. März 2021, 09:25 Uhr


Aufgabenstellung

Eine Brücke ABC der Masse mB und homogener Biegesteifigkeit EI ist in C gelenkig gelagert und in A sowie B mit einem Seil verbunden. Das undehnbare Seil wird dabei über eine kleine Rolle (Radius r ≪ ℓ) in D haftungsfrei geführt. In Punkt C ist die Brücke über eine Drehfeder der Steifigkeit KC mit dem Lager verbunden. In A steht eine Person der Masse mA.


Lageplan

Geben Sie die analytische Lösung für ein Euler-Bernoulli-Modell der Brücke in dimensiuonslosen Koordinaten an.

Ermitteln Sie für dabei die Verläufe der Schnittgrößen und Verschiebungen im Balken für diese Parameter:

Lösung mit Maxima

Die Aufgabe ist ein klassisches Randwertproblem mit

  1. zwei Gebieten, in denen ein Euler-Bernoulli-Balken in AB und BC durch eine Streckenlast q0 belastet ist und somit durch die Differentialbeziehung
    beschrieben wird;
  2. Rand- und Übergangsbedingungen in den Punkten A, B, C.

Die Biegesteifigkeit des Balkens ist konstant (nicht von "x" abhängig), wir können als den Index "i" beim Flächenmoment also weglassen.

Wir verwenden ein x bzw. ξ als Koordinaten in beiden Gebieten, in der Übersicht sieht das Randwertproblem also so aus:

Rand
A
Bereich IÜbergang
B
Bereich IIRand
C

Zusätzlich zum "klassischen" Randwertproblem haben wir hier eine geometrische Zwangsbedingung: Durch die Umlenkrolle ist die vertikale Bewegung in den Punkten A und B gekoppelt!

Wie? Das machen wir uns an einem Bild klar:

Geometrische Zwangsbedingung

In linearer Näherung ist der Zusammenhang zwischen der Seil-Abwicklung ΔsA und der vertial-Verschibung WA in Punkt A

.

Analog gilt für Punkt B

.

Da das Seil undehnbar ist, gilt außerdem

Diese zusätzliche Bedingung ist das entscheidende Element dieser Aufgabe.

Header

In dieser Lösung arbeiten wir mit dimensionslosen Koordinaten für die unabhängige Koordinate x und die abhängige Koordinate w(x).


/*******************************************************/
/* MAXIMA script                                       */
/* version: wxMaxima 18.10.1                           */
/* author: Andreas Baumgart                            */
/* last updated: 2019-02-12                            */
/* ref: TM-C, Labor 1, dimensionless representation    */
/* description: finds the analytic solution for        */
/*              lab problem #1                         */
/*******************************************************/




Declarations

Die Streckenlast auf den Balken ist natürlich seine Gewichtskraft, also

.
Geometrie
Geometrische Zusammenhänge müssen wir auch anschreiben, so für

mit

.

Und wir wählen noch eine Bezugslänge Bez zu

aus der tabellierten Lösung für einen Kragbalken der Länge und einer Endlast mB g. Das erscheint nicht sonderlich schlau - es gibt Standard -Lastfälle die besser passen würden. Aber dann schleppen wir die ganze Zeit Koeffizienten wie z.B. 5/384 mit durch die Rechnungen - das macht die Arbeit unübersichtlich.


/* declare variational variables - see 6.3 Identifiers */
declare("Δs", alphabetic);
declare( "ϕ", alphabetic);
declare( "ℓ", alphabetic);

/* system parameters                                  */
params: [K[C]     = kappa*EI/ℓ[0],
         q[0]     = m[B]*g/ℓ[0],
         m[A]     = theta*m[B],
         theta    = 1/5,
         kappa    = 5];

geometry: [alpha[A] = 30*%pi/180,
           alpha[B] = 60*%pi/180,
           ℓ[1]     = ℓ[0]-ℓ[2],
           Δs[A]    = W[A]*cos(%pi/2-alpha[A]),
           Δs[B]    = W[B]*cos(%pi/2-alpha[B]),
           tan(alpha[B]) = H/ℓ[2],
           tan(alpha[A]) = H/ℓ[0],
           xi[1]    = ℓ[1]/ℓ[0],
           xi[2]    = ℓ[2]/ℓ[0]];
geometry: ratsimp(solve(geometry,[alpha[A],alpha[B],ℓ[1],ℓ[2],Δs[A],Δs[B],H,xi[1],xi[2]])[1]);

/* reference length selected:                         */
dimless : ℓ[Bez] = 1/3*m[B]*g*ℓ[0]^3/(EI); /*cantilevered*/




Integration Of Differential Equation

In Bereich I und II gilt dieselbe Bewegungs-Differentialgleichung

,

die wir durch Integration lösen und dann bereichsweise an Rand- und Übergangsbedingungen anpassen. Diese Aufgabe wird etwas übersichtlicher, wenn wir die Auslenkung w und die Ortskoordinate x dimensionslos machen. So wählen wir:

und setzten für die Bezugslänge die Auslenkung eines Kragbalkens unter konstanter Streckenlast (hier qA) an.

Zusätzlich wählen wir eine unabhängige, dimensionslose Ortskoordinaten für die Bereich I und II, die ihren Ursprung in den Punkt A hat:

Mit den weiteren Gleichungen für

finden wir für Bereich i:

.

/******************************************************/
/* Boundary Value Problem Formulation                 */
/* part I: field                                      */
dgl : EI*ℓ[Bez]*diff(w(xi),xi,4)/ℓ[0]^4 = q[0];
dgl: subst(dimless,dgl);
 
/* generic solution */
displ : solve(integrate(integrate(integrate(integrate(dgl,xi),xi),xi),xi),w(xi));
sections: [[i=1, %c4=C[1,0], %c3=C[1,1], %c2=C[1,2], %c1=C[1,3]],
           [i=2, %c4=C[2,0], %c3=C[2,1], %c2=C[2,2], %c1=C[2,3]]];
 
/* section I */
define(  w[1](xi),  ratsimp(subst(sections[1],subst(displ,ℓ[Bez]*w(xi)))));
define(Phi[1](xi),      diff(w[1](xi),xi  )/ℓ[0]^1);
define(  M[1](xi), -EI*diff(w[1](xi),xi,2)/ℓ[0]^2);
define(  Q[1](xi), -EI*diff(w[1](xi),xi,3)/ℓ[0]^3);
 
/* section II */
define(  w[2](xi),  ratsimp(subst(sections[2],subst(displ,ℓ[Bez]*w(xi)))));
define(Phi[2](xi),      diff(w[2](xi),xi  )/ℓ[0]);
define(  M[2](xi), -EI*diff(w[2](xi),xi,2)/ℓ[0]^2);
define(  Q[2](xi), -EI*diff(w[2](xi),xi,3)/ℓ[0]^3);




Boundary Conditions

Für die 2*4 = 8 Integrationskonstanten

suchen wir jetzt die passenden Gleichungen aus Rand- und Übergangsbedingungen. Und zusätzlich - und das ist hier besonders - brauchen wir noch eine Gleichung für die Seilkraft S.

Zur besseren Übersicht nennen wir die Schnitt-Momente und -Kräfte nach den jeweiligen Knotenpunkten A, B, C und fügen als Index ein + / - hinzu, um die Seite (+: rechts vom Knoten, -: links vom Knoten) zu kennzeichnen.

Die Normalkräfte N brauchen wir dabei nicht auszuwerten.

Aus Rand "A"

Geometrische Randbedingungen
  • keine

Kraft- und Momenten-Randbedingungen

Aus Übergang "B"

Geometrische Randbedingungen

Kraft- und Momenten-Randbedingungen

Aus Rand "C"

Geometrische Randbedingungen

Kraft- und Momenten-Randbedingungen

Aus Rand "D" (Umlenkrolle für das Seil)

Kinematische Verträglichkeit für das Abwickeln des Seils

Ein bisschen exotisch ist, dass wir nun neun Unbekannte haben, nämlich

Aber mit den Randbedingungen oben steht uns nun ein vollständiges Gleichungssystem für neun Unbekannte - die Integrationskonstanten und S - zur Verfügung.


/******************************************************/
/* Boundary Value Problem Formulation                 */
/* part II: boundary conditions                       */
node[A]: [ Q[1](0)+m[A]*g-S*sin(alpha[A]) = 0,
           M[1](0) = 0];
node[B]: [ w[1](ℓ[1]/ℓ[0]) = w[2](ℓ[1]/ℓ[0]),
           Phi[1](ℓ[1]/ℓ[0]) = Phi[2](ℓ[1]/ℓ[0]),
          -Q[1](ℓ[1]/ℓ[0]) - S*sin(alpha[B]) +Q[2](ℓ[1]/ℓ[0]) = 0,
          -M[1](ℓ[1]/ℓ[0]) + M[2](ℓ[1]/ℓ[0]) = 0];
node[C]: [ w[2](1) = 0,
          -M[2](1) + K[C]*Phi[2](1) = 0];
node[D]: subst([W[A]=w[1](0), W[B]=w[1](ℓ[1]/ℓ[0])] ,subst(geometry,[Δs[A]+Δs[B] = 0]));

BCs : subst(dimless,append(node[A],node[B],node[C],node[D]));        
scale: [1/ℓ[0], -1/ℓ[0]^2, EI/ℓ[0]^4, EI/ℓ[0]^3,
        1, 1/ℓ[0]^2, EI/ℓ[0]^4, 1/ℓ[0]^2,
        EI/ℓ[0]^4];
BCs : subst(geometry,subst(params,expand(scale*BCs)));




Prepare for Solver

Das Gleichungssystem wollen wir als

schreiben, also - hier nach Einsetzen der System-Parameter:

.

/* integration constants = unknowns */
ICs : [C[1,0],C[1,1],C[1,2],C[1,3],C[2,0],C[2,1],C[2,2],C[2,3]];
ACM: augcoefmatrix(BCs,ICs);
/* system matrix and rhs */
AA :   submatrix(ACM,9);
bb : - col(ACM,9);
/* print OLE */
print(subst(params,AA),"*",x,"=",subst(params,bb));




Solving

Das Lösen des Gleichungssystems liefert dann

.

/* solving */
D : ratsimp(determinant(AA))$
[ P, L, U] : ratsimp(get_lu_factors(lu_factor(AA)))$
cc : ratsimp(linsolve_by_lu(AA,bb)[1])$
sol : makelist(ICs[i] = cc[i][1],i,1,8)$




Post-Processing

Und die Ergebnisse können wir uns anschauen ...

... für w(x):

Biegelinie w(x)

... für Φ(x):

Kippung w'(x)

... für M(x):

Biegemoment M(x)

... für Q(x):

Querkraft Q(x)

... für die Lager-Reaktionskräfte


/* bearing forces and moments */
reactForces: [A[z] = Q[1](0),
              M[A] = K[A]*Phi[1](0),
              B[z] = k[B]*w[2](0),
              C[z] = k[C]*w[2](1),
              M[C] = M[2](1)];

expand(subst(dimless,subst(params,subst(sol, reactForces))));

/* plot displacements */

fcts: [[ w [1](xi), w [2](xi)],
       [Phi[1](xi),Phi[2](xi)],
       [ M [1](xi), M [2](xi)],
       [ Q [1](xi), Q [2](xi)]];
facts: [1/l[Bez], l[1]/l[Bez], 1/(q[A]*l[1]^2), 1/(q[A]*l[1])];

textlabels : ["w(x)/(M[B]*l^2/EI[1])→", "w'(x)/(M[B]*l/EI[1])→", "M(x)/M[B]→", "Q(x)/(M[B]/l[1]→"];
for i: 1 thru 4 do(
  f : expand(subst(dimless,subst(params,facts[i]*[subst(sol, fcts[i][1]),
                                                  subst(sol, fcts[i][2])]))),
  r : subst(params,l[2]/l[1]),                                          
  preamble: if i<=2 then "set yrange [] reverse" else "set yrange []",
  plot2d([[parametric,     t, subst(t,xi,f[1]), [t,0,1]],
          [parametric, 1+r*t, subst(t,xi,f[2]), [t,0,1]]],
                             [legend, "sec. I", "sec. II"],
                             [gnuplot_preamble, preamble],
                             [xlabel, "x/l[1] ->"],
                             [ylabel, textlabels[i]]))$





Links

  • Aufgabe Kw51 (Lösung dieser Aufgabe mit dem Ansatz der Finiten Elemente)
  • Aufgabe Kw52 (Lösung dieser Aufgabe mit dem Ansatz von Rayleigh-Ritz und Lagrange-Multiplikator)
  • Aufgabe Kw53 (Lösung dieser Aufgabe mit dem Ansatz von Rayleigh-Ritz)

Literature

  • ...