Re: Problem with conditional definitions

*To*: mathgroup at smc.vnet.net*Subject*: [mg19523] Re: [mg19464] Problem with conditional definitions*From*: David Withoff <withoff at wolfram.com>*Date*: Sun, 29 Aug 1999 03:00:41 -0400*Sender*: owner-wri-mathgroup at wolfram.com

> I have recently uncovered a problem with conditional definitions of > functions. The following is a simple example > > Remove[f] > > f[x_ /; x <= 0] := x^2 > f[x_ /; 0 < x < 1] := x^3 > f[x_ /; x >= 1] := x^4 > > {f[1.], f'[1.],f''[1.]} > > {1.,3.54208,18.8746} > > Clearly incorrect. Or > > {f[1.1],f'[1.1],f''[1.1]} > > {1.4641, 5.28974, 8.77428} > Correct: {1.4641, 5.324, 14.52} > > So it is not that the function was evaluated at a boundary. > > Also, if I use exact arguments: > > {f[1],f'[1],f''[1]} > > {1,f'[1],f''[1]} > > None of the function definitions lead to the answers I got. Did I miss > something? > -- > > Kevin J. McCann > Johns Hopkins University APL See http://support.wolfram.com/Kernel/Symbols/System/Derivative.html for notes about the limitations of automatic numerical differentiation. Use ND (defined in the standard NumericalMath`NLimit` package to compute derivatives of functions with sharp features. Dave Withoff Wolfram Research