Google Answers Logo
View Question
 
Q: Math equation ( Answered 5 out of 5 stars,   2 Comments )
Question  
Subject: Math equation
Category: Science > Math
Asked by: alan3163-ga
List Price: $12.00
Posted: 26 Oct 2003 23:44 PST
Expires: 25 Nov 2003 23:44 PST
Question ID: 270001
I have the following equation:  y = a - (a^5 / (40(RL)^2))

I need to reverse the calculation to determine 'a' when 'y', 'R' and 'L'
are known. I need help in finding 'a' or information on how to do it
myself.

Request for Question Clarification by elmarto-ga on 27 Oct 2003 10:38 PST
Hi alan!
Unfortunately, there is no analytical expression for 'a' from the
equation you provide, at least not that I know of. The equation:

y = a - (a^5 / (40(RL)^2))

is a fifth degree polynomial; therefore, there are 5 values for 'a'
that solve this equation, some of which may be imaginary or complex,
but I've never heard of the analytical form of these solutions
(unlike, for example, the roots of a second degree polynomials). A
common way to solve these high-degree polynomials is through numerical
methods, which require the use of a computer (or pencil, paper, and a
LOT of spare time :-) ).

If you have some programming skills, I can show you an algorithm that
will find the non-complex root/s of your equation. Alternatively, if
you know the values of R L and y, and you only care about the
solution/s for a, you can tell me these values and I'll run the
algorithm myself and report the result.

If any of these alternatives is accpetable, please let me know and
I'll answer the question; otherwise just leave this question open for
another Researcher.

Best wishes!
elmarto

Clarification of Question by alan3163-ga on 27 Oct 2003 16:41 PST
Thanks elmarto for getting on to it.

Maybe the algorithm would be the best answer as the R, L and y values
will be changing for my intended use.

Thanks,
Alan
Answer  
Subject: Re: Math equation
Answered By: elmarto-ga on 28 Oct 2003 08:15 PST
Rated:5 out of 5 stars
 
Hi again alan!
The equation can be first rewritten as

-(a^5 / (40(RL)^2)) + a - y = 0

so the problem is basically one of finding the roots of the polynomial
of the left-hand side of the equation.

An algorithm that can be used to find the roots (if they exist) of
virtually  any non-linear equation is the "Bisection" Algorithm. The
idea of the algorithm (which is very simple) is the following: start
defining an interval which you know contains a root (but not more than
one root), then reduce the size of the interval succesively until you
have an arbitrarily small one that contains the root; and that's the
solution.

For example, I set 40*(RL)^2 = 5, and y = 2. If you plot the
polynomial with this parameters, you will see that there is a root
somewhere betwen -3 and -1. So let's take [-3,-1] as the initial
interval. Now find the middle point of the interval (-2). Is the root
in [-3,-2] or in [-2,-1]?. If it is in [-3,-2], let that be the "new"
interval; otherwise let [-2,-1] be the "new" interval. Now take the
middle point of the "new" interval and repeat this process; until the
interval is as small as you want, or until the middle point of an
interval is as close to being a root as you want.

Let's define

f(a) = a - (a^5 / (40(RL)^2)) - y

so we want to find the roots of the nonlinear function f. Let's also
define "tol" to be the precision you require (0.001, 0.000001,
whatever). The steps of the algorithm are the following:

1) Define an arbitrary interval, which should contain EXACTLY one
root. Let's call it [xlow,xhigh].
2) Find the middle point of the interval: xmiddle=(xlow+xhigh)/2
3) If f(xlow)*f(xmiddle) < 0, then set xhigh to be xmiddle
   If f(xmiddle)*f(xhigh) < 0, then set xlow to be xmiddle
4) Repeat 2-3 until |f(xmiddle)| < tol

The condition f(xlow)*f(xmiddle)<0 implies that the root is between
xlow and xmiddle; the same goes for the other condition. The || means
"absolute value of". Using the values I mentioned before for the
parameters R, L and y, I got that the only real root is at -1.802.

You can watch a Java applet that shows how this algorith works at the
following addres:

Bisection Algorithm
http://www.apropos-logic.com/nc/BisectionAlgorithm.html

Also, you can find further details regarding the algorithm in the
following page, along with Matlab and Maple codes that implement it.

Nonlinear probs and Intermediate Value
http://www.krellinst.org/UCES/archive/classes/CNA/dir2.1/uces2.1.html#2.1.4a


Google search strategy
bisection algorithm
://www.google.com.ar/search?hl=es&lr=&ie=UTF-8&oe=UTF-8&q=bisection+algorithm&spell=1


I hope this helps! If you have any doubt regarding my answer, please
request a clarification before rating it. Otherwise, I await your
rating and final comments.

Best wishes!
elmarto
alan3163-ga rated this answer:5 out of 5 stars and gave an additional tip of: $5.00
Hi elmarto,

Thank you for your insight into finding a solution, it's a direction I
hadn't considered before. I see the the heart of the bisection
calculation is similar to a binary search so I'm comfortable with
that. I believe it will be helpfull. Great answer!  :)

Thanks,
Alan

Comments  
Subject: Re: Math equation
From: elmarto-ga on 29 Oct 2003 05:19 PST
 
Thank you for the very nice comment and the generous tip!
Subject: Re: Math equation
From: mclean48-ga on 21 Nov 2003 14:53 PST
 
there are much quicker algorithms that you can use to converge to a
solution faster(such as gauss-siedel method or newton-raphson
method)...the newton-raphson method will generally converge faster
then the gauss-siedel method(will gain about 2 orders of magnidude(ie
2 decimal places) for each iteration).

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy