N-pendule + collisions
Bonjour à tous,
Je sollicite votre aide aujourd'hui sur le problème du N-pendule.
Je cherche à simuler le contact entre une boule (caractérisé par sa position, sa vitesse, son accélération et sa masse), et un N-pendule caractérisé par ses $\theta_i, \omega_i, lengths_i, masse_i$ pour i variant de 1 à N.
Le contact entre ces 2 objets se définit comme étant le contact entre la boule libre, et la i-ieme boule du N pendule.
Les équations d'un N-pendule sont facilement trouvables sur le net (méthode du Lagragien par exemple) et peuvent se résoudre numériquement avec Runge Kutta. Cette partie est implémentée et correcte.
De plus, la collision simple boule à boule est également résolue de mon côté.
Mais alors, quel est mon problème ?
Lorsque je détecte un contact entre la boule libre et une $boule_i$ du pendule, ma méthode est la suivante.
Je suppose que la boule_i du pendule est elle aussi une simple boule, de sorte à appliquer la modification des vitesses issue de la collision classique.
Je récupère donc le nouveau $\omega_i$ du pendule (qui vaut $\frac{V_\theta}{length_i}$, et la boule libre quant à elle poursuit son chemin normalement avec sa nouvelle vitesse.
Ainsi, la valeur de $\omega_i$ est modifiée, et Runge Kutta calcule la prochaine itération en prenant compte la modification, et ainsi de suite.
Seulement voilà, cette façon de faire n'est sûrement pas correcte, car on suppose la tension T crée après le contact nulle.
Cette tension, qui est j'imagine la projection de la nouvelle vitesse selon $u_r$, je ne sais pas quoi en faire...
Merci d'avance pour votre aide, cela fait bien des années que je n'avais pas posté sur ce site...
En espérant ne pas raconter trop de conneries,
Je vous remercie d'avance pour aide !
[En toute occurrence, Carl Runge (1856-1927) et Martin Wilhelm Kutta (1867-1944) prennent une majuscule. AD]
Je sollicite votre aide aujourd'hui sur le problème du N-pendule.
Je cherche à simuler le contact entre une boule (caractérisé par sa position, sa vitesse, son accélération et sa masse), et un N-pendule caractérisé par ses $\theta_i, \omega_i, lengths_i, masse_i$ pour i variant de 1 à N.
Le contact entre ces 2 objets se définit comme étant le contact entre la boule libre, et la i-ieme boule du N pendule.
Les équations d'un N-pendule sont facilement trouvables sur le net (méthode du Lagragien par exemple) et peuvent se résoudre numériquement avec Runge Kutta. Cette partie est implémentée et correcte.
De plus, la collision simple boule à boule est également résolue de mon côté.
Mais alors, quel est mon problème ?
Lorsque je détecte un contact entre la boule libre et une $boule_i$ du pendule, ma méthode est la suivante.
Je suppose que la boule_i du pendule est elle aussi une simple boule, de sorte à appliquer la modification des vitesses issue de la collision classique.
Je récupère donc le nouveau $\omega_i$ du pendule (qui vaut $\frac{V_\theta}{length_i}$, et la boule libre quant à elle poursuit son chemin normalement avec sa nouvelle vitesse.
Ainsi, la valeur de $\omega_i$ est modifiée, et Runge Kutta calcule la prochaine itération en prenant compte la modification, et ainsi de suite.
Seulement voilà, cette façon de faire n'est sûrement pas correcte, car on suppose la tension T crée après le contact nulle.
Cette tension, qui est j'imagine la projection de la nouvelle vitesse selon $u_r$, je ne sais pas quoi en faire...
Merci d'avance pour votre aide, cela fait bien des années que je n'avais pas posté sur ce site...
En espérant ne pas raconter trop de conneries,
Je vous remercie d'avance pour aide !
[En toute occurrence, Carl Runge (1856-1927) et Martin Wilhelm Kutta (1867-1944) prennent une majuscule. AD]
Réponses
-
Beaucoup de choses sont peu claires pour moi. De quelle tension parles-tu ? Qu'est-ce que $u_r$ tu ne l'as pas défini.
La collision modifie les quantités ou moments du mouvement, ensuite tu reprends comme une nouvelle simulation avec des conditions initiales changées par rapport à la dernière itération.
Là où il faut faire attention c'est qu'il faut probablement interpoler (ou raffiner les pas de temps) les conditions au temps de la collision, pour redémarrer la simulation aux conditions les plus approchées de la collision.
Dis-je des bêtises ? -
Bonjour,
Lorsqu'une balle entre en contact avec le pendule, tu fais l'erreur de considerer qu'il s'agit d'un choc entre deux balles libres. C'est evidenment faux puisqu'une balle du pendule n'est pas libre : elle est liee au pendule.
Tu dois donc modeliser le choc entre une balle libre et une balle liee (soumise aux tensions des liens qui la relie aux autres balles voisines du pendule) : Lagrange est ton amis.
-
Bonjour,
Merci YvesM et Chalk.
Des années après, YvesM, tu es est encore celui qui m'éclaire en physique.
Effectivement, c'était l'intuition que j'avais et ça se confirme avec ta réponse.
Modéliser ce contact est-il un exercice difficile?
Je fais principalement des maths et de la simulation informatique, et je ne pense pas avoir la capacité de modéliser ça physiquement.
Si quelqu'un peut m'éclairer ou envoyer un papier qui traiterait de ça, c'est avec plaisir, je n'en ai pour ma part pas trouvé.
Bonne journée à tous. -
Ca ne me paraît pas si évident que ce soit faux.
Si on modélise comme un choc entre deux balles libres, les quantités de mouvement de la boule du pendule vont de toute façon être projetés sur l'espace admissible. Est-ce que cela donne un résultat différent ? -
Pour te répondre Chalk, avec mon intuition physique digne d'un lycéen 😅, je pense que le contact induit une perturbation sur les vitesses angulaires des autres nœuds, pas que sur l'indice i. Ainsi, mon approche fonctionne seulement dans le cas N=1, puisque la tige est rigide et donc seul $\omega_1$ est modifié (sauf erreur, je l'ai vérifié avec ma simulation et ça semble bien fonctionner). Mais si on rajoute au moins une boule, la tension créer lors du contact va se diffuser le long du pendule et ne modifie donc pas que $\omega_i$. Mon problème est que je ne sais donc pas comment modifier les $\omega_j$ pour j dans [1,N]. Je sais pas si je suis clair.
-
Pour résoudre ce problème de collision, je pensais à utiliser le théorème des moments qui, si j'ai bien compris, donnerait :$\sum_{j=1}^{N} I_j \dot{\theta}_j = \sum_{j=1}^{N} I_j \dot{\theta}'_j$
Seulement même dans le cas où c'est vrai, j'ai seulement une seule équation pour N inconnues.. -
Bonjour.
Je ne suis pas très fort en physique, mais je sais qu'il faut ajouter à ton équation celles qui décrivent les liaisons entre les boules du pendule. Tu as une seule équation parce que tu ne traites pas un pendule, mais une boule. Et il va aussi falloir tenir compte du temps de propagation des effets du choc ...Dans un premier temps, tu peux regarder comment se passe le choc pour deux boules avec une liaison rigide. Puis reprendre avec d'autres types de liaisons, toujours pour deux boules. Si tu n'arrives pas à traiter ces cas élémentaires, tu ne feras rien pour ton cas général.Cordialement.NB : Un forum de physique serait peut-être plus indiqué. Ton problème n'est pas d'abord mathématique.
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour!
Catégories
- 165.4K Toutes les catégories
- 63 Collège/Lycée
- 22.2K Algèbre
- 37.6K Analyse
- 6.3K Arithmétique
- 61 Catégories et structures
- 1.1K Combinatoire et Graphes
- 13 Sciences des données
- 5.1K Concours et Examens
- 23 CultureMath
- 51 Enseignement à distance
- 2.9K Fondements et Logique
- 10.8K Géométrie
- 84 Géométrie différentielle
- 1.1K Histoire des Mathématiques
- 79 Informatique théorique
- 3.9K LaTeX
- 39K Les-mathématiques
- 3.5K Livres, articles, revues, (...)
- 2.7K Logiciels pour les mathématiques
- 26 Mathématiques et finance
- 342 Mathématiques et Physique
- 5K Mathématiques et Société
- 3.3K Pédagogie, enseignement, orientation
- 10.1K Probabilités, théorie de la mesure
- 804 Shtam
- 4.2K Statistiques
- 3.8K Topologie
- 1.4K Vie du Forum et de ses membres