Dynamic is not working properly

118 Views Asked by At

I'm having some troubles with the Dynamic command in Mathematica, the next code shows an interactive graphic of the function f(x) = 1 - x^2. The graphic's title also shows the current area under the curve (definite integral) which is modified using the slider.

 Manipulate[Show[Plot[1 - x^2, {x, 0, 1}, PlotLabel -> Integrate[1 - x^2, {x, 0, Limite - 0.000000000001}]],   
 Plot[-x^2 + 1, {x, 0, Limite}, PlotRange -> {0, 1}, Filling -> Axis] ], {Limite, 0.000000000001, 1}, LocalizeVariables -> False]

I would like to show the current area using this command:

Integrate[1 - x^2, {x, 0, Dynamic[Limite]}]

but the result is not what i expected. Mathematica evaluates this like 0.529 - (0.529)^3 / 3 which is correct but i don't understand why it displays an expression instead of a single number. The //FullSimplify and//N commands just don't solve the problem.

Is there a better way to obtain the result?

Am I using the Dynamic command correctly?

Thanks!

1

There are 1 best solutions below

0
ragfield On BEST ANSWER

With your example the Integrate command is performed once with a symbolic upper limit. When the value of that upper limit changes the integral is not recomputed. You will get your desired result if you move the Dynamic[] wrapper from the iterator specification and wrap it around the Integrate command, which will cause the integral to be recomputed whenever Limite changes.

Dynamic[Integrate[1 - x^2, {x, 0, Limite}]]