• Aucun résultat trouvé

2.3. Modèles de représentation d’objets virtuels déformables

2.3.2. Modèle basé sur une méthode d’éléments finis

Une méthode d’éléments finis (MEF) est une approche générale du calcul de structures déformables. Elle consiste en l’étude d’un comportement d’une structure déformable (par exemple,

une pièce d’un multi-matériau soumise à des petits ou grands déplacements) à partir du principe des

travaux virtuels qui relie le travail des efforts extérieurs, appliqués à une structure donnée, et l’énergie

interne de déformation de la structure. Selon ce principe, le travail virtuel Wext, i.e. le travail des

efforts extérieurs virtuels appliqués selon des déplacements virtuels dus à ces efforts correspond à la

variation de l’énergie de déformation Wint du système donné [Hughes 1987], [Trompette 1992],

[Fuchs & al. 2001] :

0

int

=

+ W

W

ext

δ

δ

. (2.1)

La variation de l’énergie interne d’un système mécanique peut être exprimée par le travail des efforts intérieurs en chaque point de la structure selon les déplacements de ces points dont l’ensemble

forme un domaine D (structure donnée). Certaines relations concernant les efforts intérieurs et la

géométrie déformée seront présentées au chapitre 4. Ces principes de base sont décrits dans [Timoshenko & al. 1959], [Timoshenko 1972], [Craig 1981].

Ainsi, un système d’équations aux dérivées partielles est obtenu à partir de l’équation (2.1) et

soumis aux CLs géométriques (déplacements imposés de la structure ou du domaine D) ou physiques

(efforts extérieurs appliqués) selon le problème à résoudre. Vu que le système d’équations différentielles est assez complexe, on procède à une approximation des inconnues (déplacements ou

efforts à appliquer) en discrétisant le domaine D et l’on résout alors ce système d’équations. Ainsi, les

principes de base de MEF sont :

• la discrétisation du domaine D en un ensemble de domaines plus simples, appelés domaines

élémentaires ou éléments finis De, dont on connaît la solution (par exemple, un déplacement

élémentaire approximé à l’aide de certaines fonctions de base),

• l’approximation de déplacements ve du domaine De en certains points de De et, par

interpolation, leur obtention en tout point de De,

• l’approximation du comportement du domaine D (le calcul d’un déplacement inconnu v de la

structure, par exemple) à partir de « l’assemblage » des déplacements élémentaires ve de tous

les domaines De, constituant la structure.

Par ailleurs, les relations de l’élasticité donnent accès à l’analyse de la structure déformable à étudier en termes de déformations et de contraintes normales et tangentielles dans la structure,

une fois que les déplacements du domaine D sont déterminés [Timoshenko & al. 1959], [Timoshenko

1972].

Plus concrètement, la décomposition du domaine réel D en domaines élémentaires De,

caractérisés par une forme géométrique choisie (barre, triangle, quadrangle, élément volumique,…) et un nombre de nœuds associés afin de définir cette forme, a pour résultat la génération d'un maillage du

domaine réel. Par définition, le déplacement élémentaire ve de chaque domaine De est une fonction

dépendant des coordonnées x, y et z d'un point M de De [Trompette 1992], [Fuchs & al. 2001]. Par

conséquent, on pose :

=

=

n i i i e

v N x y z

v

1

)

,

,

(

, (2.2)

avec n le nombre de nœuds de De, vi les inconnues nodales, Ni les fonctions d’interpolation, exprimées selon une certaine forme mathématique (linéaire, polynomiale,…) et permettant d’approximer les

déplacements nodaux de l’élément De.

La description des fonctions Ni se fait au travers des fonctions de base. Ces fonctions de base

décrivent pour chaque nœud comment les variables qu’il contient influencent la fonction choisie. Ces fonctions de base sont généralement de la même forme pour tous les nœuds et de leur complexité dépendra de l’espace des fonctions représentables et donc, de la qualité de la solution [Debunne 2000].

La fonction d’interpolation Ni est souvent approximée par une fonction linéaire par morceaux, linéaire

sur chacun des éléments : la valeur de cette fonction à chaque nœud vaut 1 si ce nœud est considéré et 0 sur tous les autres nœuds. Toute fonction linéaire par morceaux sur les éléments peut en effet être représentée comme une somme pondérée de ces fonctions de base, les poids associés à chaque nœud étant les valeurs prises par la fonction en ces nœuds. De plus, une condition de continuité sur la fonction approximant le déplacement nodal est imposée : les éléments voisins doivent avoir les mêmes déplacements aux nœuds partagés.

Une fois le vecteur ve déterminé à partir de ces déplacements nodaux, le principe des travaux

virtuels peut être exprimé sous la forme matricielle :

e e

e

v F

K =

, (2.3)

Ke est la matrice de raideur de l’élément De, Fe est le vecteur des efforts nodaux appliqués à

l’élément.

En fait, l’équilibre du système doit être vérifié sur chacun des éléments, ce qui se traduit par des équations en chaque nœud. La condition d’équilibre s’exprime analytiquement en chaque nœud comme une combinaison linéaire des valeurs prises par la fonction approximant les déplacements. En

exprimant l’équation (2.2), linéaire pour chaque nœud du domaine D, un système d’équations linéaires

de la forme de (2.3) est obtenu. Finalement, au cours de la résolution du problème, l’assemblage des

De en D est effectué. Ainsi, le problème s’écrit sous la forme matricielle suivante :

F

Kv=

, (2.4)

K est la matrice de raideur du système mécanique, déterminée à partir des caractéristiques

géométriques (dimensions) et physiques du matériau de la structure (module d’Young, coefficient de

Poisson,…), v et F sont les vecteurs des déplacements et des efforts externes appliqués en chaque

nœud du domaine D maillé.

Afin de pouvoir résoudre le système (2.4), les CLs sont utilisées. En fonction de la nature de la manipulation d’un objet déformable virtuel, les CLs sont exprimées comme les déplacements imposés ou les efforts extérieurs appliqués en un certain nombre de nœuds de la structure maillée. Donc, le

calcul de K-1 peut être nécessaire.

En animation, on ne cherche généralement pas à trouver les positions d’équilibre d’un objet virtuel, mais plutôt sa déformation au cours du temps [Debunne 2000]. Dans ce cas, la résolution d’une expression générale de (2.4), exprimée également sous la forme matricielle et comprenant l’inertie et la viscosité du système mécanique, est nécessaire :

F

Kv

v

C

v

M + =

+

t

t

2 2 , (2.5)

avec M et C les matrices définissant la masse et l’amortissement du système mécanique, obtenues

comme K.

Les matrices M, C et K dépendent des paramètres géométriques de l’objet déformable, des

propriétés de son matériau ainsi que de la géométrie des éléments constituant le maillage. Elles doivent donc être recalculées à tout moment lorsque la déformation d’un tel objet se produit, ce qui est coûteux en termes de temps de calcul et d’espace mémoire. Afin de préserver la fluidité des images, une technique souvent utilisée consiste à considérer ces matrices comme constantes. Cette approximation linéarisée du comportement de l’objet déformable ne peut être intéressant que pour une

Chapitre 2. Réalité virtuelle : méthodes et modèles

structure produisant des petits déplacements et petites déformations. Toutefois, cette méthode n’est plus utilisable lorsqu’il s’agit de simuler correctement du point de vue mécanique le comportement d’un objet soumis à des grands déplacements et grandes déformations. Ici, le comportement physique du matériau ainsi que les déplacements de la structure ne sont plus linéaires et demandent une autre approche afin d’obtenir des valeurs réalistes des paramètres caractérisant la déformation et donc, utilisables dans l’analyse d’une manipulation virtuelle.

Par ailleurs, en statique, la mise à jour de la matrice K et l’approximation des déplacements

nodaux par les fonctions d’interpolation linéaires de l’équation (2.2) ne permettent pas non plus de modéliser correctement un objet déformable soumis à des grands déplacements. Une autre technique pour la MEF, permettant de simuler plus correctement du point de vue mécanique le comportement

d’un objet flexible, est basée sur l’utilisation de fonctions d’interpolation Ni non-linéaires. Par

conséquent, ceci freine fortement le processus de calcul même pour des éléments finis simples de type poutres 1D ou triangles 2D, utilisés pour le maillage [Léon & al. 1999], [Mikchevitch & al./1 2003]. Les problèmes de modélisation du comportement non-linéaire d’éléments finis ainsi que la génération d’un maillage adapté sont discutés dans [Wu & al. 2001].

L’une des premières applications de la MEF dans le domaine de RV, à part la visualisation « statique » de résultats scientifiques de modélisation, fut une simulation d’un contact entre une main et une balle déformable avec une détection de collisions quelque peu empirique et une modélisation simplifiée des doigts [Gourret & al. 1989]. La matrice de raideur est remise à jour lorsque les articulations des doigts ont bougé de plus de dix degrés.

Afin de diminuer le temps de calcul, une approche, basée sur le principe que seuls les déplacements des nœuds de la surface sont pertinents visuellement, avait été proposée par M. Bro-Nielsen et S. Cotin. Le système (2.4) peut être alors réécrit en séparant les nœuds de surface de ceux de l’intérieur de la structure déformable [Bro-Nielsen & al. 1996]. Cette méthode aboutit à un système matriciel qui ne concerne plus que les nœuds de la surface, donc de taille bien moindre, mais qui a, en contrepartie, perdu sa structure de matrice creuse [Debunne 2000]. En matière de comportement mécanique, une telle simulation temps réel ne représente qu’une simulation rapide et simplifiée de la déformation en surface dans le domaine de petits déplacements, sans aucun lien physique entre la frontière et l’intérieur la structure elle-même, donc il ne s’agit plus de modélisation de comportement réaliste d’un objet virtuel déformable.

Une approche, proposée par D. James et D. Pai est basée sur l’approximation de l’équation

(2.4) par des différences finies avec la mise à jour de la matrice inversée K-1. Lorsque l’utilisateur

manipule un outil virtuel pour déformer l’objet, peu de nœuds passent du statut de déplacé à celui de libre, et inversement. Les auteurs ont alors fait remarquer que la matrice inverse n’était que peu modifiée dans ces cas. L’influence d’un nœud étant limitée à une colonne de la matrice, il est possible de la remettre à jour rapidement à l’aide de pré-calculs lourds, l’animation restant ainsi temps-réel [Debunne 2000]. Cette approximation concerne également un objet virtuel déformable soumis à des petits déplacements. De plus, les auteurs ont proposé une méthode d’éléments frontières (BEM Boundary Element Method), basée sur la MEF mais nécessitant la discrétisation d’une surface uniquement. Ainsi, la déformation temps-réel de la surface d’un objet flexible soumis à des petits déplacements est modélisée en représentant les efforts à l’intérieur d’un tel objet (par exemple le poids) comme des CLs supplémentaires appliquées à la surface maillée représentant la frontière de l’objet déformable (Figure 2.18a) [James & al. 1999]. Cependant, une telle simulation de déformation rapide ne permet pas non plus de modéliser correctement le comportement mécanique d’un objet flexible soumis à des grands déplacements.

G. Debunne propose de chercher à générer automatiquement les déformations linéaires d’un objet mou (un organe humain avec des caractéristiques matériau complexes et difficiles à déterminer) pour la simulation des opérations destinée à la formation des chirurgiens (Figure 2.18b). Une méthode de simulation multi-résolution, qui adapte automatiquement, en fonction de chaque zone de l’objet, la précision des calculs à l’aide de différents maillages adaptés afin d’obtenir un compromis entre une simulation grossière et très rapide ou au contraire, une animation plus précise utilisant davantage de nœuds, est proposée [Debunne 2000]. La partie de l’organe proche de l’outil manipulé par l’utilisateur est ainsi simulée avec une grande précision en temps réel. La précision diminue dans les régions éloignées de la partie manipulée, moins importantes visuellement, représentées par un maillage plus grossier. Ces travaux ont abouti à la réalisation de prototype d’un simulateur chirurgical offrant une

animation temps réel grâce à l’utilisation de la multi-résolution. Néanmoins, il s’agit aussi d’objets déformables utilisant un modèle de petits déplacements, ce qui n’est plus applicable au problème de grands déplacements. De plus, le problème de représentation correcte de déformation d’un objet mou nécessite aussi la détermination/validation et l’intégration des lois de comportement non-linéaires physiquement. Il en résulte visuellement une certaine impression de réalisme bien que les résultats obtenus ne soient pas fidèles aux phénomènes mécaniques mis en jeu.

( a ) ( b )

Figure 2.18. Exemples d’application de la MEF dans la simulation d’objets virtuels déformables : ( a ) BEM – une des modifications de la MEF [James & al. 1999] ;

( b ) simulation multi-résolution basée sur le principe de la MEF [Debunne 2000].

Pour conclure la présentation des approches à base d’EF et ses différentes interprétations, notons que le réalisme dans la simulation du comportement physique des objets déformables dépend, d’une part, des fonctions d’interpolation choisies selon la précision voulue en ce qui concerne les déplacements nodaux. Elles caractérisent ainsi les propriétés et le comportement de chaque élément de la structure déformable soumise aux petits ou grands déplacements. D’autre part, la qualité du maillage, qui est une fonction du type d’élément utilisé, de ses propriétés et taille, etc. joue également un rôle important dans la simulation réaliste du comportement d’un objet déformable. En effet, il existe plusieurs types d’élément selon le comportement recherché pour modéliser au mieux la déformation de la structure : les poutres, les éléments plaques ou coques, les éléments volumiques, etc. Plus le maillage est fin, plus l’approximation est bonne et donc, plus le résultat de simulation sera proche de la réalité. Cependant, plus le nombre de nœuds augmente et plus le calcul sera long et encombrant en place mémoire, ce qui est une contrainte forte pour la simulation temps réel. La qualité du maillage, les paramètres intrinsèques comme le type de fonctions d’interpolation ou la mise à jour de la matrice de raideur, l’intégration de différentes lois de comportement avec des caractéristiques matériau souvent difficilement déterminables, l’utilisation des pré-calculs, etc. sont donc un compromis entre la précision de la solution et le temps de calcul.