Skip to content

TET4 - Interpolation et Jacobien

Coordonnees barycentriques

Les quatre fonctions de forme sont

$$ N_1=1-r-s-t,\qquad N_2=r,\qquad N_3=s,\qquad N_4=t. $$

Elles verifient partition de l'unite, positivite dans le tetraedre et propriete de Kronecker $N_i(\mathbf x_j)=\delta_{ij}$.

La geometrie et les deplacements utilisent la meme interpolation:

$$ \mathbf x(r,s,t)=\sum_iN_i\mathbf x_i, \qquad \mathbf u(r,s,t)=\sum_iN_i\mathbf u_i. $$

Convention de Jacobien

QF_solver definit

$$ J_{a i}=\frac{\partial x_i}{\partial \xi_a}, \qquad \boldsymbol\xi=(r,s,t). $$

Les gradients physiques, stockes par lignes, sont donc

$$ \frac{\partial\mathbf N}{\partial\mathbf x} =\frac{\partial\mathbf N}{\partial\boldsymbol\xi}\mathbf J^{-T}. $$

Pour TET4, $\mathbf J$ est constant. L'implementation calcule directement les coefficients du polynome $N_i=a_i+b_ix+c_iy+d_iz$ en inversant la matrice $[\mathbf1\ \mathbf X]$, ce qui est algebriquement equivalent.

Reproduction d'un champ affine

Si $\mathbf u=\mathbf c+\mathbf H\mathbf x$, l'interpolation nodale reproduit exactement ce champ. La deformation obtenue est

$$ \boldsymbol\varepsilon=\operatorname{sym}(\mathbf H), $$

constante dans tout l'element. C'est la base du patch test.

Conditionnement geometrique

Un determinant positif ne suffit pas a garantir une bonne precision. Une forte disparite des aretes ou une faible hauteur augmente le conditionnement de $\mathbf J$ et amplifie les erreurs d'arrondi. Le rapport de qualite publie volume, aretes min/max et aspect ratio.

Tests: tests/unit/test_tet4_element.py, tests/verification/test_tet4_analytical.py.