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

MathGroup Archive 1997

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

Search the Archive

Re: FindRoot

  • To: mathgroup at smc.vnet.net
  • Subject: [mg8812] Re: [mg8793] FindRoot
  • From: David Withoff <withoff>
  • Date: Fri, 26 Sep 1997 00:33:37 -0400
  • Sender: owner-wri-mathgroup at wolfram.com

> Hi!
> Mma can't find f (the frequency) for a value of yd, my HP48GX find it
> within 6 seconds! 

This is because you asked your calculator to do a different calculation
than you asked Mathematica to do.  The warning message in the following
calculation reflects the fact that the input is not a differentiable
function.

In[1]:= yd := (20*d*Re[Sqrt[(r + l*s)*s*c]])/Log[10]

In[2]:= s := f*I*2*Pi

In[3]:= r := (((f*2*Pi)^1.198*2.18)/10^9 + 0.276)*1000

In[4]:= l := (587 - (f*92.37)/10^6)/10^6

In[5]:= c = 50/10^9;

In[6]:= d=3.5;

In[7]:= FindRoot[yd == 71, {f, 300000, 30000, 1.1*10^6}]

FindRoot::frjc: 
   Could not symbolically find the Jacobian of 
    {-71 + 0.0170395 Re[Sqrt[I <<2>>]]}. Try giving two starting values for
     each variable.

                                                    6
Out[7]= FindRoot[yd == 71, {f, 300000, 30000, 1.1 10 }]

> How should I Solve this?

Try giving two starting values for the variable, as suggested
in the warning message.

In[8]:= FindRoot[yd == 71, {f, 30000, 1.1*10^6}]

Out[8]= {f -> 714877.}

This calculation finishes in a lot less than 6 seconds.

Dave Withoff
Wolfram Research



  • Prev by Date: Using AlgebraicRules
  • Next by Date: Re: FindRoot
  • Previous by thread: FindRoot
  • Next by thread: Re: FindRoot