RE: Re: Solving simultaneous eqns
- To: mathgroup at smc.vnet.net
- Subject: [mg14358] RE: [mg14287] Re: Solving simultaneous eqns
- From: "Ersek, Ted R" <ErsekTR at navair.navy.mil>
- Date: Thu, 15 Oct 1998 00:28:59 -0400
- Sender: owner-wri-mathgroup at wolfram.com
Yeoung-Sang Yun wrote:
>
> I want to know how to solve the following simulaneous equations in
> Mathematica:
>
> x=x^1.2/(2*x^3+y^0.7+4*z^2.5)
> y=y^0.7/(2*x^0.6+y^2+z^2.2)
> z=0.9*z^1.5/(x^0.7+2*y^0.2+z^1.1)
>
Bill Bertram replied with:
>
>Use:
>
>FindRoot[{x == x^1.2/(2*x^3+y^0.7+4*z^2.5),
> y == y^0.7/(2*x^0.6+y^2+z^2.2),
> z == 0.9*z^1.5/(x^0.7+2*y^0.2+z^1.1)},
> {x,1},{y,1},{z,1}]
>
>to get:
>
>{x -> 0.2071155206958545 - 4.456053142803247*^-10*I,
> y -> 0.6156594604688913 + 1.237663943046694*^-9*I,
> z -> 2.09226461646654*^-15 + 2.130084871188269*^-16*I}
>
>
It looks like this is converging on a solution where z=0, Im[x]=0,
Im[y]=0.
So I set z=0 in the original equations. Then I am left with only the
first two equations since the third equation is reduced to (0==0).
Next I convert the machine numbers to rationals and give the two
equations to FindRoot. The approximate root returned is very close to
an exact root.
Cheers,
Ted
___________________________
In[1]:=
(soln= FindRoot[{
x==x^(12/10)/(2*x^3+y^(7/10)),
y==y^(7/10)/(2*x^(6/10)+y^2)
},{x,0.207},{y,0.616},
AccuracyGoal->Infinity, WorkingPrecision->17])//InputForm
Out[1]//InputForm=
{x -> 0.2071155092220912707736701893`17,
y -> 0.6156595017877353994690851319`17}
In[6]:=
test=eqs/.Equal[lhs_,rhs_]:>lhs-rhs; test/.soln//InputForm
Out[7]//InputForm=
{-2.775557561562891*^-17, 0.}