THÈSE de DOCTORAT de l'université d'evry. Contact frottant entre objets déformables dans des simulations temps-réel avec retour haptique



Documents pareils
modélisation solide et dessin technique

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Télécom Nancy Année

(VM(t i ),Q(t i+j ),VM(t i+j ))

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Couples de variables aléatoires discrètes

NOTATIONS PRÉLIMINAIRES

Guilhem MOLLON. Polytech Grenoble Département Géotechnique, Troisième année Edition 1, V1.10

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R

Immersion - Vision 3D dans la RV.

DYNAMIQUE DE FORMATION DES ÉTOILES

INTRODUCTION. A- Modélisation et paramétrage : CHAPITRE I : MODÉLISATION. I. Paramétrage de la position d un solide : (S1) O O1 X

CHAPITRE VIII : Les circuits avec résistances ohmiques

Compte rendu des TP matlab

SDLV120 - Absorption d'une onde de compression dans un barreau élastique

Chapitre 1 Régime transitoire dans les systèmes physiques

Anticiper pour avoir une innovation d'avance : le leitmotiv de Pierre Jouniaux, entrepreneur du big data!

3 Approximation de solutions d équations

Retournement Temporel

Les correcteurs accorderont une importance particulière à la rigueur des raisonnements et aux représentations graphiques demandées.

LE PROBLEME DU PLUS COURT CHEMIN

2. Activités et Modèles de développement en Génie Logiciel

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

Introduire un nouveau type de maille ou un nouvel élément de référence

SSNV143 - Traction biaxiale avec la loi de comportement BETON_DOUBLE_DP

Cours 02 : Problème général de la programmation linéaire

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL

chapitre 4 Nombres de Catalan

Les capteurs et leurs branchements

Chapitre 1 : Introduction aux bases de données

Baccalauréat technologique

2 Grad Info Soir Langage C++ Juin Projet BANQUE

T.P. FLUENT. Cours Mécanique des Fluides. 24 février 2006 NAZIH MARZOUQY

Rupture et plasticité

PHYSIQUE Discipline fondamentale

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Exemples de Projets SAFI

SIMULATION HYBRIDE EN TEMPOREL D UNE CHAMBRE REVERBERANTE

Une réponse (très) partielle à la deuxième question : Calcul des exposants critiques en champ moyen

10 leçon 2. Leçon n 2 : Contact entre deux solides. Frottement de glissement. Exemples. (PC ou 1 er CU)

Chapitre 7: Dynamique des fluides

DÉVERSEMENT ÉLASTIQUE D UNE POUTRE À SECTION BI-SYMÉTRIQUE SOUMISE À DES MOMENTS D EXTRÉMITÉ ET UNE CHARGE RÉPARTIE OU CONCENTRÉE

Équations non linéaires

Java 7 Les fondamentaux du langage Java

SOMMAIRE Thématique : Matériaux

SPECIALITE «ITEC» DU BAC STI2D : «INNOVATION TECHNOLOGIQUE - ECO CONCEPTION»

Calculateur d'économies d'énergie des produits client Dell. Description générale de la consommation d'énergie des systèmes informatiques :

Qu'est-ce que le BPM?

Master Modélisation Aléatoire Paris VII, Cours Méthodes de Monte Carlo en nance et C++, TP n 2.

Date : Tangram en carré page

Rapport d'analyse des besoins

Business Intelligence avec SQL Server 2012

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.

Les nouveautés de Femap 11.1

Conduite et Gestion de Projet - Cahier des charges

CNAM UE MVA 210 Ph. Durand Algèbre et analyse tensorielle Cours 4: Calcul dierentiel 2


TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

Convertisseurs statiques d'énergie électrique

Compte-rendu de projet de Système de gestion de base de données

Raisonnement par récurrence Suites numériques

Consensus Scientifique sur. les. Champs statiques

Formation à la C F D Computational Fluid Dynamics. Formation à la CFD, Ph Parnaudeau

La fonction exponentielle

Oscillations libres des systèmes à deux degrés de liberté

Figure 1 : représentation des différents écarts

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

TEST ET RÉGLAGE DES SUSPENSIONS

Utilisation du logiciel GALAAD

Problème : Calcul d'échéanciers de prêt bancaire (15 pt)

CHAPITRE IX : Les appareils de mesures électriques

Introduction à la relativité générale

Logiciel de gestion de données

DISQUE DUR. Figure 1 Disque dur ouvert

Chapitre XIV BASES PHYSIQUES QUANTITATIVES DES LOIS DE COMPORTEMENT MÉCANIQUE. par S. CANTOURNET 1 ELASTICITÉ

ORACLE TUNING PACK 11G

Simulation du transport de matière par diffusion surfacique à l aide d une approche Level-Set

Adaptation d'un véhicule au revêtement de la piste

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante.

La physique nucléaire et ses applications

Les algorithmes de base du graphisme

CONSEIL NATIONAL DE LA COMPTABILITÉ Remplacement d instruments

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Conception d'un réseau de transport d'électricité

Méthodes de développement

Découverte du tableur CellSheet

Trépier avec règle, ressort à boudin, chronomètre, 5 masses de 50 g.

MEGA ITSM Accelerator. Guide de Démarrage

TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname

TUTORIAL 1 ETUDE D UN MODELE SIMPLIFIE DE PORTIQUE PLAN ARTICULE

Développement de lois et de structures de réglages destinées à la téléopération avec retour d effort

Chapitre 10 : Radioactivité et réactions nucléaires (chapitre 11 du livre)

Chapitre 1: Facteurs d'échelle

D'UN THÉORÈME NOUVEAU

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Une application de méthodes inverses en astrophysique : l'analyse de l'histoire de la formation d'étoiles dans les galaxies

Transcription:

THÈSE de DOCTORAT de l'université d'evry Spécialités : Robotique - Réalité Virtuelle Contact frottant entre objets déformables dans des simulations temps-réel avec retour haptique Présentée par : Christian DURIEZ pour obtenir le titre de Docteur de l'université d'evry Soutenance prévue le 20 Décembre 2004 devant le jury composé de : Pierre Alart Professeur à l'université de Montpellier, Rapporteur Hervé Delingette Chargé de Recherche à l'inria Sophia-A., Rapporteur Vincent Hayward Professeur à Mc Gill, Canada, Rapporteur Christophe Chaillou Professeur à l'université de Lille, Examinateur Frédéric Dubois Ingénieur de Recherche au CNRS, Examinateur Stéphane Redon Chargé de Recherche à l'inria, UNC, USA, Examinateur Eiichi Yoshida Senior Researcher à l'aist, Japon, Examinateur Stéphane Cotin Group Leader au CIMIT, Boston, USA, Invité Claude Andriot Responsable du thème RV, Encadrant CEA, Examinateur Abderrahmane Kheddar Professeur, détaché au CNRS, Japon, Directeur de thèse

Remerciements Je tiens à remercier Abderrahmane Kheddar, mon directeur de thèse, et Claude Andriot, mon encadrant au CEA, pour leur soutien et leurs conseils tout au long de cette thèse. Les deux écoles d'été CNRS sur la dynamique non-régulière, m'ont permis dans un premier temps, de centrer la problématique de cette thèse sur le contact frottant, puis de rencontrer Frédéric Dubois que je tiens à remercier particulièrement pour son aide, et pour le temps qu'il m'a consacré. J'ai aussi eu la chance d'y rencontrer Pierre Alart, qui a accepté d'être rapporteur de cette thèse, même si celle-ci peut paraître éloignée des problématiques habituelles du groupe matériaux granulaires au LMGC. Je remercie également Vincent Hayward et Hervé Delingette pour leurs rapports sur cette thèse, ainsi que les autres membres du Jury, Stéphane Redon, Eiichi Yoshida et Stéphane Cotin. Merci à Christophe Chaillou, qui est à l'origine de mon intérêt pour la recherche sur l'haptique, d'avoir accepté d'être le président du Jury. Durant ces trois ans de thèse, les échanges avec Mamy Pouliquen, Yves Rollot, Emmanuel Brau, Antoine Rennuit, Lionnel Joussemet, Nabil Zemiti, René Polizzi, Moustapha Hafez, Mohammed Benali-Khoudja, et tant d'autres personnes au CEA, ont été riches et nombreux. Je leur en suis reconnaissant. J'adresse un merci particulier, à Paul Bernardoni pour son soutien de tous les jours et son amitié. Quant à Alain Micaelli et Laurent Chodorge, je les remercie d'avoir relu ce rapport. David Sion et Matthieu Besnard, ont fait un stage sur le travail qui est décrit dans cette thèse. Merci à ces deux formidables jeunes ingénieurs pour leur collaboration! Enn, le jeune marié que je suis, tient à remercier son épouse, Frédérique, d'apporter un soutien inconditionnel à la recherche en haptique, en relisant les rapports de son mari et en tentant de les vulgariser auprès de nos familles et de nos amis.

Table des matières Introduction 1 Contributions 3 1 Contexte des simulations interactives d'objets déformables 5 1.1 Introduction....................................... 5 1.1.1 Intérêt des simulations interactives...................... 6 1.1.2 Schéma fonctionnel d'une simulation..................... 7 1.1.3 Comment obtenir une simulation de qualité?................ 9 1.2 Modèles de déformation discrets............................ 11 1.2.1 Modèles particulaires.............................. 12 1.2.2 Modèles masse-ressort............................. 12 1.2.3 Modèles dédiés................................. 14 1.3 Simulations interactives d'objets élastiques par éléments nis........... 15 1.3.1 Introduction................................... 15 1.3.2 Elasticité linéaire................................ 16 1.3.3 Elasticité non-linéaire............................. 20 1.3.4 Modèles corotationnels............................. 23 1.4 Détection de collisions par accélération hiérarchique................. 27 1.4.1 Détection entre primitives........................... 27 1.4.2 Détection approximative (Narrow-phase)................... 28 1.4.3 Recherche de proximité (broad-phase).................... 30 1.5 Méthodes émergentes en détection de collisions................... 31 1.5.1 Champs de distance.............................. 31 1.5.2 Méthodes stochastiques............................ 33 1.5.3 Stratégies exploitant le matériel graphique.................. 34 2 Choix du modèle de contact frottant 39

2.1 Introduction à la gestion des contraintes unilatérales................ 39 2.1.1 Problème d'un contact unique en mécanique statique............ 39 2.1.2 Problèmes des contacts et chocs en dynamique............... 42 2.2 Méthodes de résolution associées à la gestion des contacts............. 46 2.2.1 Modèles approchés utilisés en simulation interactive............ 46 2.2.2 Méthodes d'intégration numérique...................... 49 2.3 Discrétisation du contact par éléments nis linéaires................ 52 2.3.1 Loi de Signorini en mécanique des milieux continus............. 52 2.3.2 Discrétisation par tétraèdres linéaires..................... 56 2.3.3 Construction d'un LCP et résolution..................... 63 2.4 Gestion des frottements de Coulomb......................... 66 2.4.1 Traitement en 2D................................ 67 2.4.2 Modélisation par un cône à facettes en 3D.................. 70 2.4.3 Résolution en 3D, uni-contact, par une méthode de Newton........ 71 3 Resolution en temps-réel 77 3.1 Méthode de type Gauss-Seidel, dans un contexte temps-réel............ 77 3.1.1 Description de la méthode........................... 78 3.1.2 Justication expérimentale de l'utilisation de cette méthode........ 83 3.2 Du déformable statique vers le rigide dynamique.................. 89 3.2.1 Déformations linéaires dynamiques...................... 89 3.2.2 Approche corotationnelle globale....................... 93 3.2.3 Vers une méthode de contact compliant sur les objets rigides....... 97 3.3 Librairie de calcul RTSignorini.lib.......................... 101 3.3.1 Architecture de la librairie........................... 101 3.3.2 Calcul de l'opérateur de Delassus....................... 103 3.3.3 Tests de validation............................... 104 4 Rendu Haptique et Applications 109 4.1 Introduction au rendu haptique............................ 109 4.1.1 Dispositifs Haptiques.............................. 110 4.1.2 Plate-forme PHARE.............................. 113 4.2 Interfaçage entre la simulation et le dispositif haptique............... 115 4.2.1 Généralités sur la commande d'un dispositif haptique............ 115 4.2.2 Introduction d'un couplage.......................... 117 4.2.3 Commande en admittance........................... 120

4.2.4 Couplage sur le modèle corotationnel global................. 121 4.3 Performances...................................... 122 4.3.1 Séparation des processus............................ 122 4.3.2 Mesure des Performances........................... 124 4.4 Perspectives d'applications............................... 128 4.4.1 Pinces déformables............................... 128 4.4.2 Visualisation des contraintes.......................... 132 4.4.3 Modèle pour une préhension interactive................... 133 Conclusion et Perspectives 139 BIBLIOGRAPHIE 141 Annexes 151 A Méthodes de gestion des contraintes sur un objet déformable 153 B Mise à jour de la compliance quand K n'est pas constante 157

Introduction La robotique est une science pluridisciplinaire, qui fait appel à des aspects liés à la mécanique, à l'informatique et à l'automatique. Avec la téléopération, les roboticiens se sont intéressés à la reproduction de sensations kinesthésiques pour aider la commande à distance de robots, dans des environnements contraints, inaccessibles à l'homme. Depuis quelques années, cette expérience a été développée pour reproduire ces sensations qualiées d' haptiques, à partir de simulations informatiques, dans le domaine de la réalité virtuelle. Or, il s'avère que ce nouveau thème de recherche a des résonances encore beaucoup plus larges. Il provoque des questions liées à l'ergonomie, à l'étude des interactions sensorielles (vision, sons, gestes), à la commande et à la conception des interfaces, mais aussi, à la création d'environnements virtuels, qui interagissent directement avec un utilisateur, sans connaître à l'avance ses réactions. Ces environnements peuvent être des animations (ou même des jeux), dans lesquels les forces que l'on cherche à faire ressentir à l'utilisateur sont des artices. Mais, on peut aussi chercher à y reproduire des phénomènes proches de la réalité, avec des environnements basés sur des simulations physiques, dont le but est de reproduire des sensations kinesthésiques dèles. Cela nous rapproche du domaine de la mécanique numérique, qui, depuis de nombreuses années, a pour but de modéliser et de résoudre des phénomènes mécaniques complexes grâce à l'outil informatique. Cependant, l'aspect interactif des simulations avec retour haptique, nécessite un calcul tempsréel. En eet, l'utilisateur doit avoir le sentiment que les forces, qui lui sont renvoyées, sont continues. Il faut donc que la simulation réponde en un temps très limité à chacune des sollicitations qui lui sont fournies en entrée. Or, cet aspect temps-réel de la simulation oblige à revisiter les modèles, les méthodes de résolution et l'implémentation informatique des travaux issus de la mécanique numérique. Pour autant, comme nous le verrons dans cette thèse, il est nécessaire de veiller à respecter au maximum les lois mécaniques an d'aboutir à un retour d'eorts de qualité. Ainsi, ce travail se donne pour objectif le calcul des forces de contact et de frottement entre des objets déformables, dans une simulation avec retour haptique. Dans un premier chapitre, nous introduirons le cadre de cette étude, les domaines d'applications de la réalité virtuelle et de l'haptique. Nous décrirons les principaux travaux sur le calcul des déformations des objets en temps-réél. Nous décrirons, d'abord, les méthodes utilisant un modèle et une résolution particulières, créées pour le contexte temps-réel. Puis, nous présenterons les travaux issus de la discrétisation de la mécanique des milieux continus, par les éléments nis. Nous aborderons, ensuite, la détection de collisions adaptée aux objets déformables. Pour cette détection, on constate qu'une partie des travaux propose une extension au déformable de 1

2 Introduction méthodes utilisées dans le contexte des objets rigides. D'autres méthodes, émergentes, proposent des solutions radicalement nouvelles. Enn, nous constaterons que peu de travaux se sont focalisés sur les phénomènes et modèles du contact, qui font la liaison entre la détection de collisions et les modèles d'objets déformables, dans les simulations interactives. Dans un second chapitre, nous présenterons notre travail par quelques exemples intuitifs des problèmes pouvant naître de la gestion des contacts et frottements. Puis, nous décrirons les méthodes utilisées actuellement, dans le cadre où nous nous plaçons, mais aussi dans d'autres contextes (solides rigides, et mécanique numérique). Cela nous amènera à décrire la loi de Signorini, qui régit le contact entre un objet déformable et une surface rigide, ou entre deux objets déformables, en mécanique des milieux continus. Ensuite, nous verrons comment elle s'écrit avec la méthode des éléments nis. Enn, nous énoncerons la loi de frottement de Coulomb, et nous exposerons quelques méthodes de résolution. Dans un troisième chapitre, nous nous concentrerons sur les aspects temps-réel de la simulation. Nous introduirons une méthode de résolution itérative de type Gauss-Seidel, et comparerons son ecacité, par rapport à une méthode directe. Ensuite, le fait que le pas de temps de la simulation soit égal à celui du temps de calcul 1, nous amènera à retravailler les modèles d'objets déformables. Ainsi, nous introduirons l'approche corotationnelle globale, qui permet de faire une séparation entre le choix du pas de temps de la simulation, et le rapport entre la masse et la raideur des objets déformables. Puis, voyant que notre méthode est toujours ecace pour les objets déformables tendant vers un comportement rigide, nous proposerons une approche par contact compliant, valable sur des objets très peu déformables. Enn, nous présenterons les aspects liés à l'implémentation des modèles, qui est importante dans un contexte temps-réel, et nous proposerons quelques tests de validation des résultats. Dans un quatrième et dernier chapitre, nous aborderons le retour haptique en présentant les principaux dispositifs à retour d'eorts. Ensuite, nous décrirons la méthode de couplage utilisée entre la simulation et l'interface haptique. Ce couplage nous a permis de faire des premiers essais sur la plate-forme de réalité virtuelle du CEA. Nous analyserons donc les temps de calculs du traitement du contact frottant obtenus lors de l'utilisation de cette plate-forme. Enn, nous décrirons les perspectives d'applications de ce travail, en analysant une série de tests concrets, déjà réalisés. 1 Ceci est le principe même du temps-réel, que nous décrirons en détail dans le premier chapitre.

Contributions Ce document présente les principales contributions apportées par ce travail en robotique et réalité virtuelle. An de faire apparaître clairement les points sur lesquels la thèse se distingue des travaux précédents, nous proposons ici une liste des principales contributions. Dans un premier temps, ce travail propose une nouvelle méthode de traitement temps-réel des contacts entre objets déformables basée sur la loi de Signorini. L'utilisation de la loi de Signorini pour modéliser le contact entre des corps élastiques discrétisés par la méthode des éléments nis n'est pas nouvelle. Mais l'introduction d'une telle loi, dans un contexte temps-réel, avec notamment l'emploi des propriétés de condensation de la compliance an d'accélérer le calcul est elle tout à fait innovante. Ensuite, le travail s'oriente vers l'utilisation de la loi de frottement de Coulomb. Peu de moteurs physiques temps-réel savent traiter correctement le frottement de Coulomb, même dans des cas rigides. Dans cette thèse, nous montrons que le traitement par des cônes de frottement facettisés an de parvenir à une formulation LCP n'est pas le plus ecace. En eet, dans le contexte de la simulation granulaire, une résolution de type Gauss-Seidel a été proposée pour traiter les contacts frottants. Pour la première fois, cette méthode a été testée dans un contexte temps-réel, avec des performances totalement nouvelles. Puis, nous nous sommes intéressés à l'utilisation d'un modèle corotationnel global dans le contexte de la gestion des contacts. Grâce à ce modèle, on parvient à séparer le choix du pas de temps de la simulation du rapport masse-raideur des objets, ce qui permet de choisir le pas de temps égal au temps de calcul. De même, dans l'opérateur de Delassus, qui reête les couplages entre les contacts, on parvient à séparer la partie dynamique rigide de la partie déformable quasi-statique. Cela permet d'utiliser ce type de modèle pour des objets quasi-rigides, tout en apportant une compliance physiquement réaliste, issue d'un modèle éléments nis de l'objet. Nous avons, par ailleurs, étendu cette approche par une méthode de contact compliant. Enn, cette thèse apporte des démonstrations totalement innovantes en haptique : Tests d'enclipsage, traitement du contact entre deux objets déformables en temps-réel et du frottement de Coulomb sans régularisation, modèle de contact frottant pour la préhension. Dans le document, ces contributions sont replacées dans leur contexte et largement détaillées. 3

Chapitre 1 Contexte des simulations interactives d'objets déformables Dans ce chapitre, nous présentons les simulations interactives fondées sur les lois physiques et l'intérêt d'y inclure des objets déformables. Puis, nous exposons les méthodes développées pour les deux principaux composants d'un tel simulateur : la détection de collisions entre les objets déformables et le calcul de leurs mouvements et déformations. Enn, nous introduisons le lien entre ces deux composants : la modélisation des contacts qui est l'objet de cette thèse. 1.1 Introduction Les corps déformables sont omniprésents, que ce soit dans les parties internes à notre corps ou dans notre environnement. Par conséquent, leur simulation est un aspect clé dans la création de maquettes numériques d'objets issus de notre monde de tous les jours. En mécanique numérique, de nombreux codes de calculs cherchent à reproduire le comportement d'objets divers : du plus dur au plus souple, du plus compressible à l'incompressible, d'une structure la plus simple à la plus complexe. Par ces codes de calculs, on s'attache à trouver des lois de comportement pour les matériaux, qui reproduisent le plus dèlement possible ce qui est constaté durant les expérimentations. Ces lois de comportement, n'ont de solution analytique que pour des cas extrêmement simples. Dans les autres cas, l'analyse numérique propose diverses méthodes de résolution approchant la solution exacte. Pour ces applications, on cherche évidemment à mener les calculs de manière ecace, mais le temps de calcul n'est pas, en soi, un problème critique. Pourtant, les avancées technologiques actuelles permettent d'envisager la simulation de corps déformables en temps réel, c'est-à-dire que le temps de calcul d'un pas de simulation devient aussi rapide que le pas de temps physique correspondant. Or, cette rapidité de calcul permet d'ouvrir nombre de nouvelles perspectives pour ces codes de calculs. L'une d'elles est leur utilisation selon un mode interactif. Ainsi, l'utilisateur n'a plus à entrer un scénario de charge pour son modèle déformable, mais il lui devient possible de le 5

6 Chapitre 1. Contexte des simulations interactives d'objets déformables manipuler à l'intérieur de la simulation. 1.1.1 Intérêt des simulations interactives Ainsi, depuis quelques années, diérents travaux ont montré l'intérêt de ces simulations dans un contexte médical. La construction de modèles reproduisant le comportement de certains organes a permis de créer des simulateurs d'entraînement au geste médical. Dans la même idée que le simulateur de vol pour les pilotes, le simulateur médical est un outil pour former les chirurgiens aux aspects pratiques de leur métier, sans passer par des opérations sur des animaux ou sur des cadavres, et en réduisant le compagnonnage. Ils ont à leur disposition des bras de robot ayant les mêmes fonctionnalités que les instruments de chirurgie habituels (voir gure 1.1). Lorsqu'ils Fig. 1.1 Schéma de l'architecture des simulateurs d'entrainement au geste chirurgical. les bougent, ils visualisent sur un écran les mouvements de leurs instruments. Quand ces derniers viennent en contact avec les organes, le bras de robot (appelé interface haptique) reproduit la résultante des forces de contact calculées à l'intérieur de la simulation, ce qui nécessite un temps de réponse très court. Dans des versions plus élaborées, en reproduisant plus dèlement les organes d'un patient, on peut proposer ces simulations aux chirurgiens expérimentés pour préparer une intervention délicate [VSG + 04]. Les simulations physiques interactives intéressent également les industriels. Dans la phase de conception d'un produit, ils ont souvent recours à la création de maquettes pour pouvoir tester ecacement le montage et le démontage de pièces, ou pour évaluer la diculté de réaliser une opération de maintenance sur ce produit. Avec des simulations interactives, l'idée est d'avancer vers une maquette numérique des produits, permettant de faire les mêmes tests dans des délais beaucoup plus courts et à un coût fortement réduit. On appelle cela le prototypage virtuel [Wan02] [GdSZ99]. A l'aide de l'interface haptique, l'utilisateur manipule les objets conçus, qu'il visualise à l'écran. Il peut alors vérier si le montage qu'il souhaite eectuer est compatible avec la géométrie actuelle des pièces. Le retour de sensation en force est important pour vérier si certaines parties ne coincent pas lors du montage. La modélisation correcte des frottements entre les objets peut s'avérer d'une très grande importance. Dans ce contexte, on remarque que la vérication de certains montages nécessite la prise en compte des déformations de quelques pièces. C'est par exemple le cas des câbles, des pièces enclipsées, des pièces en mousse, etc.

1.1 Introduction 7 Fig. 1.2 Image virtuelle du futur cockpit de l'a380 c. L'industrie aéronautique utilise de façon croissante la maquette numérique pour la conception des avions. Prenons, tout d'abord, l'exemple de l'industrie aéronautique. La conception des avions est extrêmement complexe et contrainte. Pourtant, il faut maintenir une certaine ergonomie de l'ensemble et en particulier de l'intérieur du cockpit (voir gure 1.2). La visualisation d'un modèle numérique en trois dimensions à l'aide de la stéréoscopie permet déjà aux concepteurs de se faire une idée plus concrète de l'ensemble. Mais la possibilité de toucher le modèle numérique de façon virtuelle, à l'aide d'une interface à retour d'eorts, permettrait d'étendre l'étude ergonomique à l'ensemble de la phase de conception. L'assemblage dans l'industrie automobile nous fournit un second exemple. Actuellement, les concepteurs des lignes d'assemblage utilisent la stéréo-lithographie pour réaliser rapidement des maquettes permettant de tester l'assemblage des pièces et de prévoir l'outillage associé. En eet, les tâches de montage ou démontage sont extrêmement diciles à modéliser avec des logiciels classiques de CAO. Une simulation interactive est une solution beaucoup plus intuitive. Elle propose alors, à l'utilisateur, de reproduire les gestes du montage, à travers des interfaces haptiques ou à l'aide de la capture de mouvement, tout en étant couplée avec une simulation physique temps-réel du comportement des objets (gure 1.3). La qualité de cette simulation est donc de première importance. 1.1.2 Schéma fonctionnel d'une simulation Pour comprendre le fonctionnement d'un simulateur interactif, nous proposons ici de décrire le déroulement d'un pas de calcul (voir gure 1.4). Dans un contexte interactif les forces extérieures, à appliquer sur les objets, sont fournies à la simulation, à chaque pas de temps. En eet, l'utilisateur va appliquer des forces et des mouvements sur l'interface, qui les transmet à la simulation. Celle-ci ne connaît pas à l'avance le comportement de l'utilisateur. D'autres forces peuvent être ajoutées telles que la gravité, le frottement de l'air, des forces magnétiques... La résolution des lois de la mécanique permet d'obtenir les forces, mouvements et/ou déformations sur les objets simulés. On passe alors par une étape de détection, qui nous indique si les ob-

8 Chapitre 1. Contexte des simulations interactives d'objets déformables Fig. 1.3 Test de montage d'un lève vitre sur une portière de voiture Renault c. jets entrent en collision lors du mouvement qu'on vient de calculer. Si c'est le cas, on applique les lois de contact (Signorini) et de frottement (Coulomb) pour extraire les forces de réaction, qui s'ajoutent aux forces précédentes et donnent lieu à une nouvelle résolution de l'état des objets. Enn, les mouvements et déformations des objets à la n du pas de temps sont envoyés à l'achage et éventuellement au couplage haptique. Les lois physiques principalement prises en compte dans les simulateurs sont la dynamique des objets rigides, les lois de l'élasticité (statique ou dynamique). D'autres lois de déformation élastoplastiques vont parfois jusqu'à la rupture, ou utilisent des modèles spéciques aux objets très mous. Diérents modèles de déformation développés dans le contexte des simulations interactives seront exposés dans les parties 1.2 et 1.3 de ce chapitre. Le calcul des collisions entre des objets déformables virtuels est un problème de grande complexité algorithmique. Cependant, de nombreux travaux ont permis de réduire cette complexité de façon à permettre une exécution temps-réel comme nous le verrons dans les parties 1.4 et 1.5 de ce chapitre. En général, le processus de détection fournit la conguration géométrique des diérentes collisions. De plus, il faut toujours vérier que le temps pris pour eectuer l'ensemble des calculs nécessaires est inférieur au pas d'échantillonnage de la simulation an de pouvoir cadencer les calculs à la même fréquence que l'échantillonnage. Dans le contexte des simulations interactives, la gestion des contacts et frottements entre objets déformables ont été peu étudiée. Comme nous le verrons au chapitre 2, les lois de contacts actuellement utilisées sont souvent très simpliées, ce qui ne permet pas de mettre en valeur

1.1 Introduction 9 Fig. 1.4 Schéma fonctionnel d'une simulation interactive. la modélisation des déformations à partir des données issues de la collision. Pourtant, on verra aussi qu'il existe, dans le domaine des simulations mécaniques en temps diéré 1, des méthodes performantes pour résoudre les contacts et les frottements. 1.1.3 Comment obtenir une simulation de qualité? Dans les simulations interactives, on est confronté à la gestion de l'énergie apporté par l'utilisateur au système. La gure 1.5 présente l'exemple d'un ressort virtuel dont une extrémité est attachée et l'autre se déplace suivant le mouvement imposé par l'utilisateur. Comme on ne connaît pas à l'avance les réactions de l'utilisateur, le déplacement est échantillonné pour être fourni de façon discrète à la simulation du ressort virtuel. Nous prenons 7 pas de simulation durant lesquelles l'utilisateur compresse puis relâche le ressort. Le mouvement x, crée une force f au niveau du ressort, qui dépend de la raideur k du ressort. On peut observer (sur la gure 1.5, en bas à gauche) que la discrétisation ajoute un travail, de façon articielle, à la simulation. Si l'on rapporte maintenant le problème au niveau de l'énergie (sur la gure 1.5, en bas à droite), on voit que la discrétisation crée une diérence de potentiel énergétique du ressort, entre le mouvement de compression, et le mouvement de relâche. Alors que dans un mouvement continu, ce potentiel est exactement le même. Or, cette diérence de 1 Simulations non temps-réel.

10 Chapitre 1. Contexte des simulations interactives d'objets déformables Fig. 1.5 Mouvement de va-et-vient de l'utilisateur, sur l'extrémité d'un ressort simulé. Comme le mouvement est échantillonné, la force exercée par le ressort n'est pas continue. Le travail de la force du ressort, sur l'ensemble du mouvement n'est pas nul, alors qu'il l'est en continu. On voit ainsi une diérence entre le potentiel énergétique du ressort, dans un sens, et dans l'autre. potentiel va s'ajouter à l'énergie du système. On peut donc dire que la simulation crée de l'énergie. Plus la fréquence d'échantillonnage est élevée, moins la simulation crée de l'énergie. Si cette énergie n'est pas contrôlée et au besoin dissipée par la simulation, des instabilités risquent d'apparaître. Nous introduirons dans le chapitre 4 le couplage haptique que nous utilisons et qui permet de fournir à la simulation des forces au lieu de fournir des mouvements, ce qui garantit une meilleure stabilité. Par ailleurs, la façon dont on va intégrer le mouvement, dans les simulations, à partir des données en entrée, va beaucoup inuencer la création (ou non) d'énergie dans le système. En l'occurence, ici, à partir d'une position mesurée, (du fait de l'échantillonnage, celle-ci correspond à la position physique du pas de temps précédent), on applique directement une force à l'instant courant, dans la simulation. Cela correspond à une approche explicite. Dans les simulations, nous allons utiliser des lois mécaniques dynamiques. Or, celles-ci se traduisent par des systèmes d'équations diérentielles en temps. Pour les résoudre, on utilise donc des méthodes d'intégration que l'on peut classer en 2 grandes catégories : les méthodes explicites et implicites.

1.2 Modèles de déformation discrets 11 Les méthodes explicites utilisent, pour le pas de temps courant, une estimation du mouvement courant à partir des pas précédents. Cela veut dire que l'on se retrouve dans un cas similaire à notre ressort échantillonné. Quelques exemples de méthodes explicites : Euler explicite : X t+ t = X t + tf(x t, t), avec Ẋt = f(x t, t), Adams d'ordre 2 : X t+ t = X t + tf(x t, t) + t2 2 g(x t, Ẋ t, t), avec Ẍt = g(x t, Ẋ t, t), Runge-Kutta d'ordre 2 : X t+ t = X t + tf( X t+ t, t + t), 2 2 avec X t+ t = X t + t 2 2 f(x t, t). A l'inverse, les méthodes implicites utilisent le mouvement trouvé à la n du pas de temps ou estiment le mouvement courant à partir du mouvement nal. Ces méthodes sont donc beaucoup plus stables mais engendrent bien souvent des calculs non-linéaires beaucoup plus longs à résoudre. Quelques exemples de méthodes implicites : Euler implicite : X t+ t = X t + tf(x t+ t, t + t), θ-méthode : X t+ t = X t + θ tf(x t+ t, t + t) + (1 θ) tf(x t, t), Newmark : Ẋt+ t = Ẋt + t(γ g(x t+ t, Ẋ t+ t, t + t) + (1 γ) g(x t, Ẋ t, t)). X t+ t = X t + tẋt + t 2 (β g(x t+ t, Ẋ t+ t, t + t) + ( 1 2 β) g(x t, Ẋ t, t)). Le choix de ces méthodes dans un contexte temps-réel n'est pas toujours aisé. Dans [Hau04] on trouve le détail de diérentes méthodes existantes pour voir lesquelles sont les mieux adaptées à ce contexte. Pour atteindre les objectifs de temps-réel, certains travaux passent par une méthode explicite en ajoutant une dissipation articielle pour garantir la stabilité. Ces méthodes sont plus adaptées à des objets relativement mous. En eet, sur notre exemple de ressort (voir gure 1.5), pour un même mouvement, l'énergie créée est moins importante si la raideur k de l'objet est petite. En revanche, avec des objets rigides ou avec des objets déformables relativement structurés, il faut bien souvent avoir recours à des méthodes implicites si l'on ne veut pas s'imposer un pas de temps de simulation extrêmement petit. De plus, le problème des transferts d'énergie en discret se retrouve de façon accrue dans les problèmes liés aux contacts. Lors des chocs, par exemple, une grande énergie mécanique peut être transférée entre deux corps sur une période de temps très petite. Dans ce cas, il est donc indispensable d'utiliser des méthodes implicites. La qualité de la simulation dépend bien entendu aussi de la délité des modèles mécaniques à la réalité et de la précision de la détection de collisions. Nous présentons dans la suite du chapitre les diérents travaux relatifs à ces deux domaines qui ont été développés spéciquement pour le contexte temps-réel. 1.2 Modèles de déformation discrets Dans les applications temps-réel, le temps de calcul de chaque pas de simulation devenant un paramètre critique, certains auteurs ont cherché à développer des modèles spéciques, très rapides à résoudre, pour déformer les objets. En suivant cette démarche, ils se sont attachés à

12 Chapitre 1. Contexte des simulations interactives d'objets déformables réduire la complexité des algorithmes en mettant au second plan la délité de leurs modèles au comportement que l'on peut mesurer en expérimentation. Ainsi, leurs méthodes ne se basent pas sur les modèles continus issus de la mécanique, mais utilisent des modèles discrets pour être résolus de manière plus ecace. L'objectif aché de ces modèles est d'atteindre un comportement perceptuellement réaliste. 1.2.1 Modèles particulaires On appelle modèle particulaire, une description mécanique qui donne des propriétés spéci- ques à des éléments discrets indépendants, appelés particules. Le mouvement global de l'ensemble des particules formant un objet n'est jamais caractérisé en tant que tel, mais dépend des interactions à bas niveau. Dans certains travaux, ces interactions sont modélisées par des lois parfois issues de la mécanique atomique comme le potentiel de Lennard-Jones (voir gure 1.6), qui est normalement adapté pour les liquides et les gaz. On le retrouve pour la simulation de matériaux très déformables [MP89], [TPF89]. Fig. 1.6 Force issue du potentiel de Lennard-Jones entre deux particules. Lorsque la distance entre les particules tend vers la somme de leurs rayons, elles se repoussent, quand cette distance augmente, on a alors une force de cohésion. Au dessus d'une certaine distance, le potentiel devient négligeable. Desbrun [DC96] utilise une approche SPH (Smooth Particules Hydrodynamics) issue des recherches en astrophysique. Le principal intérêt de cette approche discrète est qu'elle vient d'une transformation d'un modèle continu. On peut ainsi fonder une multi-résolution globale du milieu [Des97]. Luciani et al. [LJF + 91] proposent de modéliser des objets déformables par des agglomérats de billes (masses ponctuelles munies d'une sphère de non-pénétration) de diérentes tailles. Les plus grosses, au centre de l'objet, appelées noyaux sont entourées par des plus petites formant le derme. Ces dernières se repoussent entre elles mais sont attirées par le noyau. De minuscules billes, qui s'attirent entre elles à la surface de l'objet, forment l'épiderme. Les mêmes auteurs proposent un logiciel de modélisation par particules CORDIS/ANIMA, qui permet de modéliser le comportement mécanique d'objets et, en même temps, de générer du son. 1.2.2 Modèles masse-ressort Les modèles masse-ressort consistent en une combinaison de points (d'une masse donnée), liés par des ressorts et des amortissements. Dans sa formulation la plus simple, l'équation du

1.2 Modèles de déformation discrets 13 mouvement d'un point i s'écrit : ρ p i = βp i j V (i) k ij (l 0 p i p j ) p i p j p i p j Ici ρ est la masse élémentaire au point i, β le facteur d'amortissement, k ij la raideur du ressort qui connecte le point i au point j dans le voisinage V (i)) du point i. Ces modèles sont largement utilisés dans la communauté graphique [Mil88] [NT98] [Pro95]. Certains travaux n'utilisent pas le modèle élémentaire du ressort linéaire. Ainsi, Boux de Cas- Fig. 1.7 Déformation d'un ovaire dans un simulateur d'apprentissage au geste médical. Image issue de la bibliothèque SPORE [Mes02]. son et Laugier [BdCL99] utilisent un jeu sur les raideurs et le comportement des ressorts pour construire des modèles non-linéaires et non-homogènes. Dans [CZK98], on trouve un réseau masse-ressort avec diérents types de ressorts (structurels, en cisaillement, en exion), an de se rapprocher de la déformation que subit un muscle lors de sa contraction. Le principal avantage de cette méthode est qu'elle est simple à implémenter. De plus, les coupures ou les collages se modélisent facilement en supprimant ou en ajoutant des connections entre les sommets. En revanche, on observe une discrétisation des directions selon lesquelles les forces s'exercent à l'intérieur du matériau. En eet, les forces sont dirigées suivant les arêtes qui composent le maillage géométrique. Le comportement de l'objet que l'on veut déformer va donc dépendre de la façon dont on va le mailler, et notamment des directions choisies pour créer le réseau masse-ressort. La résolution souvent associée à ce type de modèle est une résolution locale. On passe itérativement sur chaque point, en considérant que les voisins sont xes et sont à la position du pas précédent. La résolution du système complet possède une complexité 2 linéaire O(n) par rapport aux nombres n de n uds du maillage, même si la modélisation est non-linéaire. Cette résolution, explicite, correspond à un pas d'itération de la méthode de Jacobi. Or, cette méthode est réputée pour son faible taux de convergence, surtout lorsque le maillage est rané [Dur03]. On verra que ce type de résolution locale, a également été utilisée pour des modèles à base d'éléments nis. 2 La complexité d'un algorithme donne le nombre d'opérations élémentaires exécutées en fonction de la taille des paramètres en entrée. Bien souvent, on donne juste son ordre de grandeur.

14 Chapitre 1. Contexte des simulations interactives d'objets déformables Cependant, on trouve des travaux ( [KCG00] ou [Mes02]) qui utilisent une résolution implicite pour des systèmes masse-ressort. La complexité du calcul est alors plus élevée, particulièrement si le modèle est non-linéaire. On ne peut pas aisément comparer les déformations induites par les réseaux de masse-ressort avec des données expérimentales, puisqu'on ne peut pas compter sur la continuité mécanique des réseaux de ressorts. Pourtant, pour les petites déformations, le modèle masse-ressort peut avoir le même comportement que le modèle éléments nis élastiques. Mais, en grands déplacements ou en grandes déformations, ce comportement est plus complexe. Le rapprochement avec les modèles éléments nis élastiques non-linéaires est alors extrêmement dicile. 1.2.3 Modèles dédiés Certains auteurs ont cherché à optimiser une modélisation spécique pour pouvoir satisfaire les contraintes imposées par le temps réel. Ces modèles sont souvent spéciques à un type de matériau ou à des géométries particulières Fig. 1.8 3D Chainmail Déformation d'une sphère par une contrainte de déplacement à la surface Le 3-D Chainmail proposé dans [Gib96] part d'une discrétisation volumique discrète (grille de voxels) issue des images médicales. La déformation qui gouverne le modèle déformable est décrite par une propagation des contraintes en déplacements que l'objet subit à sa surface (voir gure 1.8). Ce modèle est développé dans le contexte bien particulier de la simulation d'objets très mous et où un faible réalisme physique est nécessaire. La Long Element Method proposée dans [CB01] utilise une modélisation par poutres pour déformer de façon très rapide des tissus mous. An d'obtenir un meilleur réalisme physique, une contrainte sur la préservation du volume total de l'objet est ajoutée. Le modèle est contraint par un unique point haptique et il semble dicile d'envisager plusieurs points de contact. Lazarus et al. [LCJ93] proposent une modélisation particulière pour des déformations le long d'un axe 3D. Ils y associent des paramètres permettant de contrôler la courbure, la torsion et l'étirement le long de cet axe. La modélisation est donc concentrée sur la mécanique de l'axe, ce qui limite les géometries possibles pour ce modèle. Lenoir [LF04] utilise la mécanique lagrangienne pour dériver le mouvement d'une spline. Les mouvements se basent sur le respect des contraintes exprimées à l'aide de multiplicateurs de

1.3 Simulations interactives d'objets élastiques par éléments finis 15 Lagrange 3. Ainsi, on cherche le minimum d'énergie potentielle du système en un certain nombre de points de contrôle de la spline, pour calculer son mouvement. Fig. 1.9 d'après [LF04]. Modélisation d'un l de chirurgie par spline dynamique. 1.3 Simulations interactives d'objets élastiques par éléments nis 1.3.1 Introduction La méthode des éléments nis propose une résolution numérique approchée des systèmes d'équations aux dérivés partielles. La performance des outils de l'informatique a permis à cette méthode de connaître un formidable essor et elle fait encore l'objet de nombreuses publications en mécanique et en mathématiques appliquées. Par ailleurs, elle est largement répandue dans l'industrie avec des codes commerciaux comme NASTRAN c, ABAQUS c, COSMOS c, ou encore ANSYS c. Citons aussi CAST3M c, code libre pour l'éducation et la recherche, développé (en Fortran) par le CEA qui est plus populaire chez les universitaires. Aujourd'hui, la capacité des ordinateurs permet d'envisager leur utilisation selon un mode interactif. Cependant, la complexité de ces algorithmes est souvent élevée et les communautés robotique et infographique se sont penchées sur la réduction de cette complexité durant la phase d'utilisation interactive. On distinguera donc cette phase, appelée exécution en ligne, de la complexité globale du problème. Les calculs eectués pour préparer cette phase, sont appelés pré-calculs. Cependant, l'utilisation de pré-calculs n'est pas la seule voie de recherche. Pour rendre l'utilisation des éléments nis interactive, plusieurs stratégies ont été explorées. Nous proposons de les classer en quatre catégories, en sachant que la plupart des travaux en combinent plusieurs. Dénition d'une gamme précise de déformations. Il s'agit de trouver une méthode adaptée à des caractéristiques physiques spéciques. En élasticité, on peut par exemple, trouver un calcul très ecace pour des objets très mous, mais qui fonctionne mal avec des objets plus rigides. Et à l'inverse, des corps très structurés se déformant peu peuvent faire l'objet de simplications particulières. 3 Les multiplicateurs de Lagrange sont présentés en page 153.

16 Chapitre 1. Contexte des simulations interactives d'objets déformables Réduction des calculs en ligne par une phase de pré-calculs. La phase de pré-calculs permet d'anticiper des calculs coûteux qui interviennent durant l'exécution en ligne. Cependant, on verra que si l'on veut pouvoir anticiper les mouvements divers de l'utilisateur et enregistrer la réaction spécique des objets déformables aux sollicitations, le nombre de calculs et l'espace mémoire alloué à tous les résultats peuvent devenir très importants et dépasser les capacités actuelles des ordinateurs. L'organisation de la phase de pré-calcul est alors primordiale. Choix des schémas d'intégration en temps garantissant rapidité et stabilité. Il existe de nombreux schémas d'intégration en temps et le choix optimal n'est pas toujours aisé. Pourtant, cela va avoir une incidence très importante à la fois sur le temps de calcul et sur la stabilité de notre simulation. Ces deux aspects étant critiques dans le cas de l'interactivité, certains travaux se sont focalisés sur ce choix pour optimiser leur méthode par éléments nis interactifs. Stratégies de résolutions multiples. Les modèles issus de la mécanique des milieux continus qui sont discrétisés dans les éléments, sont continus. Ainsi, un des critères de validation de la méthode (qui reste un calcul approché de la solution exacte), est de vérier la continuité de certaines valeurs physiques entre les éléments. Lorsqu'une trop forte discontinuité est constatée à un endroit précis, on choisit de raner le calcul localement en introduisant de nouveaux éléments (plus petits) ou en augmentant l'ordre des fonctions d'interpolations sur les éléments concernés. On peut ainsi aboutir à des résolutions locales diérentes sur un même modèle. 1.3.2 Elasticité linéaire Les premiers travaux sur l'utilisation interactive des éléments nis ont d'abord commencé par une modélisation en petits déplacements. En eet, lorsque les déplacements des n uds par rapport à la taille de l'objet sont relativement réduits, le tenseur 4 d'ordre 2 des déformations tend vers une formulation linéaire [Gua02] : ɛ = 1 2 (grad(u) + gradt (u)) (1.1) u est le déplacement du point où l'on évalue la déformation. Pour passer des déformations aux contraintes (mesurées par le tenseur de Cauchy 5 σ) à l'intérieur de l'objet, on peut aussi utiliser une loi linéaire, valable pour les objets élastiques en petites déformations, appelée loi de Hooke : σ = 2µ ɛ + λ tr(ɛ) Id (1.2) 4 Un tenseur du second ordre est une forme (ou une application) de E E dans R 2. Un tenseur T est représenté dans la base ( e 1, e 2, e 3) par la matrice T suivante : 5 Voir dénition page 53. T = T 11 T 12 T 13 T 21 T 22 T 23 T 31 T 32 T 33

1.3 Simulations interactives d'objets élastiques par éléments finis 17 µ et λ sont les coecients de Lamé, que l'on peut calculer à partir du module de Young E et du coecient de Poisson ν du matériau. Id est la matrice identité. Ensuite, on équilibre les contraintes internes avec les forces de volume f v, qui s'appliquent sur chaque particule de l'objet. div(σ) + f v = 0 (1.3) Ces lois s'écrivent donc comme des équations aux dérivées partielles. L'utilisation d'éléments nis est la méthode la plus répandue pour obtenir une résolution numérique de ces systèmes d'équations. Dans la partie 2.3, nous détaillons la construction des fonctions d'interpolation linéaire sur des éléments tétraèdriques et la façon dont se bâtit le système d'équations discrètes à partir des équations aux dérivées partielles continues. Dans le cas statique pour l'élasticité linéaire, on extrait de chaque élément une matrice de raideur caractéristique. Ces matrices élémentaires sont ensuite assemblées dans une grande matrice de raideur du modèle complet que l'on nomme K. Cas statique Une fois discrétisés par la méthode des éléments nis, les déplacements en chaque point du maillage dépendent des forces extérieures appliquées aux mêmes points. Si l'on discrétise les lois de l'élasticité linéaire par cette méthode, on aboutit à une relation linéaire : KU = F (1.4) Les travaux de Bro-Nielsen et Cotin [BNC96] ont introduit l'utilisation des éléments nis statiques dans des simulations temps-réel grâce à la condensation de la relation matricielle aux n uds de surface. Soit : [ Kss K si K is K ii ] [ Us U i ] = [ Fs F i ] [K ss K si Kii 1 K is ][U s ] = [F s ] [K si Kii 1 ][F i ] (1.5) Où U s, U i représentent les déplacements, et F s, F i les forces extérieures appliquées respectivement sur les n uds de surface et sur les n uds internes. Les forces qu'ils cherchent à imposer sur leurs modèles s'appliquent uniquement sur les n uds de surface des objets, soit F i = 0. James et Pai [JP99] proposent d'utiliser une méthode par éléments frontières pour aboutir directement à une formulation condensée aux n uds de surface (voir gure 1.10). Fig. 1.10 d'après [JP99]. Déformation sur le modèle élément frontière (élasticité linéaire).

18 Chapitre 1. Contexte des simulations interactives d'objets déformables Pour pouvoir obtenir un temps d'exécution en ligne susamment rapide, ces modèles sont pré-inversés durant une phase de pré-calculs, de façon à obtenir directement les déplacements sur le maillage en fonction des forces imposées. Or, comme on est en statique, pour pouvoir eectuer cette inversion, il faut que certains n uds soient liés au bâti, ce qui revient à les bloquer en déplacement. On dit qu'on leur applique les conditions de Dirichlet. Pour chaque n ud sur lequel on applique ces conditions, on supprime les lignes et les colonnes correspondantes dans la matrice de raideur. Sur certains n uds, il est possible d'appliquer ces conditions selon une direction unique. Dans ce cas, on ne supprime qu'une ligne et qu'une colonne, en concordance avec cette direction. Une fois inversé, pour une force f i appliquée sur un n ud i, le déplacement provoqué sur les n n uds de la surface du maillage se calcule très rapidement. On cherche les colonnes de la matrice inverse K 1 = C correspondant au n ud qui subit la force et on les multiplie par cette force. [K 1 ] 0. f x i f y i f z i 0. = 0... C xx 1i.. 0... C zx ni C xy 1i. C zy ni C xz 1i 0.... C zz. ni 0... 0. f x i f y i f z i 0. (1.6) Cas dynamique : analyse modale La loi de comportement en élasticité linéaire dynamique discrétisée par éléments nis, s'écrit par une équation diérentielle entre l'ensemble des déplacements U des n uds du maillage, les forces F extérieures soumises sur ces n uds et les matrices de masse (M), d'amortissement (D), et de raideur (K) issues de la modélisation par éléments nis : M 2 U t 2 + D U t + KU = F (1.7) Avec l'aide d'un schéma d'intégration en temps d'euler implicite ou de la θ-méthode 6, on peut mettre l'équation 1.7 sous la forme : KU t = F (t,t 1,t 2) (1.8) Le vecteur F dépend maintenant des déformations aux instants t, t 1 et t 2. Cependant, ce vecteur est plus long (les n uds intérieurs subissent des forces extérieures comme la gravité ou l'inertie) et n'a plus (comme précédemment), quasiment toutes ces valeurs nulles, ce qui rend le produit matriciel avec K 1 beaucoup plus lent. Mais, l'analyse des modes de déformation peut permettre d'accélérer grandement ce calcul : Cette analyse a été introduite dans la communauté graphique par Pentland [PW89]. L'équation élasto-dynamique obtenue (1.7) décrit le déplacement U(t) des N n uds de l'objet volu- 6 Présentés dans la partie 1.1.3.

1.3 Simulations interactives d'objets élastiques par éléments finis 19 mique. On nomme Q sa valeur dans la base des déplacements modaux : U(t) = Φ Q(t) (1.9) Φ représente la matrice modale du modèle; c'est-à-dire une matrice où la i ème colonne Φ :i représente la forme du i ème mode de déformation. On transfert donc l'équation 1.7 dans l'espace modal : (Φ T MΦ) Q + (Φ T DΦ) Q + (Φ T KΦ)Q = Φ T F Q (1.10) (Φ T MΦ) et (Φ T KΦ) sont des matrices diagonales. Dans un cas général, (Φ T DΦ) est dense, mais on peut faire l'hypothèse de l'amortissement de Rayleigh. D = αm + βk = (Φ T DΦ) = diag(αm i + βk i ) (1.11) On obtient ainsi un système parfaitement découplé. Cela permet aux mouvements des diérents modes, d'être calculés de façon indépendante. Une fois ces modes calculés, on pourra ensuite les combiner entre eux, par superposition linéaire. Ainsi, pour un mode de déformation, on aboutit à : q i + 2ξ i ω i q i + ωi 2 q i = (f Q) i (1.12) m i Les modes de déformation les plus élevés peuvent être supprimés de la modélisation. En eet, ces modes dépendent généralement plus de la discrétisation de l'objet que des caractéristiques mécaniques des objets. On ltre ainsi les hautes fréquences en réduisant le temps de calcul [PW89]. Après un long pré-calcul pour trouver les valeurs et les vecteurs propres, on aboutit à une méthode extrêmement rapide en ligne et tout à fait compatible avec le temps-réel [BHS01] [JP02] [HSOB03]. Fig. 1.11 d'après [HSOB03]. Trois premiers modes de déformation d'un bol. La gestion des contacts avec ce type de modèle pose des dicultés particulières. D'une part les conditions de contact et frottement semblent dicile à écrire dans l'espace des vecteurs propres du système. D'autre part, lorsqu'on impose des contacts permanents sur une structure, les conditions initiales de l'analyse modale sont modiées et les modes que l'on avait précédemment calculés ne sont plus valables. Pour traiter le contact avec ces modèles, il est cependant possible de stopper l'analyse modale au moment du contact ou de l'impact, et de reprendre l'équation 1.8, pour imposer les lois de contact et de frottement sur les objets. Puis, une fois que l'on est sorti de tout contact, on peut repartir en vol libre en imposant les dernières forces de contact calculées sur le modèle modal. L'analyse modale pose donc des soucis particuliers si l'on cherche à simuler des contacts frottants sur ces modèles.