gemseo_umdo / use_cases / beam_model / core

Hide inherited members

model module

The GEMSEO-free version of the model for the beam use case.

class gemseo_umdo.use_cases.beam_model.core.model.BeamModel(n_y=3, n_z=3)[source]

Bases: object

The beam model.

We consider an horizontal beam with length $L$, width $b$ and height $h$. This beam is hollow and made of a material with a Young’s modulus $E$, a Poisson’s ratio $nu$ and a thickness $t$. One of its ends is fixed at $x=0$ (the “root”) while the other at $x=L$ (the “tip”) is free. The $y$-axis is horizontal and perpendicular to the beam, the $z$ is vertical and the center of the root is at the origin $(0, 0, 0)$.

A force $vec{F}$ of amplitude $F$ is applied to the beam at $(L, dy, dz)$ with an angle $alpha$ w.r.t. $-vec{e}_y$ in the xz-plane and an angle $beta$ w.r.t. $-vec{e}_y$ in the yz-plane, where $vec{e}_y$ is the unit vector along the $y$-axis.

From these settings, the model computes the weight of the beam $w=2 rho L (b + h -2t)$ and several quantities on a regular $yz$-grid:

  • the strain energy vector $vec{U}=(U_x,U_y,U_z)$ at the tip,

  • the normal stress $sigma$ at the root,

  • the torsional stress $tau$ at the root,

  • the displacement $delta$ at the tip,

  • the von Mises stress $sigma_{text{VM}}$ at the root.

The equations are:

  • Force components
    • $F_x=Fsin(alpha)$

    • $F_y=Fcos(alpha)sin(beta)$

    • $F_z=Fcos(alpha)cos(beta)$

  • Inertia
    • $I_x=(2tb^2h^2)/(b + h)$

    • $I_y=(bh^3-(b-2t)(h-2t)^3)/12$

    • $I_z=(hb^3-(h-2t)(b-2t)^3)/12$

  • Strain energy
    • $U_x = E^{-1} { frac{ F_x L }{ 2t (b+h-2t) } + zL (F_x dZ - F_z L/2) I_y^{-1} - yL (F_y L/2 - F_x dY) I_z^{-1} }$

    • $U_y = E^{-1} { (F_y L^3/3 - F_x dY L^2/2)I_z^{-1} - zL frac{ F_zdY-F_ydZ }{ 2 (1+nu) I_x } }$

    • $U_z = E^{-1} { (F_z L^3/3 - F_xdZ L^2/2) I_y^{-1} + yL frac{ F_zdY-F_ydZ }{ 2 (1+nu) I_x } }$

  • Displacements
    • $delta=sqrt{U_x^2+U_y^2+U_z^2}$

  • Torsional stress
    • $tau_x=(F_zdY-F_ydZ)/(2bht)$

    • $tau_y= - (0.5|z|(b-t)+(b-t)^2(1-4y^2/(b-t)^2))F_ytext{sign}(z)/(8I_z)$

    • $tau_z=(0.5|y|(h-t)+(h-t)^2(1-4z^2/(h-t)^2))F_ztext{sign}(y)/(8I_y)$

    • $tau = tau_x + tau_y + tau_z$

  • Stress
    • $sigma = F_x/(2t(b+h-2t)) + y (F_xdY-F_yL)/I_z + z (F_xdZ-F_zL)/I_y$

  • von Mises stress
    • $sigma_{text{VM}} = sqrt{sigma^2 + 3tau^2}$

Parameters:
  • n_y (int) –

    The number of discretization points in the y-direction.

    By default it is set to 3.

  • n_z (int) –

    The number of discretization points in the z-direction.

    By default it is set to 3.