Re: FindRoot problem

*To*: mathgroup at smc.vnet.net*Subject*: [mg40045] Re: [mg40032] FindRoot problem*From*: Dr Bob <drbob at bigfoot.com>*Date*: Mon, 17 Mar 2003 03:33:51 -0500 (EST)*References*: <200303160748.CAA03198@smc.vnet.net>*Reply-to*: drbob at bigfoot.com*Sender*: owner-wri-mathgroup at wolfram.com

The error message is very specific. Mathematica can't calculate the Jacobian of If or Which. You may try using the Jacobian option to specify it. Bobby On Sun, 16 Mar 2003 02:48:07 -0500 (EST), Pigeon, Robert <Robert.Pigeon at drdc-rddc.gc.ca> 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 > > > -- majort at cox-internet.com Bobby R. Treat

**References**:**FindRoot problem***From:*"Pigeon, Robert" <Robert.Pigeon@drdc-rddc.gc.ca>