MathGroup Archive 1999

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

Search the Archive

Re: FindRoot question (number of variables)

  • To: mathgroup at
  • Subject: [mg15761] Re: [mg15743] FindRoot question (number of variables)
  • From: BobHanlon at
  • Date: Sun, 7 Feb 1999 02:03:45 -0500 (EST)
  • Sender: owner-wri-mathgroup at

In a message dated 2/5/99 5:40:57 AM, D_Webb at writes:

>  This is a simplified example of I problem I have run into with
>FindRoot. Does anybody have any idea why it's doing what it is? And if
>so, how I can make it do what I want, or some other work around? Thanks
>for any info. Here's the example:
>define a function that takes one input, and outputs two results:
>r[x_] := {x, x^2}
>It does what's expected:
>Now, find a solution using FindRoot:
>FindRoot[ r[x] == {5, 25}, {x, 2}]
>returns an error (rather than the obvious answer of x->5):
>    "Function {{-3., -21.}} is not a length 1 list of numbers at {x} =
>It seems that FindRoot REQUIRES you to solve for as many variables as
>your function returns. Even though when entered seperatly, r[5] == {5,
>25} returns "true". Why? Any ideas? Or any ideas how to get around this
>"feature" of FindRoot? Thanks for any input.


r[x_] := {x, x^2};

FindRoot[r[x][[1]] == 5, {x,2}]


FindRoot[r[x][[2]] == 25, {x,2}]


s[x_, y_] := {x+y, x*y};

FindRoot[{s[x,y][[1]] == 11, s[x,y][[2]] == 30}, {x, 2}, {y,3}]


			s[x,y] == {11,30}]], {x,2},{y,3}]


Solve[r[x][[1]] == 5, x]


Solve[r[x][[2]] == 25, x]


Solve[{s[x,y][[1]] == 11, s[x,y][[2]] == 30}, 
	{x, y}]


			s[x,y] == {11,30}]], {x,y}]


Bob Hanlon

  • Prev by Date: Re: Integration of very simple partwise definded functions fails
  • Next by Date: Re: Surfacecoloring of a sphere
  • Previous by thread: Re: FindRoot question (number of variables)
  • Next by thread: Q: how to list vertices of the Geodesate[] of a polyhedron?