|
|
Re: Root
Posted:
Jul 11, 1999 12:06 AM
|
|
I know that some very good algorithms exist for extracting roots by hand, but if you gave me a blank piece of paper and this task and did not give me the opportunity to search out one of those algorithms (the infamous, "You are stranded on a desert island and ..." scenario) then this is how I would approach it extracting square roots).
Let's assume that I am comfortable with the multiplication tables through the tens.
Given a number, say 1894, I want to find the number x that, when square, yields this number.
I know that this can be written as:
18*100 + 94
I also know that x can be written in the form
x = 10a+b
so that
x^2 = 100a^2 + 20ab + b^2
Equating the first terms, I know that "a" must equal the square root of the largest perfect square that is smaller than 18. So I know that a=4.
Using this, I now have:
x^2 = 1600 + 80b + b^2 = 1894 b^2 + 80b = 294
The largest that "b" can be is either sqrt(294) or 294/80. Since "b" is a single digit, the limit is going to be imposed by 294/80 in this case, which is between 3 and 4. So me upper limit is 3. Plugging this in, I get
294 - (9 + 240) = 45.
So I have a=4 and b=3 and (1894 - 43^2) = 45
Now I will play a slight twist on the game I played above:
I know the following from my prior work:
x^2=1894 43<x<45 1894 - 43^2 = 45 => 43^2 = 1849
(x-43)^2 = x^2 - 2(43)(x) + 43^2 (x-43)^2 = 1894 - 86x + 1849 (x-43)^2 = 3743 - 86x
x = [ 3743 - (x-43)^2 ] / 86
Now, I don't know what (x-43)^2 is, but I do know that 0<(x-43)<1, so it's square is even smaller. So ignoring it will have only a small impact.
x = 3743 / 86
I can carry this division out to as many decimal places as I want, although I know that there is an error associated with ignoring the (x-43)^2 term above. So I can't get too carried away. I know that the numerator is affected in the fifth sig fig and the denominator has no error in it, so I should get an answer to four or more sig figs with this step.
Doing this for four sig.figs. I get
x ~= 43.52
Another way I could have gotten to this point is to note that
x = 43 + y where 0<=y<1
x^2 = (43+y)^2 = 1849 + 86y + y^2 = 1894
Again, noting that y^2 is less than 1, we have
y = 45/86
We only pick up two sig. figs. in y, which is consistent with four sig. figs. in x.
Doing this division to two sig. figs. gives us
y = 0.52
which is what we would expect.
Now, is our estimate too big or too small. It is too big (ignoring the rounding that went on at the last sig. fig.) since our actual numerator was smaller than the one we used. Personally, I like working with positive values (less chance of stupid errors) so what I should have done was simply subtract one from the numerator and been sure to round down. If I go back and do that, I get.
y = 0.51
And, as expected, the second digit is pretty good and any third digit we might have calculated would have been junk.
We can keep on playing this same game, and each time we will probably pick up a couple of sig figs.
Our next step would be the following:
43.51^2 = (43^2) + (86*0.51) + (0.51)^2 = 1849 + 43.86 + 0.2601 = 1893.1201
x^2 = (43.51+y)^2 = 1893.1201 + 87.02y + y^2 = 1894
We know that 0.00 <= y <= 0.01, so we will take y at it's maximum value and subtract off 0.0001 to ensure that we stay below the actual value.
87.02y = 1893.9999 - 1893.1201 = 0.8798
y = 0.8798 / 87.02
On this one I am allowed four sig figs, so I'll take them.
y = 0.01011
I now have
x~= 43.52011
Prasanth Kumar wrote in message ... >There might be more efficient ways but one method is the itterative >application of "newton's method". Newton's method attempts to find >the zeros of a function with an initial guess getting closer with each >itteration. Thus you would use this on a function f(x)=x^2-n >where n is the number you want to find the root to. Obviously you >would need to do math at the desired precision level (eg. 80 decimal >points) to do it accurately. > >User <pohanl@aol.com> wrote in message >news://k4Ph3.7360$Le1.136634@news2.randori.com... >> >> Does anyone know how to go about doing a square root or cube root >> calculation? >> >> If I gave you a number (no calculators), and a blank piece of paper, >> can you describe the steps one by one how you go about calculating >> the cube or square root? (or any root for that matter). >> >> I also assume I can say... I want it to a precision of 80 decimal points. >> You would go about using your method and you would come up with >> 80 decimal points (or less if it rounds off perfectly). >> >> Where can I find procedures on doing this? Is there a very simply >> way to do this? using basic operators (no log sin cos, etc). >> >> Thank you. >> >> Thank you. >> >> >> > >
|
|