Résoudre une équation différentielle

Flash peut faire la résolution numérique d'une équation différentielle, chaque image correspondant à un pas du calcul. On peut utiliser le résultat "en temps réel" pour animer un objet.

L'animation représente la chute d'une bille dans un milieu exerçant une force de frottement proportionnelle à la vitesse.

Le curseur permet de modifier le coefficient de frottement, et le bouton permet une remise à zéro de l'animation.

L'équation différentielle du mouvement est du type x"+k*x' = g. La méthode numérique choisie est la méthode d'Euler. Cette méthode est criticable, mais très simple à mettre en oeuvre : le but est ici d'expliquer la démarche.

Ouvrir le fichier chute.fla

Une visite à la bibliothèque montre qu'elle contient un nouvel élément : le bouton.

La timeline présente 4 calques. Intéressons-nous au calque d'action (voir les commentaires) :

  • image 1 : initialisation des paramètres et du temps
  • image 2 : résolution d'un pas d'intégration
  • image 3 : bouclage sur l'image 2

Un appui sur le bouton provoque un retour sur l'image 1 (voir le script du bouton).

C'est extrèmement simple, et interactif, puisque la modification du paramètre est prise en compte aussitôt !

En utilisant la même démarche, il est très possible d'appliquer d'autres algorithmes d'intégration numérique.

retour au menu          suite : dessiner un graphique

avez-vous des commentaires ?