|
[Date Index]
[Thread Index]
[Author Index]
Re: Abs[x] function
- To: mathgroup at smc.vnet.net
- Subject: [mg87846] Re: [mg87816] Abs[x] function
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Fri, 18 Apr 2008 07:10:38 -0400 (EDT)
- References: <200804180637.CAA12423@smc.vnet.net>
On 18 Apr 2008, at 15:37, Vladislav wrote:
> Who can explain the behavior. THe derivative Abs[x] at x=.5 is well
> defined and is equal to 1.
>
> In[1]:= D[Abs[x], x]
>
> Out[1]=
> \!\(\*SuperscriptBox["Abs", "\[Prime]",
> MultilineFunction->None]\)[x]
>
> In[2]:= % /. x -> .5
>
> Out[2]=
> \!\(\*SuperscriptBox["Abs", "\[Prime]",
> MultilineFunction->None]\)[0.5]
>
First of all your statement is simply not true. Mathematica's symbolic
D works in the complex plane and in the complex plane the derivative
of Abs at 1 is not defined:
Limit[(Abs[1 + t*I] - Abs[1])/t, t -> 0]
0
while
I Limit[(Abs[1 + t ] - Abs[1])/t, t -> 0]
1
The symbolic derivative D automatically applies the chain rule, which
explains why it gives you the answer you got (it returns Abs'[1]
because it does not know what it should be). If you want to
differentiate in the real sense, a non-analytic function at a point
where it has a derivative you have several choices. One is to use
numerical differentiation:
f[x_?NumericQ] := Abs[x]
f'[0.5]
1.
Another is to use Refine before you differentiate:
D[Refine[Abs[x], x > 0], x] /. x -> 0.5
1
another way is the above approach using limits. There are still other
ways but this should be enough.
Andrzej Kozlowski
Prev by Date:
Re: heat equation through different media/problem with constant flux
Next by Date:
Re: Re: A Problem with Simplify
Previous by thread:
Abs[x] function
Next by thread:
Re: Abs[x] function
|