MathGroup Archive 1996

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

Search the Archive

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 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