MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Manipulate (from Wolfram Demonstrations)

  • To: mathgroup at smc.vnet.net
  • Subject: [mg76838] Re: [mg76774] Manipulate (from Wolfram Demonstrations)
  • From: DrMajorBob <drmajorbob at bigfoot.com>
  • Date: Mon, 28 May 2007 01:04:54 -0400 (EDT)
  • References: <22023933.1180258032363.JavaMail.root@m35>
  • Reply-to: drmajorbob at bigfoot.com

p is not a function; it's an expression. The difference is similar to that  
between a function f and a value f[x]. f[x] or f[2] is a result, not the
function itself. If x is undefined, though, f[x] is the RHS or definition  
of the function.

Here's a version WITH functions for p and pp.

Clear[p, pp]
Manipulate[Block[{p}, p[x_] = a x^3 + b x^2 + c x;
   Block[{pp}, pp[x_] = D[p[x], x];
    Plot[{p[x]}, {x, -2, 2}, Ticks -> None, PlotRange -> All,
     Epilog -> ({Orange, PointSize[.02], Point[{xi, p[xi]}],
         Thickness[.005],
         Line[{{-2, p[xi] + pp[xi] (-2 - xi)}, {xi, p[xi]}, {2,
            p[xi] + pp[xi] (2 - xi)}}]} /. x -> xi),
     PlotRange -> All]]], {{xi, 0, Subscript[x, 0]}, -2,
   2}, Delimiter, {{a, -2, "a"}, -2, 2}, {{b, -2, "b"}, -2,
   2}, {{c, -2, "c"}, -2, 2}, ControllerLinking -> True]

Notice that xi, second argument to Manipulate, is the value of a slider 
(labeled x0). The Epilog is computed in terms of x, but then x -> xi.  
Hence the x0 slider affects only the orange tangent line. The a, b, and c  
sliders affect the curve AND the tangent line.

Bobby

On Sun, 27 May 2007 03:53:37 -0500, Bruce Colletti <vze269bv at verizon.net>  
wrote:

> Re Mathematica 6.0 under WinXP.
>
> The code below (from Wolfram Demonstrations site) plots a tangent at the  
> point set by the slider.
>
> Point[{xi,p}] baffles me:  Point requires two numbers, but p is a 
> function...I don't see how it evaluates to a number AT THIS location in 
> the Manipulate statement.
>
> What is the mechanism that makes p evaluate to a number?  Is it somehow 
> referring to Plot's {x,-2,2} ?
>
> Thankx.
>
> Bruce
>
> Manipulate[
>  With[{p = a x^3 + b x^2 + c x, dx = .8},
>   With[{pp = D[p, x]},
>    Plot[p, {x, -2, 2}, Ticks -> None, PlotRange -> All,
>     Epilog -> ({Orange, PointSize[.02], Point[{xi, p}],
>         Thickness[.005],
>         Line[{{xi - dx, p - dx pp}, {xi + dx, p + dx pp}}]} /.
>        x -> xi)]]], {{xi, 0, Subscript[x, 0]}, -2,
>   2}, Delimiter, {{a, -2, "a"}, -2, 2}, {{b, -2, "b"}, -2,
>   2}, {{c, -2, "c"}, -2, 2}, ControllerLinking -> True]
>
>



-- =

DrMajorBob at bigfoot.com


  • Prev by Date: the hard way, the easy way and the accepted way...
  • Next by Date: Re: Re: Re: What to do in v. 6 in place of
  • Previous by thread: Re: Re: Manipulate (from Wolfram Demonstrations)
  • Next by thread: Re: Manipulate (from Wolfram Demonstrations)