Re: How to treat this false singular point?
- To: mathgroup at smc.vnet.net
- Subject: [mg68457] Re: How to treat this false singular point?
- From: Peter Pein <petsie at dordos.net>
- Date: Sun, 6 Aug 2006 02:56:27 -0400 (EDT)
- References: <easkcp$g3j$1@smc.vnet.net> <eauv8o$15s$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Jean-Marc Gulliet schrieb:
> Use some *If* statements around each term for instance.
>
> In[1]:=
> f[x_] := If[x != 100, (x - 100)*Log[Abs[x - 100]], 0] +
> If[x != 200, (x - 200)*Log[Abs[x - 200]], 0] +
> If[x != 300, (x - 300)*Log[Abs[x - 300]], 0]
>
...
> HTH,
> Jean-Marc
>
Hello,
by mistake I used NSolve instead of FindRoot to get the x, where f[x]==1:
NSolve[f[x] == 1, x]
"The expression If[x != 100, (x - 100)*Log[Abs[x - 100]], 0] +
If[x != 200, (x - 200)*Log[Abs[x - 200]], 0] +
If[x != 300, (x - 300)*Log[Abs[x - 300]], 0]
involves unknowns in more than one argument, so inverse functions cannot be used. "Solve::dinv"
--> NSolve[If[x != 100, (x - 100)*Log[Abs[x - 100]], 0] + If[x != 200, (x - 200)*Log[Abs[x - 200]], 0] +
If[x != 300, (x - 300)*Log[Abs[x - 300]], 0] == 1, x]
The same happens for NSolve[g[x]==1,x], with g[x_]=PiecewiseExpand[f[x]]
Where is (are) the other unknown(s)?
Peter
P.S.: This is Mathematica 5.1 on Win2K SP4 (plus dozens of MS-Patches)