Master 1 Informatique UE M1if37 - Animation en … · Corps rigide de masse m soumis a la force de...

49
Simulation d’objets d´ eformables Syst` eme masse-ressorts Master 1 Informatique UE M1if37 - Animation en synth` ese d’image Partie - Simulation par mod` eles physiques Cours 3 - Simulation d’objets d´ eformables Florence Zara LIRIS - Universit´ e Lyon 1 http://liris.cnrs.fr/florence.zara E-mail: fl[email protected] Florence Zara UE M1if37 - Animation en synth` ese d’image

Transcript of Master 1 Informatique UE M1if37 - Animation en … · Corps rigide de masse m soumis a la force de...

Simulation d’objets deformablesSysteme masse-ressorts

Master 1 InformatiqueUE M1if37 - Animation en synthese d’image

Partie - Simulation par modeles physiquesCours 3 - Simulation d’objets deformables

Florence Zara

LIRIS - Universite Lyon 1

http://liris.cnrs.fr/florence.zara

E-mail: [email protected]

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

Plan du cours

Simulation d’objets deformables

Exemples d’objet deformables

Caracteristiques des objets deformables

Mecanique des Milieux Continus (MMC)

Systemes masses-ressorts

Definition

Application a une simulation de textiles

Travail demande en TP

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Simulation d’objets deformables : exemples (1)

Simulation de cheveux

[Bertails, et. al. 2006]

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Simulation d’objets deformables : exemples (2)

Simulation de textiles

[Bridson, et. al. 2002] [Zara, et. al. 2003] [MIRALab]

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Simulation d’objets deformables : exemples (3)

Simulation d’objets deformables divers et varies

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Comment caracteriser les objets deformables ?

Deux notions importantes : contrainte et deformation

Le rapport contraintedeformation caracterise l’objet deformable

Plusieurs types de contraintes / deformations⇒ plusieurs coefficients caracterisant les objets deformables⇒ effectue des tests sur les materiaux pour mesurer cescoefficients

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Comment caracteriser les objets deformables ?

Tests de deformations mettent en avant parametres d’elasticite :

Etirement ⇒ module de Young, coefficient de Poisson

Cisaillement ⇒ module de cisaillement (shear)

Compression ⇒ module de compressibilite (Bulk)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

1 - Test de traction / etirement

Contrainte de traction

Intensite de la force appliquee divisee par l’aire de la surfacesur laquelle la force est exercee : σ = F/A

Tension importante quand :

Intensite de la force importanteSurface petite

Exemple

Corps rigide de masse m soumis a la force de gravite ~F = m~g

Corps pose sur un cylindre de rayon r

Tension sur le cylindre : σ = F/A = mgπr2

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Test de traction / etirement - Module de Young

Etirement

Applique pression F sur un cote de surface A, de longueur L

⇒ Longueur change de ∆L

⇒ Deformation ou allongement relatif : ∆LL

⇒ Contrainte de traction : σ = FA

Module de Young

Contrainte traction / deformation

⇒ E = F/A∆L/L

Loi de Hooke pour la traction :contrainte = module de Young × deformation⇒ σ = Eε

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Test de traction / etirement - Coefficient de Poisson

Elargissement

Quand exerce un etirement ou une compression, la largeur dela piece varie egalement, a l’inverse de l’allongement

Coefficient de Poisson

ν = −ElargissementDeformation = −Elargissement

(∆L/L)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

2 - Test de cisaillement - Module de Coulomb

Cisaillement

Cisaillement : variation de l’angle, qui n’est plus droit

Cela correspond a des forces s’exercant parallelement a la face

Contrainte = scission = F / A

Deformation = ecart a l’angle droit = cisaillement

Module de cisaillement ou de Coulomb

G = contraintedeformation = F/A

θ

Si milieu isotrope (meme comportementdans toutes les directions), G = E

2(1+ν)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

3 - Test de compression - Bulk modulus

Compression

Exerce une force

isotrope : meme valeur dans toutes les directionsperpendiculaire en tout point de la surface

Pression P = F/A ⇒ variation ∆P

Objet de volume V ⇒ variation ∆V

Module de compressibilite ou d’elasticite

Contrainte volumique / deformationvolumique

⇒ B = ∆P∆V /V

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Comment simuler comportement objet deformable ?

Coefficient de Poisson, modules de Young, de compressibilite,et de cisaillement ⇒ Mecanique des Milieux Continus (MMC)

MMC donne une description du comportement d’un objet quise deforme ou se deplace sous l’influence de contraintes

Discretisation de l’objet en elements

Maille du maillage = noeuds + fonctions d’interpolationFormulation deplacement de tout point a l’interieur d’unelement en fonction des valeurs aux noeuds

Resolution equations MMC pour obtenir deplacement U(X)

Methodes de resolution :

Methode des Elements Finis

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Deplacement

Deformation Φ(X ) peut etre representee par le champ dedeplacement U(X ) avec Φ(X ) = X + U(X )

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Contrainte

Tenseur de contrainte :

Tenseur (matrice 3× 3) qui caracterise l’etat de contrainte

Tenseur symetrique avec :

σ(X ) =

[σ11 σ12 σ13

σ21 σ22 σ23

σ31 σ32 σ33

]=

σ11

σ22

σ33

σ12

σ13

σ23

Elements diagonaux : contraintes normalesElements non diagonaux : contraintes de cisaillement

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Deformation

Tenseur de deformation :

Tenseur (matrice 3× 3) decrit l’etat de deformation localresultant de contraintes (efforts internes)

Il permet ainsi de quantifier la deformation avec

ε(X ) =

[ε11 ε12 ε13

ε21 ε22 ε23

ε31 ε32 ε33

]

Elements diagonaux : etirement dans les 3 directionsElements non diagonaux : cisaillement

Tenseur deformation exprime en fonction du gradient deplacement

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Deformation

Exemple du tenseur de deformation de Green-Saint Venant :

ε(X ) =1

2

(∇UT (X ) +∇U(X ) +∇UT (X ) ∇U(X )

)avec

∇U(X ) =

∂Ux (X )

∂x∂Ux (X )

∂y∂Ux (X )

∂z∂Uy (X )

∂x∂Uy (X )

∂y∂Uy (X )

∂z∂Uz (X )

∂x∂Uz (X )

∂y∂Uz (X )

∂z

.Partie lineaire - Cas elasticite lineaire avec loi de HookePartie non-lineaire - Cas elasticite non-lineaire

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Comportement

Loi de comportement des materiaux :

Relation entre la contrainte et la deformation : [σ] = [C ][ε]

→ Il faut trouver la loi qui correspond au materiau qu’on souhaitesimuler → Tenseur [C] est une donnee du probleme (connu)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Elasticite lineaire

Cas de l’elasticite lineaire :

Partie lineaire de la courbe precedente

Concerne les petites deformations (< 10% taille objet)

Deformation elastique est reversible : objet retourne a son etatinitial quand la contrainte est supprimee

Utilisation de la partie lineaire du tenseur de deformation deGreen-Saint Venant :

ε(X ) =1

2

(∇UT (X ) +∇U(X )

)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Elasticite lineaire

Loi de comportement pour l’elasticite lineaire (materiau isotrope) =Loi de Hooke

σ11σ22σ33σ12σ13σ23

=

λ + 2µ λ λ 0 0 0λ λ + 2µ λ 0 0 0λ λ λ + 2µ 0 0 00 0 0 µ 0 00 0 0 0 µ 00 0 0 0 0 µ

ε11ε22ε33ε12ε13ε23

avec λ et µ coefficients de Lame (dependant du materiau) : λ = ν E

(1+ν)(1−2ν), µ = E

2(1+ν)

σ11σ22σ33σ12σ13σ23

=E

(1 + ν)(1 − 2ν)

1 − ν ν ν 0 0 0ν 1 − ν ν 0 0 0ν ν 1 − ν 0 0 00 0 0 1 − 2ν 0 00 0 0 0 1 − 2ν 00 0 0 0 0 1 − 2ν

ε11ε22ε33ε12ε13ε23

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Elasticite non-lineaire

Cas de l’elasticite non-lineaire :

Permet de simuler des deformations plus grandes

Plusieurs lois de comportement possibles pour le casnon-lineaire (materiaux hyper-elastiques)

Par ex. utilisation du tenseur de deformation de Green-SaintVenant :{

ε(X ) = 12

(∇UT (X ) +∇U(X ) +∇UT (X ) ∇U(X )

)W (X ) = λ

2 (tr ε(X ))2 + µ tr ε(X )2

Mais existe d’autres lois : Mooney-Rivlin, Neo-Hooke, etc.

→ Experimentations pour savoir quelle loi correspond au materiau

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Lineaire vs. non-lineaire

Exemple de comportement :

Hooke (lineaire) vs. Saint Venant-Kirchhoff (non-lineaire)

→ Elargissement de la poutre dans le cas de l’elasticite lineaire carn’est pas invariant par rotation→ Quand un element de volume subit une rotation, interpretecomme une augmentation de l’energie elastique se traduisant parune distorsion

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - Simulation

Et donc ?Comment simuler comportement objet deformable ?

Equation du mouvement de l’objet deformable :

M U(t) + DU(t) + K (U(t))U(t) = F (t),

avec M,D,K matrices des masses, viscosite et raideurs, F laforce causant la deformation

Equations d’equilibre (ρ = masse volumique) :

ρ U = ∇ · σ + F

Rappel : ∇ · A = div A = ∂Ax

∂x +∂Ay

∂y + ∂Az

∂z

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Allons un peu plus loin en MMC - MEF

Resolution par la methode des elements finis (MEF) pourobtenir deplacement U

Discretisation du domaine en elementsDefinition de fonctions de formesLoi de comportement : lien entre contrainte et deformationTenseur de deformation : lien entre deformation et deplacement→ Deduit le lien entre la contrainte et le deplacementEquation bilan du systeme : Force = ...→ Bilan des efforts, des contraintes (exprime en fonction dudeplacement)→ Sort le U de la formulationEquation du mouvement : Force = ...→ Sort le U de la formulation

→ Assemblage de la matrice K→ Resolution pour obtenir U

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Comment simuler comportement objet deformable ?

Alternatives possibles pour modeliser objets deformables1 Basee sur des principes physiques, necessitant resolution

systemes d’equations differentielles⇒ objet discretise en un ensemble de masses connectees pardes ressorts (systeme masses-ressorts)

2 Non basees sur des principes physiques mais solutions semblentphysiquement correctes⇒ objet borne par une surface parametrique avec des pointsde controle (B-spline, NURBS)

3 Deformation de la region contenant l’objet deformableSurface de l’objet representee par un maillage triangulaire oupar une surface parametrique avec points de controle⇒ deformation de la region engendre la deformation de l’objet

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

ExemplesCaracteristiquesMMC

Comment simuler comportement objet deformable ?

4 Objet modelise par une region bornee par une surface definieimplicitement par F (x , y , z) = 0Interieur de l’objet = ens. des points tels que F (x , y , z) < 0Force exercee sur l’objet simulee par l’ajout d’une fonction dedeformation D(x , y , z) a F (x , y , z)⇒ surface deformee definie implicitement parF (x , y , z) + D(x , y , z) = 0⇒ interieur de l’objet deforme defini parF (x , y , z) + D(x , y , z) < 0

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Comment simuler comportement objet deformable ?

Etude des systemes masses-ressorts

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts

Definition

Objet deformable modelise par un ensemble de massesconnectees par des ressorts

Les objets ainsi modelises peuvent etre :

des courbes (cheveux, cordes, etc.) ⇒ 1 dimensiondes surfaces (textiles, surface de l’eau, etc.) ⇒ 2 dimensionsdes volumes (objets volumiques visqueux) ⇒ 3 dimensions

Complexite du systeme depend

du nombre de masses

de leurs connections

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - 1D

Cas 1D : ligne polygonale

Soit une courbe ouverte avec deux points terminaux

Soit une courbe fermee (tous les points sont relies)

Chaque sommet represente une masse

Chaque arete represente un ressort reliant les deux masses setrouvant aux deux extremites de l’arete

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - 1D

Formulation pour une chaıne ouverte

Systeme avec p masses et p − 1 ressorts les connectant

Masses mi de positions xi , pour 1 6 i 6 p

Ressort i relie les masses mi et mi+1

Point i connecte par deux ressorts aux points i − 1 et i + 1⇒ point i soumis aux forces exercees par ces deux ressorts

i!1

i+1i!1 i

kk i

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - Animation 1D

Parametres du systeme

Ressort reliant i et i + 1 : raideur ki , longueur au repos li

Fi : forces externes appliquees au point i (vent, gravite, etc.)

Formulation du systeme differentielle

Pour le point i :mi xi =somme des forces appliquees sur imi xi = ki−1 (‖xi−1 − xi‖ − li−1) + ki (‖xi+1 − xi‖ − li ) + Fi

i!1

i+1i!1 i

kk i

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - Animation 2D

Definition de la surface

Surface representee par un ensemble de particules

Particule i connectees a 4 particules voisines

Pour le point i : mi xi =∑

j fi ,j + Fi

avec fi ,j = kij (‖xi − xj‖ − lij), j voisin de i

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - Animation 3D

Definition du volume

Volume representee par un ensemble de particules

Particule i connectees a 8 particules voisines

Pour le point i : mi xi =∑

j fi ,j + Fi

avec fi ,j = kij (‖xi − xj‖ − lij), j voisin de i

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Systeme masses-ressorts - Generalisation

Formulation d’un systeme masses-ressorts

Systeme contenant p particules de masses mi , de position xi

Chaque ressort relie masses mi et mj , de raideur kij > 0, delongueur au repos lij

Soit Ai = ensemble des indices j tels que mi connectee a mj

Equation du mouvement de la particule i :mi xi =

∑j∈Ai

kij (‖xi − xj‖ − lij) + Fi

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Application a une simulation de textiles

Discretisation du textile en un maillage polygonal

Sommets correspondent aux particules

Topologie definit les interactions

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

Tissu réel Maillage

Force

Particule

[Breen,House,Getto 1994]

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Application a une simulation de textiles

Systeme masses-ressorts definit les interactions entreparticules

Particules connectees par des ressortsParametres physiques des ressorts : k , l0 et ν

[Provot 1995]

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

3

2

3

1 2

1

3

21

2

1

3

1 : ressorts longitudinaux

2 : ressorts diagonaux

3 : ressorts de flexion

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Rappel dynamique Newtonienne

Boucle d’animation

Calcul des forces appliquees sur les particules : forces exerceespar les ressorts

Calcul des accelerations : principe fondamental de ladynamique

Integration pour obtenir les nouvelles vitesses et positions

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Calcul des forces

Calcul des forces exercees sur chaque particule

~fi (t) =∑

j|j voisin de i

[~f ei,j(t) + ~f vi,j(t)

]+ gravite + interactions

��������� �

�� �������������������

��

������� �"!$#%������&�'�()��#%*��+'"����(-,/.102�3#4,%#45�'6����0$&7�

~f ei,j(t) = kij (‖xi (t)− xj(t)‖ − lij)xi (t)−xj (t)‖xi (t)−xj (t)‖ elasticite

~f vi,j(t) =(νij (xi (t)− xj(t)) · xi (t)−xj (t)

‖xi (t)−xj (t)‖

)xi (t)−xj (t)‖xi (t)−xj (t)‖ viscosite

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Calcul des accelerations

Loi fondamentale de la dynamique appliquee a chaqueparticule i :

xi (t) = mi−1fi (x(t), x(t))

xi (t) : acceleration de la particule i au temps tmi : masse de la particule ifi : forces exercees sur la particule ix(t) : vecteur des positions des particules au temps tx(t) : vecteur des vitesses des particules au temps t

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Equation du mouvement

Systeme differentiel associe aux p particulesx(t) = M−1f (t, x(t), x(t))x(t0) = v0

x(t0) = x0

→ f depend de la definition des interactions

Peut etre transforme en systeme du premier ordre(v(t)x(t)

)=

(M−1f (t, x(t), v(t))

v(t)

),

(v(t0)x(t0)

)=

(v0

x0

).

Integration pour obtenir les vitesses et les positions

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Integration : methode d’Euler implicite

Idee

Derivee y ′(t + h) remplacee par son approximation mathematique

y(t + h)− y(t)

h≈ y ′(t + h) = f (t + h, y(t + h))

Formulation du schema pour un avancement h dans le temps

y(t + h) = y(t) + h f (t + h, y(t + h))

→ Schema implicite car y(t + h) apparait des deux cotes del’equation

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Methode d’Euler implicite - Point de vue animation 3D

Donnees

Forces au temps t : f (t, x(t), v(t))Vitesse au temps t : v(t)Position au temps t : x(t)

Schema d’integration numerique

Acceleration au temps t : v(t) = M−1f (t, x(t), v(t))Vitesse au temps t + h : v(t + h) = v(t) + h v(t + h)Position au temps t + h : x(t + h) = x(t) + h v(t + h)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Methode d’Euler implicite - Point de vue animation 3D

Soient

{∆v = v(t + h)− v(t)∆x = x(t + h)− x(t)

⇒{

∆v = h v(t + h) = h M−1f (t, x(t + h), v(t + h))∆x = h v(t + h) = h (v(t) + ∆v)

On obtient :

(∆v∆x

)= h

(M−1f (x(t) + ∆x , v(t) + ∆v)

v(t) + ∆v

)↪→ Systeme a resoudre pour obtenir les valeurs de ∆v et ∆x

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Methode d’Euler implicite - Point de vue animation 3D

Utilisation des series de Taylor appliquee a f pour obtenirapproximation du premier degre :

f (x(t) + ∆x , v(t) + ∆v) = f (t) +∂f

∂x∆x +

∂f

∂v∆v

Le systeme devient :(∆v∆x

)= h

(M−1

(f (t) + ∂f

∂x ∆x + ∂f∂v ∆v

)v(t) + ∆v

)↪→ matrices jacobiennes ∂f

∂x et ∂f∂v a calculer

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Methode d’Euler implicite - Point de vue animation 3D

On considere la premiere equation du systeme.On remplace ∆x par h (v(t) + ∆v) :

∆v = h M−1

(f (t) +

∂f

∂xh (v(t) + ∆v) +

∂f

∂v∆v

)Soit I la matrice identite.

⇒(I − hM−1 ∂f

∂v− h2M−1 ∂f

∂x

)∆v = hM−1

(f (t) + h

∂f

∂xv(t)

)⇒(M − h

∂f

∂v− h2 ∂f

∂x

)∆v = h

(f (t) + h

∂f

∂xv(t)

)↪→ Systeme a resoudre pour obtenir ∆v , pour ensuite calculer :{

v(t + h) = v(t) + ∆v ,x(t + h) = x(t) + hv(t + h).

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Methode d’Euler implicite - Point de vue animation 3D

En resume, utilisation du systeme differentiel reformule[Baraff, Witkin 1998] :

↪→(M − h

∂f

∂v− h2 ∂f

∂x

)∆v = h

(f (t) + h

∂f

∂xv(t)

)1 Evaluation des matrices ∂f

∂x et ∂f∂v

2 Resolution du systeme pour obtenir ∆v3 Calcul des nouvelles positions et vitesses{

v(t + h) = v(t) + ∆vx(t + h) = x(t) + hv(t + h)

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Euler implicite - Evaluation des matrices ∂f∂x et ∂f

∂v

Definition de [Volino, Magnenat-Thalmann 2000]

Matrices creuses des contributions des forces∂fi∂xj

= kijuijuTij

∂fi∂xj

= − ∂fj∂xi

∂fi∂xi

=∑

j∂fi∂xj

∂fi∂vj

= νijuijuTij

∂fi∂vj

= − ∂fj∂vi

∂fi∂vj

=∑

j∂fi∂vj

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Euler implicite - Matrices des contributions des forces

3

4

5

6

7

8

9

10

11

12

13

14

2

1

0

1413121110

30 1 2 4

5 6 987

3 4 5 6 7 8 140 1 2 9 10 11 12 13

Eléments diagonaux

le nombre de voisins max = 6i

j

Eléments non diagonaux

Symétrie

Maillage triangulaire de 15 particulesdans le plan 2D :

particule i connectée à j

����������

� ��� � ��� ��� � ����������� ���� �

Florence Zara UE M1if37 - Animation en synthese d’image

Simulation d’objets deformablesSysteme masse-ressorts

DefinitionSimulation de textilesTP

Animation a realiser en TP

Travail demande - Regarder la page Web

Recuperer l’archive du code existant

Comprendre et compiler le code grace a la doc

Completer le code :

Fonction d’affichageCalcul des forces, accelerations, vitesses et des positionsRajouter de l’interaction (mouvement coin du tissu)Collision du tissu avec le sol...

Florence Zara UE M1if37 - Animation en synthese d’image