Title: Animation de solides en contact par mod
1Animation de solides en contact par modèle
physique
- Auteur
- Olivier Galizzi
- Tuteur
- François Faure
2Introduction
- Simulation par modèle physique
- Vaste champ d'applications
- Animations réalistes
- Simulations de solides rigides
- Contacts et chocs entre solides
- Domaine largement exploré
- Problèmes
- Temps de calculs
- Stabilité
Plante 2002
3Plan
- Rappels
- Etat de l'art
- Méthode de résolution itérative globale
- Extensions
- Bilan et perspective
4Plan
- Rappels
- Modélisation et dynamique du solide
- Cinématique du solide
- Collisions
- Etat de l'art
- Méthode de résolution itérative globale
- Extensions
- Bilan et perspective
5Modélisation et dynamique
- Modélisation dun solide en déplacement
- Un repère local en déplacement
- Une masse et une inertie
- Une position-orientation
- Une vitesse linéaire et angulaire
- Une accélération linéaire et angulaire
- Principe fondamental de la dynamique
6Cinématique
- Vitesse dun point p1 lié à un solide
- Projection sur un axe n normalisé
- Idem pour les accélérations
Jacobienne des contraintes j1
7Collisions
- Interpénétrations dues à la discrétisation du
temps - Notion de
- Vecteur dextraction n
- Distance de pénétration
- Vitesse de pénétration
- Accélération de pénétration
Solide 1
p2
n
p1
Solide 2
8Plan
- Rappels
- Etat de l'art
- Méthodes de pénalités
- Méthodes analytiques
- Traitements global des contacts
- Synchronisation des collisions
- Méthode de résolution itérative globale
- Extensions
- Bilan et perspective
9Avant 1988 Méthodes de pénalités
- Utilisation de ressorts
- Avantages
- Facile à implémenter
- Assez stables aux amoncellements
- Inconvénients
- Petits pas de temps (ressorts rigides)
- Réglages délicats
- Pas de frottement
p2
l
p1
10Dés 1988Méthodes analytiques
MW88 Hah88
- Conservation des moments linéaires et angulaires
- Résolution locale collision par collision
- Avantages
- Contrôle du rebond
- Gestion du frottement
- Inconvénients
- Retour dans le temps
- Lenteur
111994Traitement global des contacts
Bar94
- Tous les contacts sont traités en même temps
- Résolution dun LCP
- Avantage
- Plus efficace
- Inconvénient
- Reste O(n3)
- Pas itératif
122001 Synchronisation des collisions
- Correction positions, vitesses, accélérations
- Utilisation de méthodes d'optimisation
- Avantages
- Grande stabilité
- Plus de retours en arrière
- Inconvénients
- Lenteur
- Complexité
MS01
13Etat de l'art Bilan
- Trois classes de méthodes de résolution
- Résolution locale sans synchronisation des
collisions - Résolution locale avec synchronisation des
collisions - Résolution globale
- Corrections
- Des accélérations
- Des vitesses
- Des positions
- Problèmes
- Lenteur
- Stabilité
14Plan
- Rappels
- Etat de lart
- Méthode de résolution itérative globale
- Objectif
- Ecriture du système déquations
- Résolution du système
- Boucle de simulation
- Extensions
- Bilan et perspective
15Objectif
- Simulation temps réel
- Gérer un grand nombre (plusieurs centaines)
- De solides
- De collisions
- Compromis précision/temps de calcul
16Principe
- Synchronisation des collisions
- Correction
- Positions distances de pénétrations nulles
- Vitesses vitesses de pénétrations nulles
- Accélérations accélérations de pénétrations
nulles - Utilisation de contraintes
- Résolution itérative à l'aide d'un gradient
conjugué
17Matrice dynamique JM-1JT
- La jacobienne des contraintes J du système
- Matrice creuse
- 2 blocs non nuls de type ji par lignes
- Calcul des vitesses de pénétrations
- Relie une action de contrainte à un mouvement
relatif
3
1
2
4
18Influence d'une impulsion
- Utilisation du terme JM-1JT
- p impulsions (kg.m.s-1) appliquées aux pi
selon les axes de contrainte - JT p impulsions p exprimées aux centres de
gravité - M-1JT p variations de vitesses des repères
locaux - JM-1JT p variations de vitesses de pénétrations
19Correction des vitesses des solides
- Calcul des vitesses de pénétration
- Résolution du système matriciel
- Correction des vitesses des solides à l'aide de p
- variations instantanées de
vitesses
p
20Correction des positions et accélérations
- Accélérations
- Calcul des accélérations de pénétrations
- Résolution de
- Positions
- Calcul des distances de pénétrations
- Résolution de
f
d
21Résolution du système
- Nouvel algorithme basé sur la méthode du gradient
bi-conjugué - Résolution de par minimisation
itérative de - Prise en compte de la signification physique des
actions dynamiques et des mouvements relatifs
?
?
22Avantages
- Exploitation de la forme de la matrice dynamique
- pas creuse mais et
creuses - Produit matrice-vecteur en trois étapes O(n)
- Réglage précision/temps de calcul
- Limitation du nombre d'itérations
- Définition d'un seuil sur la précision des calculs
23Méthodes densembles actifs
- Partition du système déquation en deux classes
- Contraintes actives
- Contraintes passives
- Contraintes actives traitées uniquement
- Mise à jour des classes et
- Tantque (pas resolu)
- resoudre ? sur
voire - mise a jour de
voire
24Notre approche
- Mise à jour rapide des ensembles actifs
- Tantque (pas resolu)
- Faire un pas du gradient sur
- mise a jour de
- Si (modification de )
- reinitialisation
Etat de contact actif
Etat de décollement
25Influence de la modification
Itération 1
Itération i
contrainte répulsive
Itération n
contrainte attractive
26Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
27Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
28Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
29Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
30Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
31Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
32Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
33Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
34Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
35Boucle de simulation
Calcul forces externes
Correction vitesses
Calcul forces externes
Intégration du temps
Calcul forces de contraintes
Détection collisions
Construction de J
Construction de J
Correction positions
ou
Affichage
36Vidéo
37Plan
- Rappels
- Etat de l'art
- Méthode de résolution itérative globale
- Extensions
- Solides Articulés
- Frottement adhérent
- Bilan et perspective
38Extension aux solides articulés
- Utilisation de contraintes points sur points
- Trois contraintes scalaires
- Pas d'inégalités ( reste dans )
- Lalgorithme reste globalement inchangé
39Video
40Gestion du frottement adhérent
- Ajout de deux contraintes tangentielles
- Axe normal au contact n 2 axes tangents t et s
- Pour garantir
- Vitesse relative nulle selon t et s
- Accélération relative nulle selon t et s
41Video
42Plan
- Rappels
- Etat de l'art
- Méthode de résolution itérative globale
- Extensions
- Bilan et perspectives
43Bilan
- Lalgorithme offre de bonnes performances
- Efficacité de la résolution (rapidité)
- Triple correction (stabilité)
- Réglage compromis précision/temps de calcul
- Permet des simulations temps réel
- Permet des simulations complexes non temps réel
- Calcul des corrections uniforme
44Perspectives
- Introduction du frottement de Coulomb
- Discrétisation du cône de coulomb
- Difficultés dans les transitions
adhérence-glissement
45Merci de votre attention des questions ??
46Généralisation de la jacobienne des contraintes
- Calcul des vitesses relatives
- Forme générale
47Intégration du temps
- Différents schémas possible
- Euler explicite le plus adapté
- Trois choix possible
- Euler standard
- Euler modifié
- Stoermer
48Influence du pas d'euler sur le nombre de
collisions
49Influence du pas d'euler sur le nombre
d'itérations
50Choix du pas d'euler
- Trois choix possible
- Euler standard
- Euler modifié
- Stoermer
- Différence et problème engendré
51Intégration du temps
- Etat dun solide
- Intégration du temps
- Approximation du terme intégral
- Euler explicite
- Euler implicite
- Runge Kutta 2
- Runga Kutta 4
- Utilisation de euler explicite
- Discontinuités des forces
- Collisions
52Performance du gradient modifié (2/2)
53Performance du gradient modifié
54Discrétisation du cône
- Discrétisation du cône de coulomb
- Cinq cas à distinguer
- Adhérence axes s et t (1)
- Adhérence axe s et glissement axe t (2 et 3)
- Glissement axe s et adhérence axe t (4 et 5)
- Glissement axe s et glissement axe t (6, 7, 8 et
9) - Décollement
4
8
9
n
n
n
3
t
2
1
t
t
s
s
7
6
s
5
55Gestion du frottement de Coulomb
- On doit toujours garantir
- f dans la pyramide adhérence
- f sur la pyramide glissement
- Ajout de 1 ou 2 contraintes sur les fi si sortie
du cône - Utilisation de JnM-1JT au lieu de JM-1JT
- On se ramène à un système de la forme
56Automate de transition
57Vidéo
58Outils utilisés
- Jacobienne des contraintes jc
p1
p1
59Jacobienne des contraintes
- Relations linéaires entre les variations sur les
degrés de libertés et les valeurs contraintes
60Répartition des calculs
- Objectif
- Répartir n itérations de calcul entre correction
des positions, vitesse et accélérations - Trouver la répartition optimale
- Critère de qualité distance de pénétrations
moyennes après correction - Principe
61Optimisation de la répartition
62Performance du gradient modifié O(n²) ?