Skip to content

BEAM2 - Interpolation, matrices et repere

1. Repere local

L'axe $\mathbf e_1$ joint les deux noeuds. Le vecteur utilisateur reference_vector est projete dans le plan normal a $\mathbf e_1$ :

$$ \widetilde{\mathbf e}_2= \mathbf r-(\mathbf r\cdot\mathbf e_1)\mathbf e_1, \qquad \mathbf e_2=\frac{\widetilde{\mathbf e}_2} {|\widetilde{\mathbf e}_2|}, \qquad \mathbf e_3=\mathbf e_1\times\mathbf e_2. $$

Un vecteur presque colineaire a l'axe est refuse. La matrice de rotation orthogonale doit verifier $\mathbf R^T\mathbf R=\mathbf I$ et $\det\mathbf R=+1$.

2. Interpolation

Les translations axiale et de torsion utilisent des fonctions lineaires. Les plans de flexion emploient la solution exacte de la poutre de Timoshenko a coefficients constants, ce qui introduit les parametres

$$ \phi_y=\frac{12EI_z}{\kappa_y^sGAL^2}, \qquad \phi_z=\frac{12EI_y}{\kappa_z^sGAL^2}. $$

Lorsque $\phi\rightarrow0$, la limite Euler-Bernoulli est retrouvee. Lorsque le cisaillement devient significatif, la souplesse supplementaire est conservee.

3. Blocs de rigidite

Les rigidites axiale et de torsion sont

$$ \mathbf K_N=\frac{EA}{L} \begin{bmatrix}1&-1\-1&1\end{bmatrix}, \qquad \mathbf K_T=\frac{GJ}{L} \begin{bmatrix}1&-1\-1&1\end{bmatrix}. $$

Chaque bloc de flexion couple une translation transverse et une rotation aux deux extremites. Il est symetrique et tend vers le bloc Euler-Bernoulli quand $\phi\rightarrow0$.

4. Transformation globale

La transformation nodale contient la meme rotation pour translations et rotations :

$$ \mathbf T_n= \begin{bmatrix}\mathbf R&0\0&\mathbf R\end{bmatrix}, \qquad \mathbf K_e^g=\mathbf T^T\mathbf K_e^\ell\mathbf T. $$

L'energie doit etre invariante :

$$ (\mathbf d^g)^T\mathbf K_e^g\mathbf d^g =(\mathbf d^\ell)^T\mathbf K_e^\ell\mathbf d^\ell. $$

5. Masse coherente

La masse comprend translation et inerties rotatoires de section. Les controles minimaux sont la symetrie, la positivite, la masse totale $\rho AL$ et les moments d'inertie attendus. La masse concentree reste hors du scope modal accepte tant qu'elle n'est pas verifiee separement.

6. Charges coherentes

Une charge lineique constante est integree dans le repere choisi. Les forces nodales et couples d'extremite conservent la resultante et le moment :

$$ \sum_a\mathbf f_a=\int_0^L\mathbf p\,dx, \qquad \sum_a(\mathbf x_a-\mathbf x_0)\times\mathbf f_a+\mathbf m_a =\int_0^L(\mathbf x-\mathbf x_0)\times\mathbf p\,dx. $$

7. Tests matriciels

Controle Attendu
symetrie $|K-K^T|/|K|<10^{-12}$
modes rigides six valeurs propres nulles
positivite deformable six valeurs propres positives
objectivite reponse identique apres rotation
limite Euler erreur tend vers zero lorsque $\phi\to0$
masse totale erreur relative < 1e-10

8. Exemple

python -m pytest tests\unit\test_beam2_element.py -q
python .\qf_solver.py solve --input .\examples\beam2_cantilever.json `
  --output .\results\beam2_matrices.json

9. Limites

Section constante, axe droit, pas d'offset, pas de relachement, pas de gauchissement de Vlasov et pas de non-linearite de section.

10. Tracabilite

Code solveur/elements/beam/beam2.py, materiau/section solveur/materials/beam.py, exigences REQ-BEAM-001 et REQ-LOAD-001.