Vous êtes sur la page 1sur 10

ANNEXE

Rappels sur les oprateurs diffrentiels

Nous rappelons ici la dnition des diffrents oprateurs diffrentiels que lon peut appliquer un champ vectoriel. Les dnitions sont donnes pour un champ vectoriel dans lespace, mais stendent de faon naturelle aux champs planaires par exemple. On peut classer ces oprateurs daprs lordre (premier ou second) de leurs drives, ainsi que par la variable (temps ou espace) par rapport laquelle on drive.

Drives par rapport au temps


Ces drives sont simples et intuitives.

1.1

Oprateurs du premier ordre

Driver une fois par rapport au temps transforme une position en vitesse, une vitesse en acclration.

pt

p t

px t py t pz t

vx vy vz

vt

v t

(A.1)

1.2

Oprateurs du second ordre


tt p 2 t

Lacclration est la drive seconde de la position par rapport au temps : p

2
2.1

Drives par rapport lespace


Oprateurs du premier ordre

Ces oprateurs utilisent les drives premires du champ vectoriel. On peut driver chacune des composantes dun champ vectoriel par rapport nimporte laquelle des directions. On a donc, en trois dimensions, 9 drives spatiales premires pour un champ vectoriel v : vi
j

vi j

x y z

(A.2)

117

118

ANNEXE A. RAPPELS SUR LES OPRATEURS DIFFRENTIELS

Parmi ces drives et leurs combinaisons, il en est trois particulires qui ont des interprtations prcises. Le gradient dun champ scalaire s est un vecteur dni par :

grad s

sx sy sz

(A.3)

Ce vecteur nest autre quune extension de la classique drive dune fonction un espace de dimension suprieure. Il indique donc la pente locale de la fonction, le vecteur obtenu tant dirig le long de la plus grande pente au champ s. Par extension, on dnit le gradient dun champ vectoriel v comme la matrice 3 3 dont chaque ligne contient le gradient de la composante associe de v :

grad v

vx x vy x vz x

vx y vy y vz y

vx z vy z vz z

(A.4)

La divergence dun champ vectoriel v est un scalaire dni par : div v v x x vy y vz z (A.5)

Sommant les drives des composantes de v dans les trois directions, il peut sinterprter comme un terme de mesure locale de lexpension (ou de la dilatation) du champ. Si on considre en effet un petit cube centr autour dun point, le terme v i i mesure comment les faces alignes avec laxe i se sont dplaces dans la direction i. La divergence est une somme sur les trois directions de ces dilatations locales. Par extension, on dnit la divergence dun tenseur (matrice 3 3 symtrique) comme le vecteur de taille 3 dont chaque composante est la divergence de la ligne correspondante de la matrice :

div

1x 2x 3x

1y 2y 3y

1z 2z 3z

div

1 2 3

div 1 div 2 div 3

(A.6)

Le rotationnel dun champ vectoriel v est un vecteur dni par :

rot v

vy z vz y vz x vx z vx y vy x

(A.7)

Ce terme, aparent un produit vectoriel, est une approximation de laxe de rotation des dformations locales du champ v. On linterprte facilement comme laxe dun tourbillon en mcanique des uides, le champ v reprsentant la vitesse du liquide. Ce rotationnel est nul pour tous les champs v linaires en les variables x, y et z.

2.2

Oprateur Nabla

Loprateur nabla () est pratique lorsquil sagit dcrire des drives premires. est un vecteur de coordonnes x y z T . Les oprateurs prcdents sont alors exprims simplement par : grad s s div v v rot v v o et reprsentent respectivement le produit scalaire et le produit vectoriel.

2.3

Oprateurs du second ordre

Les oprateurs du second ordre sont gnralement des combinaisons de ceux du premier ordre. Nous utili` serons en particulier graddiv v et v div grad v ( est appel loprateur laplacien). La i eme composante de ces oprateurs sexprime par : (A.8) graddiv vi vx xi vy yi vz zi
vi

vi xx vi yy vi zz

(A.9)

ANNEXE

Les mthodes dintgration

Les mthodes prsentes permettent de calculer dans une conguration donne les forces en chaque point. Il existe diffrentes faons de les intgrer dans le temps et nous en prsentons ici quelques unes.

Difcults

On peut employer diffrentes mthodes dintgration, toutes demandent dadapter le pas de temps dintgration la valeur des acclrations. Si le pas de temps est trop petit, on perdra du temps de calcul alors que sil est trop grand le systme divergera. La difcult intgrer dpend de lamplitude de lacclration et de sa direction. Un schma de NewtonCotes intgrera ainsi parfaitement une acclration constante (la gravit par exemple), quelle que soit son intensit. Que la direction de celle-ci change un peu au cours du temps et il faudra rduire de faon drastique le pas de temps.

Dpendance de lintgration
En lasticit linaire, on a, daprs le principe fondamental de la dynamique, une loi de la forme : a f m kx m

o k est la raideur du matriau et x une mesure de dplacement. Un dveloppement de Taylor donne la nouvelle position p dun point p comme gale p p v dt a dt 2 O dt 3 (B.1)

pour un pas de temps dt donn. La vitesse v de ce moment de la simulation est ce quelle est, mais on peut jouer sur les autres paramtres pour diminuer lcart de position p p p qui va tre gnr par lintgration. Plus explicitement : p a dt 2 k x dt 2 m (B.2)

Pour rduire cet cart et donc ne pas aller trop vite dans lintgration, on voit donc que le plus efcace est de baisser le pas de temps puisque ce terme est quadratique dans lquation prcdente. Lautre moyen, 119

120

ANNEXE B. LES MTHODES DINTGRATION

moins efcace consiste prendre des matriaux mous et donc des raideurs faibles, ne bouger que faiblement les points (ce qui peut revenir modier les units pour avoir un objet de trs petite taille) pour limiter les dplacements ou enn prendre des objets lourds avec plus dinertie. Une autre remarque tire de [Mes97] est que si lon augmente le nombre de points de la discrtisation, on va accrotre linstabilit. La masse de chaque point devra en effet diminuer pour que masse totale soit la

k conserve. Or la frquence doscillation correspondant la solution de lquation B.2 est m et va donc sen trouver augmente, ce qui demandera un plus faible pas de temps pour une intgration correcte.

parcourue par londe (dont la vitesse est proportionelle temps.

Cette remarque rejoint le critre de stabilit de Courant-Friedrichs-Lewy, qui stipule que la distance parcourue par une onde se propageant dans le matriau doit tre infrieure la distance entre deux points de discrtisation. On comprend intuitivement que la propagation de cette onde ne pourrait tre bien calcule si elle pouvait ainsi sauter une maille. En augmentant le nombre de points, on rduit la taille du maillage et il faut donc diminuer la distance
k m)

entre deux intgrations et donc baisser le pas de

Intgration explicite

Les mthodes dintgration explicites sont les plus simples et sappuient directement sur le dveloppement de Taylor donn plus haut (Eq. B.1). La plus simple dentre elles est la mthode dEuler, qui nutilise que des dveloppements limits dordre 1 pour crire : vt dt pt dt vt pt

at dt vt dt

(B.3) (B.4)

Simpliste, elle offre nanmoins parfois de bons rsultats. En faisant dpendre la nouvelle position de la nouvelle vitesse et non plus de celle du pas prcdent, on obtient le schma dEuler modi. En pratique beaucoup plus stable que le prcdent. Il a t dmontr comme tant dordre 4 par Provost dans sa thse [Pro97] et donne souvent des rsultats suprieurs ceux de RungeKutta 2 (voir supra).

vt dt pt dt

vt pt

at dt vt dt dt

(B.5) (B.6)

On pourra parfois lui prfrer la mthode de Newton-Cotes : vt dt pt dt vt pt


at dt vt dt a dt
2

(B.7) (B.8)

qui prsente lintressant avantage dintgrer correctement les acclrations constantes (la gravit par exemple). Citons aussi la mthode de Stoermer qui donne de bons rsultats, mme avec de fortes raideurs : bt dt pt dt bt pt

at dt 2 b

(B.9) (B.10)

o b est un vecteur servant daccumulateur initialis 0 au dpart. Il existe des mthodes dordres plus levs, offrant plus de prcision, mais ncessitant en contrepartie le calcul de la force pour des positions intermdiaires entre t et t dt. Lordre de ces mthodes dpend du nombre de calculs de forces supplmentaires effectuer. Les plus utilises sont celles de Runge-Kutta, dordre 2 et 4 (voir [PTVF92] pour plus de dtails). Plus chres, elles sont galement mal appropries aux simulations dynamiques faisant apparatre des collisions et o apparaissent des discontinuits dans le mouvement.

4. INTGRATION IMPLICITE

121

Intgration implicite

Lintgration implicite fut remise au got du jour par Baraff et Witkin dans [BW98]. Elle donne dexcellents rsultats pour des raideurs leves que lintgration explicite ne sait grer, ou au prix dun pas de temps rdhibitoire. Lide consiste ne plus trouver la nouvelle position en fonction des forces connues un instant, mais chercher la position o les forces t dt auraient conduits, si on les avait intgres en partant de la position courante. Plutt quun bond en aveugle dans le futur, on cherche un tat o les forces sont compatibles avec la position. Mathmatiquement, Euler deviendrait : vt dt pt dt vt pt

at dt dt vt dt dt

(B.11) (B.12)

Cela demande donc de connatre a t dt pour trouver pt dt , ce qui parait impossible puisque la force dpend elle mme de la position. On crit alors un dveloppement limit lordre 1 de lexpression de la force en fonction de la position f f f dp p

qui va permettre de connatre approximativement la force dune position proche. Puisque la force dpend de la f position dun point et de celle de ses voisins, lexpression p va tre reprsente par une matrice quil va falloir inverser. Le cot de linversion de la matrice chaque pas de temps est largement compens par le gain en stabilit de la mthode et par le pas de temps qui peut alors tre employ, en comparaison avec le pas de temps inme ncessaire avec de fortes raideurs dans une intgration explicite. Il est noter que les mthodes implicites avaient dj t utilise par Terzopoulos et al. dans leur article de 1987 [TPBF87]. Citons pour information deux articles qui ont t cits comme utilisant des lments nis et une intgration implicite [OPT83, HLW83], mais publis dans des revues de physique, non disponibles sur la toile et que nous navons pu nous procurer. Desbrun a repris cette mthode en lacclrant jusqu lobtention de temps rel en approximant la matrice f jacobienne p comme constante (ce qui revient considrer les ressorts comme ayant une longueur vide nulle) et donc pr-inversible [DSB99]. Desbrun montre que cela revient ajouter une viscosit articielle (force inversement proportionnelle aux vitesses, module par un coefcient dpendant de la raideur et du pas de temps) et appliquer un ltrage sur les forces appliques aux particules. Les simplications entranes par cette hypothse sont corriges en ajoutant des forces qui vont corriger le moment dinertie de lobjet, suivies dun post-traitement itratif limitant la longueur de chacun des ressorts. Une meilleure gestion des collisions est introduite dans [MDDB00], permettant une simulation trs uide du mouvement dun tissus. Lintgration implicite est une mthode la mode et dautres dveloppements, que nous jugeons plus douteux (faux) dans leurs fondements mathmatiques, ont t prsents dans [EEH00].

122

ANNEXE B. LES MTHODES DINTGRATION

ANNEXE

Green-Lagrange en pratique

Nous dcrivons ici brivement les formules ncessaires limplmentation dun modle dformable utilisant le formalisme de Green-Lagrange, dans un cadre dlments nis explicites. Lobjet est suppos maill laide de ttradres, que lon aura pris soin de gnrer aussi rguliers que possible pour des raisons defcacit et de stabilit numrique. Aprs un rappel rapide de notions dlasticit, nous donnons les formules qui permettront dimplmenter ce formalisme.

Rappels dlasticit

Nous reprenons ici les principales quations dcrivant llasticit des objets dformables. On se reportera la Section 1.2 du Chapitre 2 pour une description plus complte. Le tenseur des dformations est dni en tout point du matriau. Le terme situ en i j a pour expression, dans le cas de Green-Lagrange :
i j

x x i j j et 0 sinon).

i j

(C.1)

o i j est le symbole de Kronecker ( i j

1 si i

reprsente le vecteur de 3 reprsentant les coordonnes dun point dans le repre li au matriau. x reprsente la position dun point dans le repre du monde en fonction de ses coordonnes matrielles. Les deux systmes de coordonnes se correspondent ( une transformation rigide prs, voir la Section 1.2 du Chapitre 2) lorsque lobjet est au repos, crant ainsi un tenseur des dformations nul. x est une fonction continue qui varie en fonction des dformations de lobjet (les coordonnes matrielles dun point sont xes, mais sa position dans lespace x variera au cours du temps). Le tenseur des contraintes reprsente la distribution de force lintrieur du matriau. Tout comme , on peut lapproximer au premier ordre par une matrice 3 3 . La force f agissant sur une surface lmentaire dS, de normale unitaire sortante n est : f n dS. La thorie de llasticit linaire suppose que dformations et contraintes sont linairement lies (comme dans un ressort idal). Si le matriau est considr comme isotrope, des raisons de symtrie font que seuls 2 123

124

ANNEXE C. GREEN-LAGRANGE EN PRATIQUE

coefcients dcrivent le comportement du matriau : tr I3

(C.2)

o I3 est la matrice identit 3 3 et tr la trace de . et sont les coefcients de Lam : reprsente la rigidit du matriau tandis que mesure son incompressibilit (un matriau incompressible a thoriquement un inni). Lnergie potentielle lastique E est dnie en tout point du matriau par : E 1 3 3 i j i j 2 i j 1 1 (C.3)

Sa drive par rapport la position du point crera la force qui sera applique en chaque point.

Forces dissipatives

Lajout de forces dissipatives est simple et cohrent avec la description faite des prcdents tenseurs. Le tenseur des taux de dformations est la drive par rapport au temps de (Eq. C.1) : o v
x t

i j

v p i j

p v i j

(C.4)

est la vitesse dun point.

est mis jour grce une quations identique celle utilise pour (Eq. C.2) : tr I3

(C.5)

o et contrlent la vitesse avec laquelle le matriau perd son nergie cintique. Un mouvement rigide de lobjet ne sera pas attnu avec cette formulation ( 0 3 ) qui ne dissipe que les vibrations internes.

lments nis explicites

Nous dcrivons ici les quations des lments nis explicites, appliqus des maillages ttradriques dobjets 3D. Au lieu de regrouper toutes les quations relatives tous les points dans un grand systme matriciel, comme dans les lments nis classiques, les lments nis explicites rsolvent les quations relatives chaque lment sparment. Cette approximation locale rduit normment la taille du systme rsoudre et donc le temps de calcul, au prix dune perte en prcision. Pour quune information (un dplacement impos par lutilisateur par exemple) se propage entre deux lments, il faudra en particulier maintenant autant ditrations quil y a dlments entre ces deux lments. Lobtention de mthodes de calcul temps-rel doit se faire au prix de ces approximations. Nous avons choisi des lments ttradriques et des fonctions de bases linaires (voir Chapitre 1, Section 7) pour leur trs bon compromis vitesse-efcacit. Pour chaque lment E , la fonction de base linaire a i x bi y ci z d i associe un sommet i de E peut tre reprsente 1 comme un vecteur L i ai bi ci d i . Par dnition des fonctions de base linaires, appliquer L i un point situ lintrieur de llment ttradrique E donne ses coordonnes barycentriques lintrieur du ttradre. La coordonne barycentrique dun sommet i valant 1 au somment i et 0 aux autres sommets, on a : Li j 1 i j i j1 4 (C.6)

Pour chaque somment i, ces quatre quations ( j 1 4) forment un systme linaire qui peut tre invers si llment E nest pas dgnr (cest dire aplati, ce qui nest pas le cas avec notre mthode par construction).
1 Les

(1

exposants reprsentent la valeur en un sommet donn (ci j ) tandis que les indices reprsentent les composantes dun vecteur x 2 y 3 z ).

3. LMENTS FINIS EXPLICITES

125

La fonction dinterpolation rsultante L i va nous permettre de calculer les drives exprimes dans le repre associ au matriau. Tout champ vectoriel c peut tre linairement interpol sur llment E en utilisant les coordonnes barycentriques. Pour un point situ lintrieur de llment de coordonnes , la valeur de c est : c

i 1

ci

Li

(C.7)

Les drives (dans le repre li au matriau) peuvent alors tre exprimes par : c j

i 1

ci

i L j

(C.8)

En utilisant cette quation aux champs vectoriels position et vitesse, on est capable de calculer en chaque x v sommet i et i , et donc la valeur des tenseurs , et dcrits prcdemment. La force au sommet i rsultant de la dformation de E sexprime par (voir [OH99]) : fi

vol 2

xj

j 1

k 1l 1

i j L k L l kl

(C.9)

o vol E est le volume du ttradre E . Tous les calculs prsents lont t pour un lment E donn, et sappliquent ses quatre sommets. Il suft ensuite de rpter ces calculs pour chacun des lments qui composent lobjet, chaque sommet sommant les contributions (i.e. la force rsultante) de tous les ttradres auquel il appartient.

126

ANNEXE C. GREEN-LAGRANGE EN PRATIQUE