Correspondance entre cartes et équations différentielles Flux, stock, dérivée et fonction

, par  Bernard Vuilleumier , popularité : 1%

Un modèle Stella correspond en général à une équation différentielle. Un flux intègre numériquement la fonction qui le définit et le réservoir auquel il est associé donne le résultat de l’opération au cours du temps.

Équation du premier ordre : le mécanisme de base de Stella

En associant un flux à un réservoir y et en établissant un lien entre le réservoir et le flux, on peut définir une relation entre une fonction y(t) (le réservoir) et sa dérivée \dot y (t)=\frac{dy}{dt} (le flux). En écrivant par exemple flux=y on obtient un modèle qui correspond à l’équation différentielle :

\dot y (t)=c y(t)

c est une constante de proportionnalité entre le flux et le réservoir. En notation Mathematica, cette équation s’écrit :

N. B. La dérivée d’une fonction y(t) par rapport au temps se note habituellement \dot y (t) en physique. Dans Mathematica, la dérivée d’une fonction y, quelle que soit la variable indépendante (t, x, …) se note toujours y’ et l’égalité se traduit par deux signes « égal », l’usage d’un seul signe étant réservé à l’opération d’affectation.

Équation du deuxième ordre

L’équation du mouvement d’un objet accroché à un ressort par exemple, qui s’obtient à partir de la relation fondamentale de la dynamique \Sigma \vec F=m\vec a est du deuxième ordre. Elle s’écrit, si on néglige tout frottement :

\ddot y (t)=-\frac{k}{m} y(t)

k est la raideur du ressort et m la masse de l’objet. En notation Mathematica, cela donne :

Mathematica permet de résoudre cette équation et donne la solution sous forme d’une fonction :

Stella intègre numériquement cette équation à l’aide du modèle suivant :

dans lequel on aura par exemple posé :

k = 5
m = 0.2
a = -k/m*y
INIT v = 0
flux_v = v
INIT y = 0.1

et fournit les valeurs prises par la fonction y(t) au cours du temps :

N. B. L’intégration numérique peut donner lieu à des comportements aberrants si le pas et la méthode d’intégration ne sont pas convenablement choisis.

Conclusion

Résoudre une équation différentielle revient à trouver une fonction inconnue y(t). Une équation différentielle peut s’exprimer de différentes manières. Le logiciel Stella représente ce type d’équations à l’aide de « flux » reliés à des « réservoirs ». Dans un modèle comportant un flux relié à un réservoir, le flux est équivalent à la dérivée \dot y (t) de la fonction et le réservoir représente la fonction inconnue y(t). Mathematica est capable de trouver et d’exprimer la fonction inconnue y(t). Stella ne donne que les valeurs numériques prises par la fonction y(t) au cours du temps.