Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2003
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2003

[Date Index] [Thread Index] [Author Index]

Search the Archive

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>
  • Reply-to: kuska at informatik.uni-leipzig.de
  • 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