       Re: More on functions & derivatives

• To: mathgroup at smc.vnet.net
• Subject: [mg3510] Re: [mg3470] More on functions & derivatives
• From: Allan Hayes <hay at haystack.demon.co.uk>
• Date: Mon, 18 Mar 1996 00:59:41 -0500
• Sender: owner-wri-mathgroup at wolfram.com

```rich_klopp at qm.sri.com (Richard W. Klopp)
>Subject: [mg3470] More on functions & derivatives
Asks why the following difference arises

f[x_] := x^2
(*1*) Plot[D[f[x],x],{x,-2,2}]

General::ivar: -2. is not a valid variable.
General::ivar: -2. is not a valid variable.
Plot::plnr:
CompiledFunction[{x}, <<1>>, -C<<9>>de-][x]
is not a machine-size real number at x = -2.....

but

(*2*)Plot[f'[x],{x,-2,2}]
works OK.
*******

Richard:
Plot evaluates in its own way. To start with it has the attribute
HoldAll.

Plot[expr, {x,-2,2}] creates sampling numbers, say -2,-2.1, ...
then tries to evaluate expr with x = -2, then expr with x = -2.1,
...

In (*1*) it tries to evaluate D[f[x],x]  with x = -2
The steps are  D[f[x],x] -> D[f[-2],-2] - - > D[4,2] -> failure and
message.

In (*2*) it tries to evaluate Derivative[f][x] with x = -2.
The steps are
Derivative[f][x] -> 2#&[x] -> 2#& -> 2 2 -> 4  etc.

You can see the patterns without needing Plot. Try
f[x_] := x^2; x = 2;

TracePrint[D[f[x],x]]
TracePrint[f'[x]]

Allan Hayes
hay at haystack.demon.co.uk

==== [MESSAGE SEPARATOR] ====

```

• Prev by Date: .m vs .ma Packages
• Next by Date: Re: Printing/TeX
• Previous by thread: More on functions & derivatives
• Next by thread: Re: More on functions & derivatives