IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Physique Discussion :

Hard constraint avec Jacobi


Sujet :

Physique

  1. #1
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 72
    Points : 85
    Points
    85
    Par défaut Hard constraint avec Jacobi
    Bonjour,

    J'ai codé il y a un petit moment des "hard constraint", je procède par itération et cela marche très bien.
    Mais j'ai voulu tester avec la méthode de Jacobi depuis quelques jours, et je trouve que ce n'est pas satisfaisant.

    Faut-il également procédé par itération une fois le scalaire de Lagrange trouvé?
    De plus je suis obligé d'inverser les forces extérieures du point de référence pour les calculs afin de tomber à peu près juste.
    Je dois sûrement mal m'y prendre à un moment donné mais je ne vois pas où .

    La formule de base c'est bien :

    λ = (J'q' + JM(-1)Fext) / -(JM(-1)J(t));

    Avec J = matrice vecteur unitaire de la position
    J(t) = transposée de J
    J' = matrice vecteur unitaire de la vélocité
    M-1 = matrice inverse des masses
    q' = matrice colonne des vélocités

    Mes conditions de départ C = 0 et C'=0 sont respectées

    Si quelqu'un sait comment ça marche, je veux bien un petit coup de pouce.

    Merci d'avance

  2. #2
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 72
    Points : 85
    Points
    85
    Par défaut
    Alors, j'ai refait une batterie de tests :

    Je devais inverser les Fext du point de référence pcq je multipliais mon vecteur unitaire par la longeur légal.
    La longueur légale p pour rappel : C = 0.5f * (p.p -L²);
    Avec p.p produit scalaire et L la longueur de la contrainte.

    Avec ma méthode en 8 itérations différence de longueur entre 2 points : de l'ordre de 10-4;
    Avec la méthode de Jacobi : de l'ordre de 10-5;

    Est-ce du fait que 'j'utilise la méthode de Verlet comme intégration qui fait que ma méthode ou celle de Jacobi ne diffère pas vraiment.

    Je vais faire le test avec plusieurs particules. Si cela vous intéresse faites moi le savoir.

  3. #3
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 72
    Points : 85
    Points
    85
    Par défaut
    Il semblerait que tout marche à la perfection.

    J'ai juste un décalage entre ma méthode et la méthode avec Jacobi du fait de l' utilisation de la vélocité dans le calcul des forces des contraintes.

    Si j'ajoute une friction (qui apparait du coup toute seule dans ma méthode pour la raison évoquée), j’obtiens le même résultat, les 2 modèles se suivent.

    Maintenant plus qu'à faire ceci pour les rigid bodies, bon c'est un poil plus compliqué c'est vrai.

    J'aurai peut etre besoin de votre aide à nouveau

  4. #4
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 72
    Points : 85
    Points
    85
    Par défaut Vidéo du résultat
    Du coup voilà, j'avais oublié de vous mettre la vidéo du résultat final



    Bonne Année les codeurs fous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. create type avec constraint sur colonnes
    Par mourad.zamoun dans le forum SQL
    Réponses: 4
    Dernier message: 30/10/2007, 17h34
  2. Pb avec l'erreur 1216... une constrainte externe l'empeche
    Par jeff&&php dans le forum Requêtes
    Réponses: 7
    Dernier message: 28/04/2006, 09h58
  3. [Oracle 10g]probleme avec une CONSTRAINT sur UPDATE
    Par Battosaiii dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/04/2006, 19h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo