Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2008:12_12

Commit 2008-12-10

Modifs

Calcul du prédicteur du schéma alpha généralisé

  • Constat : on a remarqué avec Luc que les problèmes de rotation rigide étaient horriblement lents à converger, notamment les aubes tournantes, alors qu'il ne se passe rien du tout! On a d'abord pensé à un problème de vibration de l'aube, d'où le commit de Luc précédent. Mais il s'est avéré que le problème venait avec tous les problèmes de corps rigide. Après analyse, il est apparu que le problème venait du prédicteur des déplacements, vitesses et surtout accélération. Selon la formule de Newmark, le prédicteur de l'accélération au pas de temps n+1 est égal à zéro. Or, dans le cas de mouvement de corps rigide, il est plus malin de faire un prédicteur de type mouvement rectiligne uniformément accéléré. Le prédicteur s'écrit donc comme les formules classiques dudit mrua et le prédicteur de l'accélération est donc l'accélération au pas de temps n.
  • Après le lançage rempli d'espoir de gain CPU d'une première batterie, il est apparu, pour résumer, des gains pour les problèmes comportant des mouvement de corps rigide (barre de Taylor, stage, aube…). Mais on a également une perte énorme pour tous les problèmes de contact. En effet, quand un noeud rentre en contact, si on lui donne une accélération nulle, le choc est “moins fort”, tandis qu'en lui donnant l'accélération du pas de temps précédent, le choc est beaucoup “trop fort” (la baffe est plus forte comme dit Luc).
  • Vu ces deux conclusions, on a décidé de garder les deux méthodes de prédiction (Newmark et MRUA) et de rajouter une commande de choix entre ces deux méthodes:
mim.setPredictorComputationMethod(EXTRAPOLATION_NEWMARK)

pour l'utilisation de la méthode de prédiction classique par les formules de Newmark.

mim.setPredictorComputationMethod(EXTRAPOLATION_MRUA)

pour l'utilisation de la méthode de prédiction par un MRUA.

  • J'ai parcouru le fichier CPU sur mon PC pour voir où c'était intéressant et j'ai donc utilisé la nouvelle méthode là où j'observais un gain CPU non négligeable, en gros, dans les barres de Taylor et les problèmes d'aube tournantes.
  • Doc qui va avec.

Cas-tests

  • Nettoyage divers et vériés de cas-tests, notamment des appels à VizWin en début de cas test qui ouvrent une fenêtre, mais qui ne tracent rien! (merci PowerGrep)
  • Ajout d'extracteurs

Projet

Fichiers ajoutés/supprimés



Pierre-Paul Jeunechamps 2008/12/12 10:57

commit/2008/12_12.txt · Last modified: 2016/03/30 15:23 (external edit)