Mathematica propose la fonction Manipulate pour que l'utilisateur puisse changer les valeurs dans une expression ;
à chaque changement dans un contrôle, cette expression sera réévaluée. L'utilité principale de cette fonction par rapport à
Dynamic est qu'elle choisit automatiquement le type de contrôle à afficher.
In [1 ]:= Manipulate [Exp [x + y], {x, 0 , 10 }, {y, 0 , 10 }]
|
Il a fallu préciser l'expression à évaluer, ainsi que les valeurs qu'il faudra faire varier entre deux bornes. On peut également
préciser un pas :
In [1 ]:= Manipulate [Exp [x + y], {x, 0 , 10 , 1 }, {y, 0 , 10 , 1 }]
|
Ainsi, on ne pourra utiliser que les valeurs entières de x et y. Les valeurs n'étant plus stockées comme
des nombres en précision limitée, le calcul redeviendra symbolique.
On peut utiliser des expressions beaucoup plus compliquées (en fait, toutes les expressions) ; par exemple, pour résoudre l'équation de Colebrook-White :
In [1 ]:= Manipulate [
FindRoot [
1 / Sqrt [f] = = - 2 Log [10 ,
e/ (Rationalize@3 .71 * phi) + Rationalize@2 .51 / (R* Sqrt [f])] & &
U = = q/ (phi^ 2 * Pi ) & &
R = = (U* L)/ nu, {{f, 0 .01 }, {R, 12500 }, {U, 5 }}], {g, 5 , 10 }, {phi,
0 .001 , 1 }, {e, 0 .001 , 0 .01 }, {L, 1 , 10 }, {q, 0 .001 , 5 }, {nu,
0 .0000001 , 0 .001 }]
|
|