Gelöste Aufgaben/Kw51: Unterschied zwischen den Versionen

Aus numpedia
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:
[[Category:Randwertproblem]]
[[Category:Randwertproblem]]
[[Category:Biege-Belastung]]
[[Category:Biege-Belastung]]
[[Category:Lagrange-Multiplikator]]
[[Category:Euler-Bernoulli-Balken]]
[[Category:Euler-Bernoulli-Balken]]
[[Category:Finite-Elemente-Methode‎]]
[[Category:Rayleigh-Ritz-Prinzip]]
[[Category:Maxima‎]]
[[Category:Maxima‎]]


Zeile 27: Zeile 28:
Alle Überlegungen zur Geometrie des Systems übernehmen wir.
Alle Überlegungen zur Geometrie des Systems übernehmen wir.


==tmp==
<!-------------------------------------------------------------------------------->


{{MyCodeBlock|title=Header
|text=
Für die Lösung nutzen wir hier das Ritz-Verfahren mit einer Variante:
Für die Lösung nutzen wir hier das Ritz-Verfahren mit einer Variante:


* die geometrische Zwangsbedingung für die Punkte ''A, B'' durch das Seil erfassen wir durch einen [https://de.wikipedia.org/wiki/Lagrange-Multiplikator Lagrange-Multiplikator].<!-------------------------------------------------------------------------------->
* die geometrische Zwangsbedingung für die Punkte ''A, B'' durch das Seil erfassen wir durch einen [https://de.wikipedia.org/wiki/Lagrange-Multiplikator Lagrange-Multiplikator].
 
{{MyCodeBlock|title=Header
|text=Text
|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 rayleigh-ritz with Lagragian */
/*              Multiplyers for lab problem #3        */
/*******************************************************/
</syntaxhighlight>
</syntaxhighlight>
}}
}}
==tmp==


<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Declarations
|text=
Wir arbeiten mit den selben Parametern und Bezugslängen, wie in [[Gelöste Aufgaben/Kw50|Kw50]].
Wir arbeiten mit den selben Parametern und Bezugslängen, wie in [[Gelöste Aufgaben/Kw50|Kw50]].


Insbesondere gilt auch hier wieder
Insbesondere gilt auch hier wieder


<math>\displaystyle W_B = -\frac{W_A}{\sqrt{3}}</math>
::<math>\displaystyle W_B = -\frac{W_A}{\sqrt{3}}</math>.
|code=
<syntaxhighlight lang="lisp" line start=1>
/* declare variational variables - see 6.3 Identifiers */
declare("Δs", alphabetic);
declare( "ϕ", alphabetic); /* = dw/dx*/
declare( "Π", alphabetic); /* elastic potential */
declare( "ℓ", alphabetic);
declare( "λ", alphabetic);
declare( "Λ", alphabetic);
 
assume(ℓ[0]>0);
 
/* 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,
          ℓ[0]    = ℓ[1]+ℓ[2],
          Δs[A]    = W[A]*sin(alpha[A]),
          Δs[B]    = W[B]*sin(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]);


{{MyCodeBlock|title=Declarations
/* reference length selected:                        */
|text=Text
dimless : ℓ[Bez] = 1/3*m[B]*g*ℓ[0]^3/(EI); /*cantilevered*/
|code=
<syntaxhighlight lang="lisp" line start=1>
1+1
</syntaxhighlight>
</syntaxhighlight>
}}
}}
==tmp==


<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Formfunctions
|text=
Nach "Ritz" wählen wir Trial-Functions über die gesamte Stablänge und müssen uns überlegen, welchen Aufwand wir dafür treiben wollen.
Nach "Ritz" wählen wir Trial-Functions über die gesamte Stablänge und müssen uns überlegen, welchen Aufwand wir dafür treiben wollen.


Intuitiv wählen wir  für jeden Punkt ''A, B, C'' jeweils eine Koordinate, hier
Intuitiv wählen wir  für jeden Punkt ''A, B, C'' jeweils eine Koordinate, hier


<math>\begin{array}{l}w(0) = W_A\\w(\ell_1) = W_B\\\displaystyle \frac{dw}{dx}|_{x=\ell} = \Phi_C\end{array}</math>.
::<math>\begin{array}{l}w(0) = W_A\\w(\ell_1) = W_B\\\displaystyle \frac{dw}{dx}|_{x=\ell} = \Phi_C\end{array}</math>.


und brauchen - zusammen der geometrischen Randbedingung ''w(ℓ)=0'' ein Polynom mit vier freien Parametern - also ein Polynom dritten Grades.
und brauchen - zusammen der geometrischen Randbedingung ''w(ℓ)=0'' ein Polynom mit vier freien Parametern - also ein Polynom dritten Grades.
Zeile 69: Zeile 107:
Mit dem Ansatz für die Formfunktion
Mit dem Ansatz für die Formfunktion


<math>\displaystyle \tilde{w}(x) = \sum_{i=0}^3 C_i\cdot x^i</math>
::<math>\displaystyle \tilde{w}(x) = \sum_{i=0}^3 C_i\cdot x^i</math>


kommt aus den Bedingungen oben dann
kommt aus den Bedingungen oben dann


<math>\displaystyle \tilde{w}( \xi) = \sum_{i=1}^3 Q_i \cdot \phi_i(\xi)</math>
::<math>\displaystyle \tilde{w}( \xi) = \sum_{i=1}^3 Q_i \cdot \phi_i(\xi)</math>


mit
mit


<math>\underline{Q} = \left(\begin{array}{c}W_A\\W_B\\\Phi_C \end{array}\right)</math>.[[Datei:Kw51.png|mini|Trial-Functions]]Und so sehen sie aus, unsere drei [[Sources/Lexikon/Trial-Function|Trial-Functions]]:
::<math>\underline{Q} = \left(\begin{array}{c}W_A\\W_B\\\Phi_C \end{array}\right)</math>.[[Datei:Kw51.png|mini|Trial-Functions]]Und so sehen sie aus, unsere drei [[Sources/Lexikon/Trial-Function|Trial-Functions]]:


Für die Formfunktion gilt aber immer die geometrische Zwangsbedingung:
Für die Formfunktion gilt aber immer die geometrische Zwangsbedingung:


<math>\displaystyle W_B = -\frac{W_A}{\sqrt{3}}</math><!-------------------------------------------------------------------------------->
::<math>\displaystyle W_B = -\frac{W_A}{\sqrt{3}}</math>.
 
{{MyCodeBlock|title=Formfunctions
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/* coordinates                                        */
Q : [W[A],W[B],Phi[C],λ];
/* raw trial function                                */
v(x) := sum(C[i]*x^i,i,0,3);
 
/* formfunctions                                      */
const: [subst([x= 0  ],      v(x)  ) = W[A],
        subst([x=ℓ[1]],      v(x)  ) = W[B],
        subst([x=ℓ[0]], diff(v(x),x))= Phi[C],
        subst([x=ℓ[0]],      v(x)  ) =  0  ];
trials : expand(subst(solve(subst(geometry,const), makelist(C[i],i,0,3))[1],v(x)));
phi : makelist(ratsimp(coeff(trials,Q[i])),i,1,3);
</syntaxhighlight>
</syntaxhighlight>
}}
}}
==tmp==


<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Equilibrium Conditions
|text=
Die Potentiale aus Elastischer Energien und Arbeitsfunktion der Gewichtskräfte sind
Die Potentiale aus Elastischer Energien und Arbeitsfunktion der Gewichtskräfte sind


<math>\begin{array}{lll} U  =& &\displaystyle \frac{1}{2}\cdot \int_0^\ell E I\; w''^2 \; dx + \frac{1}{2}\cdot K_C \cdot \Phi_C^2\\    &-&\displaystyle \int_0^\ell q_0 \; w \; dx - m_A\,g\; W_A \end{array}</math>.
::<math>\begin{array}{lll} U  =& &\displaystyle \frac{1}{2}\cdot \int_0^\ell E I\; w''^2 \; dx + \frac{1}{2}\cdot K_C \cdot \Phi_C^2\\    &-&\displaystyle \int_0^\ell q_0 \; w \; dx - m_A\,g\; W_A \end{array}</math>.


Nach dem Prinzip vom Minimum der Potentiellen Energie ist das System im Gleichgewicht, wenn das Potential ''U'' des Systems
Nach dem Prinzip vom Minimum der Potentiellen Energie ist das System im Gleichgewicht, wenn das Potential ''U'' des Systems


<math>\displaystyle \frac{dU}{dQ_i} = 0 \text{ für } Q_i \in \left( W_A, W_B, \Phi_C\right)</math>
::<math>\displaystyle \frac{dU}{dQ_i} = 0 \text{ für } Q_i \in \left( W_A, W_B, \Phi_C\right)</math>
 
erfüllt. Und sich zusätzlich an die Zwangsbedingung hält!<!-------------------------------------------------------------------------------->


{{MyCodeBlock|title=Equilibrium Conditions
erfüllt. Und sich zusätzlich an die Zwangsbedingung hält!
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/******************************************************/
/* Boundary Value Problem Formulation                */
/* elastic and gravitational potential                */
 
PMPE : [Π[P] = 1/2*integrate(EI*'diff(w(x),x,2)^2, x,0,ℓ[0]) + 1/2*K[C]*Phi[C]^2,
        A[P] =  integrate(q[0]*w(x), x,0,ℓ[0]) + m[A]*g*W[A]];
</syntaxhighlight>
</syntaxhighlight>
}}
}}
==tmp==


Das könnten wir mit dem Konzept der Lagrange-Multiplikatoren erfassen. Dafür schreiben wir
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Geometric Constraints
|text=
Das können wir mit dem Konzept der Lagrange-Multiplikatoren erfassen. Dafür schreiben wir


<math>\Lambda (\underline{Q})  = U + \lambda\cdot \underbrace{\left( \Delta s_A + \Delta s_B\right)}_{\displaystyle \equiv \sqrt{3}\, W_B+W_A} </math>
::<math>\Lambda (\underline{Q})  = U + \lambda\cdot \underbrace{\left( \Delta s_A + \Delta s_B\right)}_{\displaystyle \equiv \sqrt{3}\, W_B+W_A} </math>


mit dem Lagrange-Multiplikator ''λ''. Die neuen Gleichgewichtsbedingungen lauten nun
mit dem Lagrange-Multiplikator ''λ''. Die neuen Gleichgewichtsbedingungen lauten nun


<math>\displaystyle \frac{d\Lambda}{dQ_i} = 0 \text{ für alle } Q_i </math>
::<math>\displaystyle \frac{d\Lambda}{dQ_i} = 0 \text{ für alle } Q_i </math>


und wir erhalten die vier Gleichungen
und wir erhalten die vier Gleichungen


<math>\begin{array}{cc} \displaystyle \frac{\lambda }{2}-\frac{49 {m_B} g}{120}-\frac{17 {{\Phi}_C}\, EI}{{\ell_{0}^{2}}}-\frac{108 {W_B}\, EI}{{\ell_{0}^{3}}}+\frac{19 {W_A}\, EI}{{\ell_{0}^{3}}}&=0\\ \displaystyle \frac{\sqrt{3} \lambda }{2}-\frac{9 {m_B} g}{8}+\frac{135 {{\Phi}_C}\, EI}{{\ell_{0}^{2}}}+\frac{729 {W_B}\, EI}{{\ell_{0}^{3}}}-\frac{108 {W_A}\, EI}{{\ell_{0}^{3}}}&=0\\
::<math>\begin{array}{cc} \displaystyle \frac{\lambda }{2}-\frac{49 {m_B} g}{120}-\frac{17 {{\Phi}_C}\, EI}{{\ell_{0}^{2}}}-\frac{108 {W_B}\, EI}{{\ell_{0}^{3}}}+\frac{19 {W_A}\, EI}{{\ell_{0}^{3}}}&=0\\ \displaystyle \frac{\sqrt{3} \lambda }{2}-\frac{9 {m_B} g}{8}+\frac{135 {{\Phi}_C}\, EI}{{\ell_{0}^{2}}}+\frac{729 {W_B}\, EI}{{\ell_{0}^{3}}}-\frac{108 {W_A}\, EI}{{\ell_{0}^{3}}}&=0\\
\displaystyle -\frac{{\ell_0}\, {m_B} g}{12}+\frac{33 {{\Phi}_C}\, EI}{{\ell_0}}+\frac{135 {W_B}\, EI}{{\ell_{0}^{2}}}-\frac{17 {W_A}\, EI}{{\ell_{0}^{2}}}&=0\\
\displaystyle -\frac{{\ell_0}\, {m_B} g}{12}+\frac{33 {{\Phi}_C}\, EI}{{\ell_0}}+\frac{135 {W_B}\, EI}{{\ell_{0}^{2}}}-\frac{17 {W_A}\, EI}{{\ell_{0}^{2}}}&=0\\
\displaystyle \frac{\sqrt{3}\, {W_B}}{2}+\frac{{W_A}}{2}&=0 \end{array}</math>
\displaystyle \frac{\sqrt{3}\, {W_B}}{2}+\frac{{W_A}}{2}&=0 \end{array}</math>.
|code=
<syntaxhighlight lang="lisp" line start=1>
/* gemetric constraints                              */
trials: w(x) = sum(Q[i]*phi[i],i,1,3);
print('phi = expand(subst([x=ℓ[0]*xi],phi)))$


.<!-------------------------------------------------------------------------------->
plot2d(ratsimp(subst([x = xi*ℓ[0]],phi)*[1,1,1/ℓ[0]]), [xi,0,1],
            [legend, "W[A]","W[B]","Φ[C]"], [xlabel, "x/ℓ →"], [ylabel, "ϕ[i] →"]);


{{MyCodeBlock|title=Geometric Constraints
PMPE: subst(trials, PMPE);
|text=Text
PMPE: ev(PMPE,nouns);
|code=
 
<syntaxhighlight lang="lisp" line start=1>
U: expand(subst(PMPE,Π[P] - A[P]));
1+1
 
/* Lagrange-Function                                  */
Λ : U + subst(geometry,λ*(Δs[A]+Δs[B]));
 
/* Equilibrium Conditions                            */
eom : subst(params,makelist( diff(Λ,Q[i])=0, i,1,4));
</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} W_A\\W_B\\\Phi_C\\\lambda \end{array}\right) = \frac{m_B\, g\, \ell_0^3}{3 \; E I}  \left(\begin{array}{l}-3.78 10^{-5}\\+2.18 10^{-5}\\\displaystyle +0.00747 \frac{1}{\ell_0}\\\displaystyle +2.71 \frac{EI}{\ell_0^3} \end{array} \right)</math>.<!-------------------------------------------------------------------------------->
::<math>\displaystyle \left(\begin{array}{c} W_A\\W_B\\\Phi_C\\\lambda \end{array}\right) = \frac{m_B\, g\, \ell_0^3}{3 \; E I}  \left(\begin{array}{l}-3.78 10^{-5}\\+2.18 10^{-5}\\\displaystyle +0.00747 \frac{1}{\ell_0}\\\displaystyle +2.71 \frac{EI}{\ell_0^3} \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                                            */
sol: float(solve(eom,Q)[1]);
</syntaxhighlight>
</syntaxhighlight>
}}
}}
==tmp==


<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Post-Processing
|text=
Und die Ergebnisse können wir uns anschauen ...
Und die Ergebnisse können wir uns anschauen ...
==== ... für w(x): ====
==== ... für w(x): ====
Zeile 161: Zeile 226:
==== ... für Q(x): ====
==== ... für Q(x): ====
[[Datei:Kw51-14.png|mini|Querkraft ''Q(x)''|alternativtext=|ohne]]
[[Datei:Kw51-14.png|mini|Querkraft ''Q(x)''|alternativtext=|ohne]]
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Post-Processing
|text=Text
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/* Post-Processing                                    */
w : subst([x=xi*ℓ[0]],subst(geometry,subst(sol, sum(Q[j]*phi[j],j,1,3))));
 
fcts: [        w            ,
          diff(w,xi  )/ℓ[0]  ,
      -EI*diff(w,xi,2)/ℓ[0]^2,
      -EI*diff(w,xi,3)/ℓ[0]^3];
fcts: float(subst(geometry,expand(fcts)))$
facts: [1/ℓ[Bez], ℓ[0]/ℓ[Bez], 1/(m[B]*g*ℓ[0]), 1/(m[B]*g)];
textlabels : ["← w(x)/ℓ[Bez]", "← w'(x)/(ℓ[Bez]/ℓ[0]) →", "M(x)/(m[B]*g*ℓ) →", "Q(x)/(m[B]g →"];
for i: 1 thru 4 do(
  f : expand(subst(dimless,facts[i]*fcts[i])),
  preamble: if i<=2 then "set yrange [] reverse" else "set yrange []",
  plot2d(f, [xi,0,1], [legend, false],
                      [gnuplot_preamble, preamble],
                      [xlabel, "x/ℓ →"],
                      [ylabel, textlabels[i]]))$
</syntaxhighlight>
</syntaxhighlight>
}}
}}
<table class="wikitable" style="background-color:white; float: left;  margin-right:14px;">
<tr><th></th><th></th></tr>
<tr><td></td><td></td></tr>
</table>


<hr/>
<hr/>

Aktuelle Version vom 31. März 2021, 06:07 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 (wie Kw50)

Geben Sie die Lösung für ein Euler-Bernoulli-Modell der Brücke mit dem Verfahren von Rayleigh-Ritz (EBB) an - hier mit Lagrange-Multiplikator für die geometrische Zwangsbedingung.

Dies ist eine Näherungslösung zu Kw50.

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

Lösung mit Maxima

In dieser Aufgabe berechnen wir eine Näherungslösung nach dem Verfahren von Rayleigh-Ritz (EBB) zu Kw50.

Alle Überlegungen zur Geometrie des Systems übernehmen wir.


Header

Für die Lösung nutzen wir hier das Ritz-Verfahren mit einer Variante:

  • die geometrische Zwangsbedingung für die Punkte A, B durch das Seil erfassen wir durch einen Lagrange-Multiplikator.

/*******************************************************/
/* 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 rayleigh-ritz with Lagragian */
/*              Multiplyers for lab problem #3         */
/*******************************************************/




Declarations

Wir arbeiten mit den selben Parametern und Bezugslängen, wie in Kw50.

Insbesondere gilt auch hier wieder

.

/* declare variational variables - see 6.3 Identifiers */
declare("Δs", alphabetic);
declare( "ϕ", alphabetic); /* = dw/dx*/
declare( "Π", alphabetic); /* elastic potential */
declare( "ℓ", alphabetic);
declare( "λ", alphabetic);
declare( "Λ", alphabetic);

assume(ℓ[0]>0);

/* 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,
           ℓ[0]     = ℓ[1]+ℓ[2],
           Δs[A]    = W[A]*sin(alpha[A]),
           Δs[B]    = W[B]*sin(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*/




Formfunctions

Nach "Ritz" wählen wir Trial-Functions über die gesamte Stablänge und müssen uns überlegen, welchen Aufwand wir dafür treiben wollen.

Intuitiv wählen wir  für jeden Punkt A, B, C jeweils eine Koordinate, hier

.

und brauchen - zusammen der geometrischen Randbedingung w(ℓ)=0 ein Polynom mit vier freien Parametern - also ein Polynom dritten Grades.

Mit dem Ansatz für die Formfunktion

kommt aus den Bedingungen oben dann

mit

.
Trial-Functions
Und so sehen sie aus, unsere drei Trial-Functions:

Für die Formfunktion gilt aber immer die geometrische Zwangsbedingung:

.

/* coordinates                                        */
Q : [W[A],W[B],Phi[C],λ];
/* raw trial function                                 */
v(x) := sum(C[i]*x^i,i,0,3);

/* formfunctions                                      */
const: [subst([x= 0  ],      v(x)  ) = W[A],
        subst([x=ℓ[1]],      v(x)  ) = W[B],
        subst([x=ℓ[0]], diff(v(x),x))= Phi[C],
        subst([x=ℓ[0]],      v(x)  ) =  0  ];
trials : expand(subst(solve(subst(geometry,const), makelist(C[i],i,0,3))[1],v(x)));
phi : makelist(ratsimp(coeff(trials,Q[i])),i,1,3);




Equilibrium Conditions

Die Potentiale aus Elastischer Energien und Arbeitsfunktion der Gewichtskräfte sind

.

Nach dem Prinzip vom Minimum der Potentiellen Energie ist das System im Gleichgewicht, wenn das Potential U des Systems

erfüllt. Und sich zusätzlich an die Zwangsbedingung hält!


/******************************************************/
/* Boundary Value Problem Formulation                 */
/* elastic and gravitational potential                */

PMPE : [Π[P] = 1/2*integrate(EI*'diff(w(x),x,2)^2, x,0,ℓ[0]) + 1/2*K[C]*Phi[C]^2,
        A[P] =  integrate(q[0]*w(x), x,0,ℓ[0]) + m[A]*g*W[A]];




Geometric Constraints

Das können wir mit dem Konzept der Lagrange-Multiplikatoren erfassen. Dafür schreiben wir

mit dem Lagrange-Multiplikator λ. Die neuen Gleichgewichtsbedingungen lauten nun

und wir erhalten die vier Gleichungen

.

/* gemetric constraints                               */
trials: w(x) = sum(Q[i]*phi[i],i,1,3);
print('phi = expand(subst([x=ℓ[0]*xi],phi)))$

plot2d(ratsimp(subst([x = xi*ℓ[0]],phi)*[1,1,1/ℓ[0]]), [xi,0,1],
            [legend, "W[A]","W[B]","Φ[C]"], [xlabel, "x/ℓ →"], [ylabel, "ϕ[i] →"]);

PMPE: subst(trials, PMPE);
PMPE: ev(PMPE,nouns);

U: expand(subst(PMPE,Π[P] - A[P]));

/* Lagrange-Function                                  */
Λ : U + subst(geometry,λ*(Δs[A]+Δs[B]));

/* Equilibrium Conditions                             */
eom : subst(params,makelist( diff(Λ,Q[i])=0, i,1,4));




Solving

Das Lösen des Gleichungssystems liefert dann

.

/* Solving                                            */
sol: float(solve(eom,Q)[1]);




Post-Processing

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

... für w(x):

Auslenkung w(x)

... für Φ(x):

Kippwinkel Φ(x)

... für M(x):

Biegemoment M(x)

... für Q(x):

Querkraft Q(x)

/* Post-Processing                                    */
w : subst([x=xi*ℓ[0]],subst(geometry,subst(sol, sum(Q[j]*phi[j],j,1,3))));

fcts: [         w             ,
           diff(w,xi  )/ℓ[0]  ,
       -EI*diff(w,xi,2)/ℓ[0]^2,
       -EI*diff(w,xi,3)/ℓ[0]^3];
fcts: float(subst(geometry,expand(fcts)))$ 
facts: [1/ℓ[Bez], ℓ[0]/ℓ[Bez], 1/(m[B]*g*ℓ[0]), 1/(m[B]*g)];
 
textlabels : ["← w(x)/ℓ[Bez]", "← w'(x)/(ℓ[Bez]/ℓ[0]) →", "M(x)/(m[B]*g*ℓ) →", "Q(x)/(m[B]g →"];
for i: 1 thru 4 do(
  f : expand(subst(dimless,facts[i]*fcts[i])),
  preamble: if i<=2 then "set yrange [] reverse" else "set yrange []",
  plot2d(f, [xi,0,1], [legend, false],
                      [gnuplot_preamble, preamble],
                      [xlabel, "x/ℓ →"],
                      [ylabel, textlabels[i]]))$





Links

  • Aufgabe Kw50 (analytische Lösung dieser Aufgabe)
  • 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

  • ...