Gelöste Aufgaben/DGEB: Unterschied zwischen den Versionen

Aus numpedia
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(26 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Category:Gelöste_Aufgaben]]
[[Category:Anfangswertproblem]]  
[[Category:Anfangswertproblem]]  
[[Category:Maxima]]
[[Category:Maxima]]
Zeile 7: Zeile 8:
In dieser Aufgabe starten wir von "first principles" - hier das [[Werkzeuge/Gleichgewichtsbedingungen/Arbeitsprinzipe der Analytischen Mechanik/Prinzip der virtuellen Verrückungen|Prinzip der virtuellen Verrückungen]] - und entwicklen die Bewegungsgleichunge für einen schlanken Stab unter Langskräft und Biegemoment.
In dieser Aufgabe starten wir von "first principles" - hier das [[Werkzeuge/Gleichgewichtsbedingungen/Arbeitsprinzipe der Analytischen Mechanik/Prinzip der virtuellen Verrückungen|Prinzip der virtuellen Verrückungen]] - und entwicklen die Bewegungsgleichunge für einen schlanken Stab unter Langskräft und Biegemoment.
<onlyinclude>
<onlyinclude>
[[Datei:DGEB-01.png|links|200px|mini|Lageplan.]]
[[Datei:DGEB-01.png|200px|left|mini|Lageplan.]]
Gesucht sind die Differentialgleichungen des statischen Gleichgewichts für den schlanken Stab mit Rechteck-Querschnitt unter Längs- und Querkraft, ausgehend von der Virtuellen Formänderungsenergie ''δΠ''.
Gesucht sind die Differentialgleichungen des statischen Gleichgewichts für den schlanken Stab mit Rechteck-Querschnitt unter Längs- und Querkraft, ausgehend von der Virtuellen Formänderungsenergie ''δΠ''.


Zeile 25: Zeile 26:
zum Einsatz.
zum Einsatz.
|code=
|code=
<syntaxhighlight lang="maxima" line start=1>
<syntaxhighlight lang="lisp" line start=1>
/*******************************************************/
/*******************************************************/
/* MAXIMA script                                      */
/* MAXIMA script                                      */
Zeile 38: Zeile 39:
}}
}}
<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Declarations
{{MyCodeBlock|title=Declarations
|text=
|text=
Zeile 52: Zeile 54:
::<math>\lambda=\frac{E \cdot \nu}{\left( 1-2 \cdot \nu \right) \cdot \left( \nu+1 \right) }, \mu=\frac{E}{2 \cdot \left( \nu+1 \right) }</math>,
::<math>\lambda=\frac{E \cdot \nu}{\left( 1-2 \cdot \nu \right) \cdot \left( \nu+1 \right) }, \mu=\frac{E}{2 \cdot \left( \nu+1 \right) }</math>,


und dem linearen Werkstoffgesetz (Spannungs-Dehnungs-Beziehung / Hook's Gesetz)
und dem linearen Werkstoffgesetz, der [[Sources/Lexikon/Spannungs-Dehnungs-Beziehung (Stress-Strain-Relation)|Spannungs-Dehnungs-Beziehung]] oder "Hook's Gesetz".


::<math>\underline{\underline{E} } = \begin{pmatrix}
::<math>\underline{\underline{E} } = \begin{pmatrix}
Zeile 63: Zeile 65:
\end{pmatrix}</math>.
\end{pmatrix}</math>.


Und schließlich wollen wir die Verzerrungs-Verscheibungs-Beziehung für einen materiellen Punkt ''P'' angeben. Grundlage ist die Verschiebung eines Punkte ''P=[x,y,z]'' und die gesuchten Koeffizienten ''u, v, w'' der Verschiebung in die drei Raumrichtungen
Und schließlich wollen wir die [[Sources/Lexikon/Verzerrungs-Verschiebungs-Beziehung (Strain-Displacement-Relation)||Verzerrungs-Verschiebungs-Beziehung]] für einen materiellen Punkt ''P'' angeben. Grundlage ist die Verschiebung eines Punkte ''P=[x,y,z]'' und die gesuchten Koeffizienten ''u, v, w'' der Verschiebung in die drei Raumrichtungen


::<math>\underline{r}_P</math>,
::<math>\underline{r}_P</math>,
Zeile 79: Zeile 81:
::<math>\displaystyle \frac{d}{dx}(.) := (.)_x, \;\;\frac{d}{dy}(.) := (.)_y, \;\;\frac{d}{dz}(.) := (.)_z,  </math>
::<math>\displaystyle \frac{d}{dx}(.) := (.)_x, \;\;\frac{d}{dy}(.) := (.)_y, \;\;\frac{d}{dz}(.) := (.)_z,  </math>


und erhalten als Verzerrungs-Verscheibungs-Beziehung
und erhalten als [[Sources/Lexikon/Verzerrungs-Verschiebungs-Beziehung (Strain-Displacement-Relation)||Verzerrungs-Verschiebungs-Beziehung]]


::<math>\begin{array}{ll}    {{\varepsilon}_{x,x}}&= u_x \\  {{\varepsilon}_{y,y}}&= v_y \\  {{\varepsilon}_{z,z}}&= w_z \\  {{\varepsilon}_{x,y}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(u_y+v_x \right)\\  {{\varepsilon}_{x,z}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(u_z+w_x \right)\\  {{\varepsilon}_{y,z}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(v_z+w_y \right)\\ \end{array}
::<math>\begin{array}{ll}    {{\varepsilon}_{x,x}}&= u_x \\  {{\varepsilon}_{y,y}}&= v_y \\  {{\varepsilon}_{z,z}}&= w_z \\  {{\varepsilon}_{x,y}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(u_y+v_x \right)\\  {{\varepsilon}_{x,z}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(u_z+w_x \right)\\  {{\varepsilon}_{y,z}}&= \frac{\displaystyle 1}{\displaystyle 2}\left(v_z+w_y \right)\\ \end{array}
Zeile 134: Zeile 136:
{{MyCodeBlock|title=Euler Rotation
{{MyCodeBlock|title=Euler Rotation
|text=
|text=
Wir definieren später ein Modell, bei dem Querschnitte um eine Achse senkrecht zur Papierebene kippen kann. Das beschreiben wir mit der linearisierten Euler-Rotation:
Wir definieren später ein Modell, bei dem Querschnitte um eine Achse senkrecht zur Papierebene kippen kann. Das beschreiben wir mit der linearisierten [[Sources/Lexikon/Euler-Rotation|Euler-Rotation]]:


::<math>{{D}_{2}}\left( \mathit{arg}\right) =\begin{pmatrix}1 & 0 & -\mathit{arg}\\ 0 & 1 & 0\\ \mathit{arg} & 0 & 1\end{pmatrix}</math>,
::<math>{{D}_{2}}\left( \mathit{arg}\right) =\begin{pmatrix}1 & 0 & -\mathit{arg}\\ 0 & 1 & 0\\ \mathit{arg} & 0 & 1\end{pmatrix}</math>,
Zeile 140: Zeile 142:
die für ''arg'' << 1 gilt.
die für ''arg'' << 1 gilt.
|code=
|code=
<syntaxhighlight lang="maxima" line start=1>
<syntaxhighlight lang="lisp" line start=1>
/*******************************************************/
/*******************************************************/
/* kinematics: Euler-rotation about y-Axis */
/* kinematics: Euler-rotation about y-Axis */
Zeile 181: Zeile 183:
::<math>\begin{array}{ll}{{\varepsilon}_{x,y}}&=0\\ {{\varepsilon}_{y,z}}&=0\\ {{\varepsilon}_{y,y}}&=\displaystyle -\frac{{{\varepsilon}_{x,x}}\cdot \lambda}{2\cdot \mu+2\cdot \lambda}\\ {{\varepsilon}_{z,z}}&=\displaystyle -\frac{{{\varepsilon}_{x,x}}\cdot \lambda}{2\cdot \mu+2\cdot \lambda}\end{array}</math>.
::<math>\begin{array}{ll}{{\varepsilon}_{x,y}}&=0\\ {{\varepsilon}_{y,z}}&=0\\ {{\varepsilon}_{y,y}}&=\displaystyle -\frac{{{\varepsilon}_{x,x}}\cdot \lambda}{2\cdot \mu+2\cdot \lambda}\\ {{\varepsilon}_{z,z}}&=\displaystyle -\frac{{{\varepsilon}_{x,x}}\cdot \lambda}{2\cdot \mu+2\cdot \lambda}\end{array}</math>.
|code=
|code=
<syntaxhighlight lang="matlab" line start=1>
<syntaxhighlight lang="lisp" line start=1>


/*******************************************************/
/*******************************************************/
Zeile 220: Zeile 222:


<tr><td><math>\theta(y,z)</math></td><td>...</td><td>eine Funktion, die die Verschiebung der materiellen Punkte des Querschnitts in 'z'-Richtung erfasst</td></tr>
<tr><td><math>\theta(y,z)</math></td><td>...</td><td>eine Funktion, die die Verschiebung der materiellen Punkte des Querschnitts in 'z'-Richtung erfasst</td></tr>
</table>
und mit diesen die Komponenten des Verschiebungsvektors
::<math>\Delta\underline{r}=\left(\begin{array}{c} u -\phi \cdot z\\ \eta(y,z) \\ w+ \theta(y,z) \end{array}\right)</math>.
Für die verformte Struktur können wir die Koordinaten in eine Skizze eintragen, um sie besser zu verstehen:


<table>
<tr><td style="vertical-align:bottom">[[Datei:DGEB-Coord-u-w.png|250px|ohne|mini|Koordinaten ''u, w''.]]</td>
<td style="vertical-align:bottom">[[Datei:DBEB-Coord-phi.png|ohne|mini|Koordinate ''ϕ'']]</td>
</table>
</table>
Besonders die Verschiebung in "x"-Richtung ''z∙ϕ'' durch eine Kippung des Querschnitts schauen wir uns genauer an:
[[Datei:DEGB-Verschiebung-in-x.png|mini|200px|Verscheibung eines materiellen Punktes in ''x''-Richtung.]]
Analog gehen wir für die Variation des Verschiebungsvektors und seiner Koordinaten vor.
|code=
|code=
<syntaxhighlight lang="matlab" line start=1>
<syntaxhighlight lang="lisp" line start=1>
/*******************************************************/
/*******************************************************/
/* coordinates of cross-section displacement and their variations */
/* coordinates of cross-section displacement and their variations */
Zeile 243: Zeile 259:
<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->


== tmp ==
{{MyCodeBlock|title=Virtual Strain Energy
{{MyCodeBlock|title=Virtual Strain Energy
|text=Text
|text=
Jetzt haben wir alles parat, um die Virtuelle Formänderungsenergie hinzuschreiben, nämlich die Spannungen
 
::<math>\underline{\sigma}=\begin{pmatrix}\displaystyle \lambda\cdot \left(  u_x(x) -\phi_x(x) \cdot z-\frac{2\cdot \left( u_x(x) -\phi_x(x)\cdot z\right) \cdot \lambda}{2\cdot \mu+2\cdot \lambda}\right) +2\cdot \left( u_x(x) -\phi_x(x) \cdot z\right) \cdot \mu\\ 0\\ 0\\ 0\\ \displaystyle \frac{\left( \displaystyle  w_x(x) -\phi\left( x\right) \right) \cdot \mu}{2}\\ 0\end{pmatrix}</math>
 
und die Variation der Dehnung, nämlich
 
::<math>\delta\underline{\epsilon} = \begin{pmatrix}\displaystyle \delta u_x(x) -\delta \phi_x(x) \cdot z\\
  \displaystyle  -\frac{\left( \delta u_x(x) -\delta \phi_x(x) \cdot z\right) \cdot \lambda}{2\cdot \mu+2\cdot \lambda}\\
  \displaystyle -\frac{\left( \delta u_x(x) -\delta \phi_x(x) \cdot z\right) \cdot \lambda}{2\cdot \mu+2\cdot \lambda}\\ 0\\ \displaystyle  \frac{\delta w_x(x) -\delta \phi(x)\left( x\right) }{2}\\ 0\end{pmatrix}</math>
 
Damit setzen wir an
 
::<math>\delta\Pi = \displaystyle \int_A \underline{\sigma} \cdot \delta \underline{\epsilon}\;dA</math>
 
Der Ausdruck für die virtuelle Formänderungsenergie ist noch etwas sperrig, aber das gibt sich gleich, wenn wir die Integration über den Querschnitt A ausführen und
 
::<math>A = b\cdot h, \;\;I_y = \displaystyle \frac{b\cdot h^3}{12}</math>
 
setzen.
|code=
|code=
<syntaxhighlight lang="matlab" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/*******************************************************/
/* stresses and strains under assumptions made and displacement-coordinates given */
stress : S = subst(StrainDispl(
                        subst(d[1],Δr)),subst(consequence,
                                  subst(StressStrain,subst(assumptions,Sigma))));
strain :δZ = subst(StrainDispl(subst(d[2],δΔr)),subst(consequence,Epsilon));
 
/* virtual strain energy */
VSE : δΠ = integrate(integrate(expand(
                    subst(strain, subst(stress,
                                        S.δZ
                                            ))
                                    ), y,-b/2,b/2),z,-h/2,h/2);
/* simplify */
VSE : ratsimp(expand(subst(lameConst,subst(geometry, expand(VSE)))));
</syntaxhighlight>
</syntaxhighlight>
}}
}}
<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Timoshenko-Beam
{{MyCodeBlock|title=Timoshenko-Beam
|text=Text
|text=
Dann erhalten wir - sortiert nach den den Bewegungsgleichungen (Feld-Differentialgleichungen) für ''u, w'' und ''ϕ'':
 
::<math>\begin{array}{rc}\delta\Pi =& E\;A \;\;\; u_x \cdot \delta u_x\\+& \displaystyle \frac{1}{4}  G\;A \; \left(w_x-\phi \right) \cdot \delta w_x \\+&\displaystyle \frac{1}{4} G\;A\;\left(\phi-w_x\right)\cdot\delta\phi + E\;I_y\;\phi_x \cdot\delta \phi_x \end{array}</math>.
 
Hier treten Ableitungen nur noch nach der Koordinate ''x'' auf, wir können die Bewegungsgleichungen nun in gewohnter Form mit
 
::<math>\displaystyle \frac{d(.)}{dx} = (.)_x =: (.)'</math>
 
als
 
::<math>\begin{array}{c}E\;A \; u' \cdot \delta u' = 0 \\ \displaystyle \frac{1}{4}  G\;A \; \left(w'-\phi \right) \cdot \delta w' = 0\\ \displaystyle \frac{1}{4} G\;A\;\left(\phi-w'\right)\cdot\delta\phi + E\;I_y\;\phi' \cdot\delta \phi'=0 \end{array}</math>
 
schreiben.
|code=
|code=
<syntaxhighlight lang="matlab" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/*******************************************************/
</syntaxhighlight>
/* first result: general equations of motion incl. Timoshenko-Beam and tension rod */
 
collect : [ δu(x), δw(x), δφ(x)]$
collect: append(collect,diff(collect,x));
 
take: expand(subst(VSE, δΠ));
tmb : ratsimp(makelist(
  coeff(take,collect[i])*collect[i] + coeff(take,collect[i+3])*collect[i+3]=0,
                        i,1,3));
sub : alpha=8*nu+8;
tmb : expand(subst(sub,expand(subst(solve(sub,nu),tmb))));
 
shearModulus: [G = e/(2*(1+nu))];
tmb : expand(subst(solve(shearModulus,nu),tmb));</syntaxhighlight>
}}
}}
<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Euler-Bernoulli-Balken
{{MyCodeBlock|title=Euler-Bernoulli-Balken
|text=Text
|text=
Noch einfacher wird es mit dem Ansatz von Euler-Bernoulli, die mit der zusätzlichen Vereinfachung
 
::<math>\displaystyle \phi (x) = \frac{d w(x)}{d x}\;\;\;</math>bzw.
<math>\displaystyle \delta \phi (x) = \frac{d\; \delta w(x)}{d x}</math>
 
auf
 
::<math>\begin{array}{c} E\;A \; u' \cdot \delta u'=0\\ E\;I_y\; w'' \cdot \delta w''=0\end{array}</math>
 
führt.
|code=
|code=
<syntaxhighlight lang="matlab" line start=1>
<syntaxhighlight lang="lisp" line start=1>
1+1
/*******************************************************/
/* further simplify to Euler - Bernoulli-Hypothesis
  (cross sections to remain perpendicular to neutral fiber (axis)) */
EBhypothesis : [phi(x)=-diff( w(x),x),
                δφ(x)=-diff(δw(x),x)];
 
ebb : expand(subst(EBhypothesis,tmb));
ebb : ev(ebb,nouns);
ebb : expand(subst(sub,expand(subst(solve(sub,nu),ebb))));
ebb : [ebb[1],subst(ebb[2],ebb[3])];
</syntaxhighlight>
</syntaxhighlight>
}}
}}
Zeile 271: Zeile 366:


'''Links'''
'''Links'''
*...
*[https://en.wikipedia.org/wiki/Timoshenko%E2%80%93Ehrenfest_beam_theory|Timoshenko-Beam Timoshenko-Beam on Wikipedia]


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

Aktuelle Version vom 17. April 2021, 05:51 Uhr

Aufgabenstellung

In dieser Aufgabe starten wir von "first principles" - hier das Prinzip der virtuellen Verrückungen - und entwicklen die Bewegungsgleichunge für einen schlanken Stab unter Langskräft und Biegemoment.

Lageplan.

Gesucht sind die Differentialgleichungen des statischen Gleichgewichts für den schlanken Stab mit Rechteck-Querschnitt unter Längs- und Querkraft, ausgehend von der Virtuellen Formänderungsenergie δΠ.

Wir finden so die bekannten Differentialbeziehungen für das Timoshenko / Euler-Bernoulli-Modell eines Balkens.


Lösung mit Maxima

Wie alle zentralen Begriffe der Elastizitätstheorie ineinandergreifen, um die virtuelle Formänderungsenergie für den Euler-Bernoulli-Balken zu ermitteln, zeigt diese Aufgabe.

Header

Hier kommen

zum Einsatz.


/*******************************************************/
/* MAXIMA script                                       */
/* version: wxMaxima 15.08.2                           */
/* author: Andreas Baumgart                            */
/* last updated: 2016-03-27                            */
/* ref: Euler-Bernoulli Beam                           */
/* description: derives the equations of motion for    */
/*              the Timoshenko and EBB beam            */
/*******************************************************/




Declarations

Wir brauchen das volle Instrumentarium der Elastizitätstheorie - angefangen bei einfachen Abkürzungen wie der Querschnittsfläche A bis zu den Flächenmomenten 2. Grades Iy und Iz:

Iy=bh312,Iz=hb312,A=bh

über Lame's Konstante

λ=Eν(12ν)(ν+1),μ=E2(ν+1),

und dem linearen Werkstoffgesetz, der Spannungs-Dehnungs-Beziehung oder "Hook's Gesetz".

E__=(2μ+λλλ000λ2μ+λλ000λλ2μ+λ000000μ000000μ000000μ).

Und schließlich wollen wir die |Verzerrungs-Verschiebungs-Beziehung für einen materiellen Punkt P angeben. Grundlage ist die Verschiebung eines Punkte P=[x,y,z] und die gesuchten Koeffizienten u, v, w der Verschiebung in die drei Raumrichtungen

r_P,

Die Koeffizienten u(x,y,z), v(x,y,z), w(x,y,z) des Ortsvektors rP beschreiben dabei das Verscheibungsfeld des Balkens. Wir erhalten mit den allgemeinen Komponenten u, v und w des Verschiebungsfeldes

r_P=(u(x,y,z)v(x,y,z)w(x,y,z))

die Verzerrungen allgemein zu

εx,x=ddxu(x,y,z)εy,y=ddyv(x,y,z)εz,z=ddzw(x,y,z)εx,y=ddyu(x,y,z)+ddxv(x,y,z)2εx,z=ddzu(x,y,z)+ddxw(x,y,z)2εy,z=ddzv(x,y,z)+ddyw(x,y,z)2.

Damit das "schöner" aussieht,, kürzen wir im Folgenden ab

ddx(.):=(.)x,ddy(.):=(.)y,ddz(.):=(.)z,

und erhalten als |Verzerrungs-Verschiebungs-Beziehung

εx,x=uxεy,y=vyεz,z=wzεx,y=12(uy+vx)εx,z=12(uz+wx)εy,z=12(vz+wy).

Für unser Problem suchen wir jetzt ein konkretes Verschiebungsfeld, das unseren Anforderungen an das Problem genügt.


/*******************************************************/
/* declare variational variables */
declare("δW", alphabetic); /* virtual work */
declare("δA", alphabetic); /* virtual work of implied external forces */
declare("δΠ", alphabetic); /* virtual strain energy */
declare("δu", alphabetic); /* variation of u */
declare("δw", alphabetic);
declare("δφ", alphabetic);
declare("δη", alphabetic);
declare("δθ", alphabetic);
declare("λ" , alphabetic); /* otherwise, this is the lambda fct. */
declare("μ" , alphabetic);
declare("Δr", alphabetic); /*displacement of material point [x,y,z] */
declare("δΔr",alphabetic); /* variation of Δr */
declare("δZ", alphabetic); /* variation of strain */

/*******************************************************/
/* parameters */
/* abbreviate: */
geometry  : [h^3 = 12*I[y]/b, b^3 = 12*I[z]/h, b = A/h];
/* Lame's Constants                                */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
lameConst :  = e*nu/((1+nu)*(1-2*nu)), μ = e/(2*(1+nu))];

/* relation: hook's law, modulus of elasticity     */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
E :  matrix([2*μ+λ,     λ,     λ,  0,  0,  0],
            [    λ, 2*μ+λ,     λ,  0,  0,  0],
            [    λ,     λ, 2*μ+λ,  0,  0,  0],
            [    0,     0,     0,  μ,  0,  0],
            [    0,     0,     0,  0,  μ,  0],
            [    0,     0,     0,  0,  0,  μ]);

/* Strain Displacement Relation */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
StrainDispl(arg) := [epsilon[x,x] =      diff(arg[1],x),
                     epsilon[y,y] =      diff(arg[2],y),
                     epsilon[z,z] =      diff(arg[3],z),
                     epsilon[x,y] = 1/2*(diff(arg[1],y) + diff(arg[2],x)),
                     epsilon[x,z] = 1/2*(diff(arg[1],z) + diff(arg[3],x)),
                     epsilon[y,z] = 1/2*(diff(arg[2],z) + diff(arg[3],y))];




Euler Rotation

Wir definieren später ein Modell, bei dem Querschnitte um eine Achse senkrecht zur Papierebene kippen kann. Das beschreiben wir mit der linearisierten Euler-Rotation:

D2(arg)=(10arg010arg01),

die für arg << 1 gilt.


/*******************************************************/
/* kinematics: Euler-rotation about y-Axis */
D[2](arg) := [[  1   ,   0  ,-arg ],
              [  0   ,   1  ,  0  ],
              [+arg  ,   0  ,  1  ]];




Stress-Strain-Relations for a Rod

Die Komponenten des Spannungs- und Verzerrungs-Tensors fassen in den Matrizen

σ_=(σx,xσy,yσz,zσy,zσx,zσx,y)

und

ε_=(εx,xεy,yεz,zεy,zεx,zεx,y)

zusammen - und damit können wir nun anfangen zu arbeiten.

Die wichtigsten Annahmen zu Spannungen in einem einfachen Stab mit symmetrischen Profil sind:

(σy,y=0σz,z=0σy,z=0σx,y=0)

Die ersten beiden Zeilen sind klar: die Hauptspannungen senkrecht zur Stab-Längsachse verschwinden. Ausnahmen machen hier nur Stäbe, die z.B. durch großen Drücke belastet sind wie bei Bohrsträngen.

Scherung - nicht betrachtet.


Die Zeilen 3 und 4 gehören zu Spannungen, die einen Querschnitt in der skizzierten Weise verformen (schweren) würden. Das passiert bei symmetrischen Querschnitten wie hier einem Rechteck-Querschnitt nicht.

Mit diesen vier Annahmen können wir aus der Beziehung

σ_=E__ε_

vier Gleichungen herausnehmen und wählen

εx,y=0εy,z=0εy,y=εx,xλ2μ+2λεz,z=εx,xλ2μ+2λ.

/*******************************************************/
/* definitions: components of stress / strain tensors */
Sigma   : matrix([sigma[x,x]], [sigma[y,y]], [sigma[z,z]], 
                 [sigma[y,z]], [sigma[x,z]], [sigma[x,y]]);
Epsilon : matrix([epsilon[x,x]], [epsilon[y,y]], [epsilon[z,z]],
                 [epsilon[y,z]], [epsilon[x,z]], [epsilon[x,y]]);

/* Stress Strain Relation */
StressStrain : solve(args(transpose(Sigma - E.Epsilon)[1]),args(transpose(Sigma)[1]))[1];

/* assumptions for stresses: */
assumptions : [sigma[y,y]=0,sigma[z,z]=0,sigma[y,z]=0, sigma[x,y]=0];

/* this implies for the strains: */
consequence : solve(subst(StressStrain, assumptions),
                       [epsilon[x,y],epsilon[y,z],epsilon[y,y],epsilon[z,z]])[1];




Displacement Variables

Wir starten, indem wir die Koordinaten der Verschiebung aller Punkte auf dem Querschnitt festlegen:


u(x)...Auslenkung des Punktes (x,0,0) in Stab-Längsrichtung 'x',
w(x)...Auslenkung des Punktes '(x,0,0)' in 'z'-Richtung,
ϕ(x)...Drehung des Querschnitts 'x' um die 'y'-Achse,
η(y,z)...eine Funktion, die die Verschiebung der materiellen Punkte des Querschnitts in 'y'-Richtung erfasst,
θ(y,z)...eine Funktion, die die Verschiebung der materiellen Punkte des Querschnitts in 'z'-Richtung erfasst

und mit diesen die Komponenten des Verschiebungsvektors

Δr_=(uϕzη(y,z)w+θ(y,z)).

Für die verformte Struktur können wir die Koordinaten in eine Skizze eintragen, um sie besser zu verstehen:

Koordinaten u, w.
Koordinate ϕ

Besonders die Verschiebung in "x"-Richtung z∙ϕ durch eine Kippung des Querschnitts schauen wir uns genauer an:

Verscheibung eines materiellen Punktes in x-Richtung.

Analog gehen wir für die Variation des Verschiebungsvektors und seiner Koordinaten vor.


/*******************************************************/
/* coordinates of cross-section displacement and their variations */
coords : [[ u(x), w(x),phi(x),eta(y,z),theta(y,z)],
          [δu(x),δw(x), δφ(x), δη(y,z),   δθ(y,z)]];

/* coordintes od displancemnt (d) for any material point */
d: Δr  = expand([x+u(x),0,w(x)] + [0,y+eta(y,z),z+theta(y,z)].D[2](-phi(x))) - [x,y,z];
/* linearize wrt. theta, phi << 1 */
d: subst(0,phi(x)*theta(y,z),d);

/*  and variation of Δr */
d: [d, δΔr = sum(subst(0,kappa,diff(
                         subst(coords[1][i]+kappa*coords[2][i],coords[1][i],subst(d,Δr))
                                                                 ,kappa)),i,1,length(coords[1]))];




Virtual Strain Energy

Jetzt haben wir alles parat, um die Virtuelle Formänderungsenergie hinzuschreiben, nämlich die Spannungen

σ_=(λ(ux(x)ϕx(x)z2(ux(x)ϕx(x)z)λ2μ+2λ)+2(ux(x)ϕx(x)z)μ000(wx(x)ϕ(x))μ20)

und die Variation der Dehnung, nämlich

δϵ_=(δux(x)δϕx(x)z(δux(x)δϕx(x)z)λ2μ+2λ(δux(x)δϕx(x)z)λ2μ+2λ0δwx(x)δϕ(x)(x)20)

Damit setzen wir an

δΠ=Aσ_δϵ_dA

Der Ausdruck für die virtuelle Formänderungsenergie ist noch etwas sperrig, aber das gibt sich gleich, wenn wir die Integration über den Querschnitt A ausführen und

A=bh,Iy=bh312

setzen.


/*******************************************************/
/* stresses and strains under assumptions made and displacement-coordinates given */
stress : S = subst(StrainDispl(
                        subst(d[1],Δr)),subst(consequence,
                                   subst(StressStrain,subst(assumptions,Sigma))));
strain :δZ = subst(StrainDispl(subst(d[2],δΔr)),subst(consequence,Epsilon));

/* virtual strain energy */
VSE : δΠ = integrate(integrate(expand(
                     subst(strain, subst(stress,
                                        S.δZ
                                            ))
                                     ), y,-b/2,b/2),z,-h/2,h/2);
/* simplify */
VSE : ratsimp(expand(subst(lameConst,subst(geometry, expand(VSE)))));




Timoshenko-Beam

Dann erhalten wir - sortiert nach den den Bewegungsgleichungen (Feld-Differentialgleichungen) für u, w und ϕ:

δΠ=EAuxδux+14GA(wxϕ)δwx+14GA(ϕwx)δϕ+EIyϕxδϕx.

Hier treten Ableitungen nur noch nach der Koordinate x auf, wir können die Bewegungsgleichungen nun in gewohnter Form mit

d(.)dx=(.)x=:(.)

als

EAuδu=014GA(wϕ)δw=014GA(ϕw)δϕ+EIyϕδϕ=0

schreiben.


/*******************************************************/
/* first result: general equations of motion incl. Timoshenko-Beam and tension rod */

collect : [ δu(x), δw(x), δφ(x)]$
collect: append(collect,diff(collect,x));

take: expand(subst(VSE, δΠ));
tmb : ratsimp(makelist(
  coeff(take,collect[i])*collect[i] + coeff(take,collect[i+3])*collect[i+3]=0,
                        i,1,3));
sub : alpha=8*nu+8;
tmb : expand(subst(sub,expand(subst(solve(sub,nu),tmb))));

shearModulus: [G = e/(2*(1+nu))];
tmb : expand(subst(solve(shearModulus,nu),tmb));




Euler-Bernoulli-Balken

Noch einfacher wird es mit dem Ansatz von Euler-Bernoulli, die mit der zusätzlichen Vereinfachung

ϕ(x)=dw(x)dxbzw.

δϕ(x)=dδw(x)dx

auf

EAuδu=0EIywδw=0

führt.


/*******************************************************/
/* further simplify to Euler - Bernoulli-Hypothesis
   (cross sections to remain perpendicular to neutral fiber (axis)) */
EBhypothesis : [phi(x)=-diff( w(x),x),
                 δφ(x)=-diff(δw(x),x)];

ebb : expand(subst(EBhypothesis,tmb));
ebb : ev(ebb,nouns);
ebb : expand(subst(sub,expand(subst(solve(sub,nu),ebb))));
ebb : [ebb[1],subst(ebb[2],ebb[3])];





Links

Literature

  • ...