Sources/Anleitungen/FEM-Formulierung für den Euler-Bernoulli-Balken: Unterschied zwischen den Versionen

Aus numpedia
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 9: Zeile 9:


<!-------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------->
{{MyCodeBlock|title=Maxima-Code
{{MyCodeBlock|title=Maxima-Code für die Element-Matrizen
|text=
|text=
Hier finden Sie den Sourcecode für die Herleitung der Elelemt-Matrizen.
Hier finden Sie den Sourcecode für die Herleitung der Element-Matrizen.
|code=
|code=
<syntaxhighlight lang="lisp" line start=1>
<syntaxhighlight lang="lisp" line start=1>
Zeile 84: Zeile 84:


=== Faltungsintegrale ===
=== Faltungsintegrale ===
... für die symmetrische Massenmatrix. Tabelliert sind die Werte der Integrale
====... für die symmetrische Massenmatrix====
Tabelliert sind die Werte der Integrale


::<math>\displaystyle \frac{m_{ij}}{\varrho A} = \int_0^\ell \phi_i \cdot \phi_j \; dx</math>
::<math>\displaystyle \frac{m_{ij}}{\varrho A} = \int_0^\ell \phi_i \cdot \phi_j \; dx</math>


<table class="wikitable" style="background-color:white; margin-right:14px;">
<table class="wikitable" style="background-color:white; margin-right:14px;">
<tr><th>                </th><th>''ϕ<sub>1</sub>''</th><th>''ϕ<sub>2</sub>''</th><th>''ϕ<sub>3</sub>''</th><th>''ϕ<sub>4</sub>''</th></tr>
<tr><th>                </th><th><math>\phi_1</math></th><th><math>\phi_2</math></th><th><math>\phi_3</math></th><th><math>\phi_4</math></th></tr>
<tr><th>''ϕ<sub>1</sub>''</th><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2</math></td><td><math>\displaystyle \frac{9}{70}\;\ell_i</math></td><td><math>\displaystyle -\frac{13}{420}\;\ell_i^2 </math></td></tr>
<tr><th><math>\phi_1</math></th><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2</math></td><td><math>\displaystyle \frac{9}{70}\;\ell_i</math></td><td><math>\displaystyle -\frac{13}{420}\;\ell_i^2 </math></td></tr>
<tr><th>''ϕ<sub>2</sub>''</th><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td><td><math>\displaystyle \frac{13}{420}\;\ell_i^2 </math></td><td><math>\displaystyle -\frac{1}{140}\;\ell_i^4</math></td></tr>
<tr><th><math>\phi_2</math></th><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td><td><math>\displaystyle \frac{13}{420}\;\ell_i^2 </math></td><td><math>\displaystyle -\frac{1}{140}\;\ell_i^4</math></td></tr>
<tr><th>''ϕ<sub>3</sub>''</th><td>            </td><td>            </td><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2 </math></td></tr>
<tr><th><math>\phi_3</math></th><td>            </td><td>            </td><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2 </math></td></tr>
<tr><th>''ϕ<sub>4</sub>''</th><td>symm.</td><td>            </td><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td></tr>
<tr><th><math>\phi_4</math></th><td>symm.</td><td>            </td><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td></tr>
</table>
</table>


.. für die symmetrische Steifigkeitsmatrix. Tabelliert sind die Werte der Integrale
====... für die symmetrische Steifigkeitsmatrix====
Tabelliert sind die Werte der Integrale
::<math>\displaystyle \frac{k_{ij}}{EI} = \int_0^\ell \phi_i'' \cdot \phi_j'' \; dx</math>
::<math>\displaystyle \frac{k_{ij}}{EI} = \int_0^\ell \phi_i'' \cdot \phi_j'' \; dx</math>


<table class="wikitable" style="background-color:white; margin-right:14px;">
<table class="wikitable" style="background-color:white; margin-right:14px;">
<tr><th>                </th><th>''ϕ<sub>1</sub>''</th><th>''ϕ<sub>2</sub>''</th><th>''ϕ<sub>3</sub>''</th><th>''ϕ<sub>4</sub>''</th></tr>
<tr><th>                </th><th><math>\phi''_1</math></th><th><math>\phi''_2</math></th><th><math>\phi''_3</math></th><th><math>\phi''_4</math></th></tr>
<tr><th>''ϕ<sub>1</sub>''</th><td><math></math></td><td><math></math></td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\phi''_1</math></th><td><math>\displaystyle \frac{12}{\ell_i^3}</math></td><td><math>\displaystyle \frac{6}{\ell_i^2}</math></td><td><math>\displaystyle -\frac{12}{\ell_i^3}</math></td><td><math>\displaystyle \frac{6}{\ell_i^2} </math></td></tr>
<tr><th>''ϕ<sub>2</sub>''</th><td>            </td><td><math></math></td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\phi''_2</math></th><td>            </td><td><math>\displaystyle \frac{4}{\ell_i}</math></td><td><math>\displaystyle -\frac{6}{\ell_i^2} </math></td><td><math>\displaystyle \frac{2}{\ell_i}</math></td></tr>
<tr><th>''ϕ<sub>3</sub>''</th><td>            </td><td>            </td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\phi''_3</math></th><td>            </td><td>            </td><td><math>\displaystyle \frac{12}{\ell_i^3}</math></td><td><math>\displaystyle -\frac{6}{\ell_i^2} </math></td></tr>
<tr><th>''ϕ<sub>4</sub>''</th><td>symm.        </td><td>            </td><td>            </td><td><math></math></td></tr>
<tr><th><math>\phi''_4</math></th><td>symm.        </td><td>            </td><td>            </td><td><math>\displaystyle \frac{4}{\ell_i} </math></td></tr>
</table>
</table>


{{MyCodeBlock|title=Maxima-Code für die Rechte-Seite
|text=
Hier finden Sie den Sourcecode für die Herleitung der Spalten-Matrizen der Rechten-Seite des Gleichungssystems.
|code=
<syntaxhighlight lang="lisp" line start=1>
/*Loadiung-Fucntions*/
psi: [1,
      (1-xi),
      xi,
      4*(-xi^2+xi)];


for j:1 thru length(psi) do
  plot2d(psi[j],[xi,0,1], [y,-0.1,1.1],
      [box, false], grid2d,
      [yx_ratio, 1], [axes, solid], [xtics, 0, 1, 1],
      [ytics, 0, 1, 1],
      [ylabel, simplode (["ϕ[",j,"] →"])],
      [xlabel, "ξ →"],
      [style,[lines,3,2]])$


/* convolution integrals */
for i:1 thru length(phi) do
  (print("***************************", i),
    for j:1 thru length(psi) do
      print(integrate(phi[i]*psi[j],xi,0,1)))$
</syntaxhighlight>
}}




====... für die rechte Seite des Gleichungssystems - aus äußeren, einprägten Lasten wie z.B. Streckenlasten ''q<sub>0</sub>∙ψ''.


Die virutelle Arbeit dieser äußeren Streckenlast ist


<hr/>
::<math>\displaystyle \delta W^a = q_0 \int_0^\ell \psi(x)\cdot \delta w(x) \;\,dx</math>
 
                      
 
Hier stehen die Faltungsintegrale beispielhaft für 
<table class="wikitable" style="background-color:white; margin-right:14px;">
<tr><th>                </th><th><math>\Phi_1</math></th><th><math>\Phi_2</math></th><th><math>\Phi_3</math></th><th><math>\Phi_4</math></th></tr>
<tr><th><math>\Phi_1</math></th><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2</math></td><td><math>\displaystyle \frac{9}{70}\;\ell_i</math></td><td><math>\displaystyle -\frac{13}{420}\;\ell_i^2 </math></td></tr>
<tr><th><math>\Phi_2</math></th><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td><td><math>\displaystyle \frac{13}{420}\;\ell_i^2 </math></td><td><math>\displaystyle -\frac{1}{140}\;\ell_i^4</math></td></tr>
<tr><th><math>\Phi_3</math></th><td>            </td><td>            </td><td><math>\displaystyle \frac{13}{35}\;\ell_i </math></td><td><math>\displaystyle \frac{11}{210}\;\ell_i^2 </math></td></tr>
<tr><th><math>\Phi_4</math></th><td>symm.</td><td>            </td><td>            </td><td><math>\displaystyle \frac{1}{105}\;\ell_i^3</math></td></tr>
</table>
 
.. für die symmetrische Steifigkeitsmatrix. Tabelliert sind die Werte der Integrale
::<math>\displaystyle \frac{k_{ij}}{EI} = \int_0^\ell \phi_i'' \cdot \phi_j'' \; dx</math>
 
<table class="wikitable" style="background-color:white; margin-right:14px;">
<tr><th>                </th><th><math>\Phi''_1</math></th><th><math>\Phi''_2</math></th><th><math>\Phi''_3</math></th><th><math>\Phi''_4</math></th></tr>
<tr><th><math>\Phi''_1</math></th><td><math></math></td><td><math></math></td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\Phi''_2</math></th><td>            </td><td><math></math></td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\Phi''_3</math></th><td>            </td><td>            </td><td><math></math></td><td><math></math></td></tr>
<tr><th><math>\Phi''_4</math></th><td>symm.        </td><td>            </td><td>            </td><td><math></math></td></tr>
</table>
 
 
 
 
 


::<math>\begin{array}{l}\psi_1 = 1\\\psi_2=1-\xi\\\psi_3=\xi\\\psi_4=4\cdot \left( \xi-{{\xi}^{2}}\right) \end{array}</math>


<hr/>
<hr/>

Version vom 19. April 2021, 13:19 Uhr


Diese Seite fasst die wichtigsten Ergebnisse für die FEM-Formulierung zum Euler-Bernoulli-Balken zusammen.

Maxima-Code für die Element-Matrizen

Hier finden Sie den Sourcecode für die Herleitung der Element-Matrizen.


/*Maxima Quellcode für die Erzeugung Inhalte dieser Seite */
/* Maxima version 16.04.2*/

declare( "ℓ", alphabetic);

/*Trial-Fucntions*/
phi : [       (xi-1)^2*(2*xi+1),
         ℓ[i]* xi     *(  xi-1)^2,
        -      xi^2   *(2*xi-3), 
         ℓ[i]* xi^2   *(  xi-1)];

/* depict independant and dependant coordinates */
preamble: "set yrange [] reverse";
plot2d(subst([ℓ[i]=1],[0.9,1/2,0.1,1/3].phi),[xi,0,1],
    [x,0,1], [legend, "w(x)"],
    [xlabel, "ξ →"], [ylabel, "← w"],
    [gnuplot_preamble, preamble]);

/* plot trial-functions parameters */
scale: [1,1/ℓ[i],1,1/ℓ[i]];
colours: [blue, red, green, magenta];
legends: ["ϕ1","ϕ2/ℓ[i]","ϕ3","ϕ4/ℓ[i]"];
for j:1 thru 4 do
     (plot2d(scale[j]*phi[j],[xi,0,1], [xlabel,"ξ →"],[ylabel,"ϕ →"], [legend,legends[j]],[color,colours[j]], [style, [lines,3]], same_xy,
              [gnuplot_preamble, "set xtics 1;set ytics 1;set tics font \",11\""]))$	

/* Element-Mass Matrix */
M[i] : funmake('matrix,makelist(makelist(rho*A*integrate(phi[j]*phi[k],xi,0,1)*ℓ[i],j,1,4),k,1,4));
/*       (rho*A*ℓ[i])*matrix([13/35,(11*ℓ[i])/210,9/70,-(13*ℓ[i])/420],
                             [(11*ℓ[i])/210,ℓ[i]^2/105,(13*ℓ[i])/420,-ℓ[i]^2/140],
                             [9/70,(13*ℓ[i])/420,13/35,-(11*ℓ[i])/210],
                             [-(13*ℓ[i])/420,-ℓ[i]^2/140,-(11*ℓ[i])/210,ℓ[i]^2/105])  */
/* Element-Striffness Matrix */
K[i] : funmake('matrix,makelist(makelist(EI*integrate(diff(phi[j],xi,2)/ℓ[i]^2*diff(phi[k],xi,2)/ℓ[i]^2,xi,0,1)*ℓ[i],j,1,4),k,1,4));
/*       (EI/ℓ[i]^3)*matrix([12,6*ℓ[i],-12,6*ℓ[i]],
                            [6*ℓ[i],4*ℓ[i]^2,-6*ℓ[i],2*ℓ[i]^2],
                            [-12,-6*ℓ[i],12,-6*ℓ[i]],
                            [6*ℓ[i],2*ℓ[i]^2,-6*ℓ[i],4*ℓ[i]^2])   */




Trial-Functions

Die Koordinaten eines Finiten Elements sind

.

Der Ansatz für die Näherung der Auslenkung w(x,t) ist

Die Drehwinkel sind hier so gewählt, dass 

.
Nodal and independent Coordinates

Trialfunctions

Die einzelnen Trial-Functions sind:

linker Rand (Knoten "i-1")rechter Rand (Knoten "i")
Trial-Function for Wi-1
Trial-Function for Wi
Trial-Function für Φi-1
Trial-Function für Φi

Faltungsintegrale

... für die symmetrische Massenmatrix

Tabelliert sind die Werte der Integrale

symm.

... für die symmetrische Steifigkeitsmatrix

Tabelliert sind die Werte der Integrale

symm.

Maxima-Code für die Rechte-Seite

Hier finden Sie den Sourcecode für die Herleitung der Spalten-Matrizen der Rechten-Seite des Gleichungssystems.


/*Loadiung-Fucntions*/
psi: [1,
      (1-xi),
      xi,
      4*(-xi^2+xi)];

for j:1 thru length(psi) do
   plot2d(psi[j],[xi,0,1], [y,-0.1,1.1],
      [box, false], grid2d,
      [yx_ratio, 1], [axes, solid], [xtics, 0, 1, 1],
      [ytics, 0, 1, 1],
      [ylabel, simplode (["ϕ[",j,"] →"])],
      [xlabel, "ξ →"],
      [style,[lines,3,2]])$

/* convolution integrals */
for i:1 thru length(phi) do
   (print("***************************", i),
    for j:1 thru length(psi) do 
       print(integrate(phi[i]*psi[j],xi,0,1)))$




====... für die rechte Seite des Gleichungssystems - aus äußeren, einprägten Lasten wie z.B. Streckenlasten q0∙ψ.

Die virutelle Arbeit dieser äußeren Streckenlast ist

                       Hier stehen die Faltungsintegrale beispielhaft für 


Links

  • ...

Literature

  • ...