J'ai lu le livre Computer Simulation of Liquids d'Allen et Tildesley. À partir de la page 71, les auteurs discutent des divers algorithmes utilisés pour intégrer les équations de mouvement de Newton dans les simulations de dynamique moléculaire (MD). À partir de la page 78, les auteurs discutent de l'algorithme de Verlet, qui est peut-être l'algorithme canonique d'intégration dans MD. Ils déclarent:
La méthode d'intégration des équations du mouvement la plus utilisée est peut-être celle initialement adoptée par Verlet (1967) et attribuée à Stormer (Gear 1971). Cette méthode est une solution directe de l'équation du second ordre . La méthode est basée sur les positions r ( t ) , les accélérations a ( t ) et les positions r ( t - δ t ) de l'étape précédente. L'équation pour faire avancer les positions se lit comme suit:
Il y a plusieurs points à noter à propos de l'équation (3.14). On verra que les vitesses n'apparaissent pas du tout. Ils ont été éliminés par addition des équations obtenues par expansion de Taylor sur :
Plus tard (à la page 80), les auteurs déclarent:
Contre l'algorithme de Verlet, ... la forme de l'algorithme peut inutilement introduire une certaine imprécision numérique. Cela vient du fait que, dans l'équation (3.14), un petit terme ( ) s'ajoute à une différence de grands termes ( O ( δ t 0 ) ), afin de générer la trajectoire.
Je suppose que le "petit terme" est , et la "différence des grands termes" est 2 r ( t ) - r ( t - δ t ) .
Ma question est la suivante: pourquoi l'imprécision numérique résulte-t-elle de l'ajout d'un petit terme à une différence de grands termes?
Je m'intéresse à une raison conceptuelle plutôt basique, car je ne connais pas du tout les détails de l'arithmétique à virgule flottante. Connaissez-vous également des références de type «aperçu» (livres, articles ou sites Web) qui pourraient me présenter des idées de base de l'arithmétique à virgule flottante liées à cette question? Merci pour votre temps.