Gelöste Aufgaben/T312: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 169: | Zeile 169: | ||
<!--------------------------------------------------------------------------------> | <!--------------------------------------------------------------------------------> | ||
==Post-Processing== | ===Post-Processing=== | ||
Stabwerkskräfte und deren Knoten-Verschiebungen können wir nun mit geringem Aufwand bearbeiten: | Stabwerkskräfte und deren Knoten-Verschiebungen können wir nun mit geringem Aufwand bearbeiten: |
Version vom 4. April 2021, 17:58 Uhr
Aufgabenstellung
Bei Arbeiten mit elastischen Stäben stoßen wir immer wieder auf die gleiche Aufgabe: das Aufstellen der virtuellen Formänderungsenergie eines Stabes, den wir in ein System einbauen müssen.
Gesucht ist die allgemeine Formulierung für die virtuelle Formänderungsenergie eines Stabes in einem Stabwerk.
Lösung mit Maxima
Die relevanten Größen wie die Stablänge ℓi, die Stablängung Δℓi und die Stabkraft Si sind im Stabsystem definiert, wir brauchen aber die Größen in einem einheitlichen x,y - Referenzsystem.
Damit wir also nicht bei jeder Aufgabe wieder von vorn anfangen, die Δℓi als Funktion der Auslenkungen uj, vj der Knoten K,L im x,y - System herzuleiten, machen wir das ein Mal allgemein.
Header
Dazu vergleichen wir den Stab in seiner verformten Konfiguration mit seiner Referenzkonfiguration - und schreiben die Terme der virtuellen Formänderungsenergie an.
/*******************************************************/
/* MAXIMA script */
/* version: wxMaxima 15.08.2 */
/* author: Andreas Baumgart */
/* last updated: 2017-10-31 */
/* ref: TM-2 */
/* description: virt. Formänderungsarbeit eines Stabes */
/* in einem Stabwerk */
/*******************************************************/
Declarations
Hier stehen nur die Deklarationen für spezielle Symbole zur Verwendung mit Maxima.
/* special symbols to be declared */
declare("δΠ", alphabetic);
declare("δl", alphabetic);
declare("Δl", alphabetic);
declare("Δx", alphabetic);
declare("Δy", alphabetic);
declare("δu", alphabetic);
declare("δv", alphabetic);
Kinematics
Der Stab i hat die Knoten K und L, die im unverformten Stabwerk die Koordinaten
haben.
Im verformten System sind
- .Mit dem Satz von Pythagoras stellen wir nun den Zusammenhang her zwischen der Stablänge in der Ausgangskonfiguration und der verformten Konfiguration des Stabes:
Die zweite Zeile stellt den nichtlinearen Zusammenhang zwischen den Koordinaten der Knoten-Verschiebungen uj,vj und der Stablängung Δℓi her.
Den nichtlinearen Zusammenhang brauchen wir praktisch nie, weil wir meist von kleinen Verformungen des Systems ausgehen - und damit auch kleinen Stablängungen ausgehen.
Wir linearisieren deshalb den Ausdruck oben und erhalten
den wir den Abkürzungen
schrieben als
- .
/* coordinates */
q : [[ u[k], v[k], u[l], v[l],Δl[i]],
[δu[k],δv[k],δu[l],δv[l],δl[i]]];
/* refernce Points */
points: [P[k]=matrix([x[k]],[y[k]]),
P[l]=matrix([x[l]],[y[l]]),
p[k]=matrix([x[k]+u[k]],[y[k]+v[k]]),
p[l]=matrix([x[l]+u[l]],[y[l]+v[l]])];
length: [subst(points,P[l])-subst(points,P[k]),
subst(points,p[l])-subst(points,p[k])];
pythagoras: [transpose(length[1]).length[1] = l[i]^2,
transpose(length[2]).length[2] = (l[i]+Δl[i])^2];
kinematics: lhs(pythagoras[2])-lhs(pythagoras[1]) =
rhs(pythagoras[2])-rhs(pythagoras[1]);
sol : solve(taylor(kinematics,
q[1],0,1),Δl[i])[1];
/* abbreviations */
simple : [x[l]=x[k]+Δx, y[l]=y[k]+Δy,
Δx = xi[x]*l[i], Δy = xi[y]*l[i], EA[i]=k[i]*l[i]];
Virtual Strain Energy
Mit dem Prinzip der virtuellen Verrückungen schreiben wir die Gleichgewichtsbedingungen als
mit der virtuellen Formänderungsenergie δΠ aller Stäbe des Systems, also
Für einen einzelnen Stab schrieben wir jetzt
mit
- .
Mit den Ergebnissen von oben setzen wir also
in δΠi ein.
/* Einsetzen in das PvV */
sol : [sol, subst(
makelist(q[1][i]=q[2][i],i,1,5), sol)];
VSE: δΠ[i] = EA[i]/l[i]*Δl[i]*δl[i];
VSE : expand(subst(sol,VSE));
===Die Terme schreiben wir noch etwas um, so dass man die Struktur hinter der virtuellen Formänderungsenergie erkennt - und erhalten:
- .===
Text
/* Element-Steifigkeitsmatrix K definieren */
K : makelist(makelist(coeff(
coeff(subst(VSE, δΠ[i]),q[2][m]),q[1][n]),
m,1,4),n,1,4);
print('δΠ[i],"=",k[i],"*",rest(q[2],-1),"*",
funmake('matrix,ratsimp(subst(simple,K/k[i]))),"*",
transpose(rest(q[1],-1)));
Post-Processing
Stabwerkskräfte und deren Knoten-Verschiebungen können wir nun mit geringem Aufwand bearbeiten:
Wir addieren die virtuelle Formänderungsenergie δΠi für jeden Stab zur gesamten virtuellen Formänderungsenergie δΠ zusammen.
Das wäre zwar anschaulich richtig - aber unpraktisch. So würden wir große Ausdrücke erhalten für δΠ. Einfacher und für die Behandlung mit dem Computer praktischer ist folgendes Vorgehen:
Ausgangspunkt ist die Element-Steifigkeitsmatrix
- .
Wir erzeugen uns eine Steifigkeitsmatrix für die Verschiebungen aller Knoten des Stabwerks und sortieren die Elemente der Element-Steifigkeitsmatrix sukzessive und additiv in diese ein.
Wie das geht, zeigt T313.
Links
- ...
Literature
- ...