       Re: FindRoot problem

• To: mathgroup at smc.vnet.net
• Subject: [mg40073] Re: FindRoot problem
• From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
• Date: Tue, 18 Mar 2003 05:50:47 -0500 (EST)
• Organization: Universitaet Leipzig
• References: <b51ac2\$34o\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Hi,

can yo tell me what's the derivative of

f[x]=Sec[x] - 0.0018167 (Sec[x] - 1) - 0.002875 (Sec[x] - 1)^2 -
0.000808 (Sec[x] - 1)^3  for x>=0 and x <=1.54

at x==0 ? or at x==2 ? Mathematica can't and so it can't use
the Newton method to find the solution.
To force FindRoot[] to use the secand method you have
to give an interval that brackets the root but you
can also not give such a interval. So you get an
error message.

Regards
Jens

"Pigeon, Robert" wrote:
>
> Good day,
>         I have a problem with FindRoot that I do not understand, so I am
> asking for help!  I have a function defined as a Module.  I use FindRoot to
> find a root when the function is given a value.  Everything works fine
> except when I put a condition to my function, when I do I get an error
> message.  Here what I try to do:
>
> f[x_]:= Module[{}, Sec[x] - 0.0018167 (Sec[x]-1) - 0.002875 (Sec[x]-1)^2 -
> 0.000808 (Sec[x]-1)^3 ];
> f::usage="explanation of f";
>
> If I do
> FindRoot[f[x]==10,{x,1.4}]
> I get
> {x->1.53501}
>  All that is correct.
>
> But now if I do
> f[x_ /; x>= 0 && x<= 1.54]:= same as above
> and I try to find the root the same way, I get an error message
> FindRoot[f[x]==10,{x,1.4}]
> I get
> FindRoot::frjc: Could not symbolically find the Jacobian of {f[x]-10.  Try
> giving two starting values for each variable.
>
> I tried putting my conditions inside the Module, after the Module.  I tried
> to use Which, If.  But, as soon as I put a condition, I get the same error.
>
> Any idea ???
>
> Thanks,
>
> Robert

```

• Prev by Date: Re: How to handle powers in c-code generation?
• Next by Date: Plot3d question
• Previous by thread: RE: FindRoot problem
• Next by thread: Odd memory behavior, and uncontrollable memory growth