Gelöste Aufgaben/W8Zu

Aus numpedia
Zur Navigation springen Zur Suche springen


Aufgabenstellung

Zu den tabellierten Standardlösungen für den Euler-Bernoulli-Blaken berechnen wir eine Näherungslösung für einen beidseitig gelenkig gelagerten Euler-Bernoulli-Balken:


Caption

Gesucht ist eine Lösung in Anlehnung an das Verfahren von Ryleigh-Ritz.


Die Lösung nach einer Variante zu diesem Standardverfahren finden Sie hier in W8Zt.

Lösung mit Maxima

Mit dem Föppl-Symbol "<>", sowie

α=a/, β=1α und ξ=x/

ist die analytische Lösung:

EIw(x)=F36[βξ(1β2ξ2)+<ξα>3].

Bei dieser Lösung hat die unabhängige Koordinate x ihren Ursprung in A - wir verwenden unten einen anderen Ursprung!

Mit den passenden Ansatzfunktionen nach Ritz berechnen Sie eine Näherungslösung des Problems nach dem Prinzip vom Minimum der Potentiellen Energie.


Header

Wir lösen das Problem mit Maxima.


/*******************************************************/
/* MAXIMA script                                       */
/* version: wxMaxima 15.08.2                           */
/* author: Andreas Baumgart                            */
/* last updated: 2017-10-14                            */
/* ref: TM-C, Labor 3 - aus Gross, Augf. TM 2, Biegetab*/
/* description: finds the approx. solution for         */
/*              problem #1 using PMPE                  */
/*******************************************************/




Declarations

In Maxima treffen wir die Annahme ℓ>0, damit einige Integrale richtig gelöst werden.


/* declarations */
assume(l>0);




Formfunctions

Als unabhängige Koordinaten des Balkens wählen wir "x" entlang der Neutralen Faser mit Ursprung in der Mitte zwischen A und B.

Wir entscheiden uns zunächst für zwei abhängige Koordinaten des Systems

q_=(VΨ)
Trial-Functions

und wählen V und ψ  als die Verschiebung und Verdrehung (=Neigung) des Querschnitts im Punkt x=0 des Balkens.

Jetzt brauchen wir zwei Ansatzfunktionen, die unseren Koordinaten V und ψ entsprechen. Wir wollen diese beiden anschaulich denken können - wir wählen einfache Polynome: eine achsensymmetrische und eine punktsymmetrische Funktion mit den noch unbestimmten Konstanten cij:

  • v1(x):=c1,2x2+c1,0
  • v2(x):=c2,3x3+c2,1x

Diese beiden Funktionen müssen

  1. Geometrische Randbedingungen erfüllen und
  2. jeweils mit den Koordinaten V und ψ verknüpft werden.

Die zugehörigen Gleichungen (= die Randbedingungen) sind

  • c1,0=V,c1,224+c1,0=0 und
  • c2,1=Ψ,c2,338+c2,12=0

mit der Lösung

c1,0=V,c1,2=4V2,c2,1=Ψ,c2,3=4Ψ2

Anstatt der exakten, bekannten Lösung, verwenden wir in diesem Näherungsansatz also nun die Funktion

w(x)=4x2V2+V4Ψx32+Ψx,

mit den beiden Koordinaten V und ψ. die wir nun bestimmen müssen. Anschaulich können wir nun

w(ξ)=Vϕ1(ξ)+Φϕ2(ξ)

mit

ϕ1(ξ)=14ξ2ϕ2(ξ)=ξ4ξ3
Trial-Functions ϕ1, ϕ2

schreiben. So sehen die beiden Trial-Funktionen aus:

Klar ist: die exakte Lösung dieses Lastfalls ist eine Funktion, die im Querkraftverlauf am Kraftangriffspunkt (x=a - ℓ/2) einen Sprung hat. Dagegen ist der Querkraftverlauf unserer Näherungslösung stetig differenzierbar und obendrauf noch konstant!


/**** define form functions ***/
/* coordinates */
q : [V,Psi];

/* generic polynomials */
define(v[1](x),sum(c[1,2*i]*x^(2*i),i,0,1));
define(v[2](x),sum(c[2,(2*i+1)]*x^(2*i+1),i,0,1));

/* solve for c's to comply with geometric boundary conditions      */
coeffs : append(solve([v[1](0)=V,v[1](+l/2)=0],[c[1,0],c[1,2]])[1],
                solve([subst([x=0],diff(v[2](x),x))=Psi,v[2](+l/2)=0],[c[2,1],c[2,3]])[1]);

/* employ in polynomials */
forms : [w(x)  = expand(subst(coeffs, sum(v[i](x),i,1,2)))];

trials: subst([x=l*xi],makelist(coeff(subst(forms,w(x)), q[i]),i,1,2));

plot2d( [trials[1],trials[2]/l],[xi,-1/2,+1/2], [legend, "ϕ[1]","ϕ[2]"]);




Equilibrium Conditions

Mit dem Prinzip vom Minimum der Potentiellen Energie sind die Gleichgewichtsbedingungen

Uqi=!0 für alle Koordinaten i.,

dabei ist

U=ΠA, mit Π: elastisches Potential und A: Arbeit der Kraft F..

Einsetzen der Trial-Funktionen liefert

A=F(α2V+Vα3Ψ2+αΨ2)Π=EI22(d2dx2(Ψx4Ψx32+V4x2V2))2dx

und wir finden nach dem Ausführen der Differentiation und Integration

U=64EIV23α2FV+FVα3ΨF2+αΨF248Ψ2EI

Achtung: hier bezeichnet nun α=-1 den Punkt A, α=+1 den Punkt B.

Die Koordinaten fassen wir zu

q_=(VΨ)

zusammen und schreiben damit

U(q_)=12q_TA__q_q_Tb_

mit

A__=(64EI30048EI)

und

b_=(α2FFα3F2αF2)

Mit dieser Formulierung sind wir bei den Minimum Prinzipen angekommen, die Lösung kommt aus dem linearen Gleichungssystem

A__q_=b_

/* potential energy of system */
PMPE : U = A-Pi;

parts : [/*virt. strain energy */
         A = F*w(x[F]),
         /* work of implied external force F*/
         Pi = integrate(EI*diff(w(x),x,2)^2,x,-l/2,+l/2)];
parts : subst([w(x[F]) = subst([x=\alpha*l/2], subst(forms,w(x)))],parts);
parts : subst(forms,parts);

/* substitute .... */
PMPE : subst(forms,subst(parts,PMPE));
/* execute differntiation and integration of δW */
PMPE : expand(ev(PMPE,nouns));

/* pick individual equations */
OLE: [b = - makelist([coeff(subst(PMPE,U),q[i])],i,1,2),
      A = [[coeff(subst(PMPE,U),q[1],2),0],[0,coeff(subst(PMPE,U),q[2],2)]]];




Solve

Die Lösung für die Koordinaten q ist

V=(α21)3F64EIΨ=(α3α)2F96EI

/* solve .... */
K: funmake('matrix,subst(OLE,A));
f : funmake('matrix,subst(OLE,b));
print(K,transpose(q)=f)$

equs : makelist((K.q)[i][1]=f[i][1],i,1,2);
sol: solve(equs,q)[1];




Post-Process

Die Lösung normieren wir noch für das Post-Processing mit der analytischen maximalen Auslenkung im symmetrischen Belastungsfall (wenn F in der Mitte zwischen A und B angreift):

Wir tragen sie für verschiedene Kraft-Angriffspunkte (α=-1,...α=+1) auf:

Auslenkung w(x) am Kraftangriffspunkt
Wissen Sie ...:
... warum A hier eine Diagonalmatrix ist? Schauen Sie sich die Formel zur Berechnung der Koeffizienten aij an - was erkennen Sie?

/* plot results */
m : 2; scale : F*l^3/(EI*48);
leg : append([legend],makelist(simplode(["α=",(-m+i)/m]),i,0,2*m));
plotfct : expand(subst([x=xi*l],subst(sol,subst(forms,w(x)/scale))));
toplot : makelist(subst([alpha=(-m+i)/m],plotfct),i,0,2*m);
plot2d(subst([alpha=0],toplot),[xi,-1/2,+1/2], [y,-0.05,1.0], leg);




Post-Process: Compare with Analytic Solution

Und wir schauen uns für α=1/2 die Verschiebung der Ritz- und analytischen-Lösung im Vergleich an:

Vergleich von analytischer / numerischer Lösung für w(x)
Und wissen Sie auch ...:
... wie der Verlauf der Querkraft im Vergleich Ritz / analytisch aussieht?

/* Vergleich mit analytischer Lösung */
foppl(xi,alpha) := if (xi < alpha) then 0 else xi-alpha;
anplot : F*l^3/(6*EI)*(beta*xi*(1-beta^2-xi^2)+foppl(xi,alpha)^3)/scale;
anplot : subst([beta=1-alpha],anplot);
ritz: subst([xi=xi-1/2],subst(alpha=1/2,expand(subst(sol,makelist(trials[i]*q[i]/scale,i,1,2)))));

plot2d([subst([alpha=3/4],anplot),ritz[1]+ritz[2], ritz[1],ritz[2]],[xi,0,1],
       [legend, "analytic", "Ritz", "V-part", "Ψ-part"],
       [title, "Vergleich analytytische / Ritz - Lösung"])





Links

  • ...

Literature

  • ...