An old logrithm algorithm « Next Oldest | Next Newest »

 ▼ Palmer O. Hanson, Jr. Posting Freak Posts: 901 Threads: 113 Joined: Jun 2007 12-26-2008, 10:41 AM While reviewing some old slide rule manuals as a part of participation in some recent threads I also looked at some old calculator manuals. I found the following material on pages 33 and 34 of the manual for the Texas Instruments SR-10: Quote: Logarithmic and Exponential Functions The value of log a can be determined to within +/-0.04% using the square root key. If you repeatedly take the square root of any number, the value will approach unity with a remainder that is proportional to the logarithm of the original number. Because of the eight digit acuracy of the SR-10, the optimum number of times to take the square root is eleven. For 4 <= a <= 40, the manual prescribes 1. Enter the value of a. 2. Take the square root eleven times. 3. Subtract 1. 4. Multiply by 889. The manual gives an example for the common logarithm of 12: 1. Enter 12 2. Take the square root eleven times and see 1.001214 3. Subtract 1 and see 0.001214 4. Multiply by 889 and see 1.079246 which is within 0.006% 0f the correct value of 1.079181. I haven't been able to locate a reference describing this technique. I thought that I should be able to get there with the use of infinite series but I haven't been able to push that through. Can anyone help? Palmer ▼ Thomas Klemm Senior Member Posts: 735 Threads: 34 Joined: May 2007 12-26-2008, 12:23 PM Use the definition of Set n = 2^11 = 2048 and solve for x to find an approximation of LN(y): x = 2048 * (y^(1/2048) - 1). Use LOG(y) = LN(y)/LN(10). Thus instead of multiplying with 2048 use 2048/LN(10) ~ 889. Best regards Thomas Klemm Namir Posting Freak Posts: 2,247 Threads: 200 Joined: Jun 2005 12-26-2008, 12:25 PM Palmer, You post remind me of an old algorithm I cam acroos that can be used to calculate natural log and exponential (if you reverse the operations) values. e^x = (1 + x/n)^n .. where n is large enough (2048 and higher) The reverse would be: ln(x) = n*(x^(1/n) - 1) where n is large enough (2048 and higher) The power 1/2048 is equivalent to taking the square root 11 times. In the late 70s, I used to approximate e^x and ln(x) with simple calculators that had the square root. Namir Edited: 26 Dec 2008, 12:35 p.m. ▼ Namir Posting Freak Posts: 2,247 Threads: 200 Joined: Jun 2005 12-28-2008, 10:33 AM As the equations in my post, and those of other folks, show, the number 2048 (2 to the power of 11) used to calculate the exponential or logarithm can be replaced by even higher powers of 2. I checked the errors and found that the error has the following form: error = A e(-B N) (for 5 <= N <= 16) Where N is the power of 2 used, and A and B are constants that depend on the argument for exp(x) or for ln(x). Edited: 28 Dec 2008, 10:34 a.m. Gerson W. Barbosa Posting Freak Posts: 2,761 Threads: 100 Joined: Jul 2005 12-26-2008, 12:57 PM This comes from the limit definition of ln(x): ``` / 1/n \ ln(x) = lim n | x - 1 | n->oo \ / ``` http://kr.cs.ait.ac.th/~radok/math/mat/chap9.htm Scroll down to section 9.216 It appears n=2048 (2^11) is close enough to infinity to grant that level of accuracy in the given range. And 2048/889 (2.30371) is close enough to ln(10) (2.30258) to be used as a natural log to common log factor conversion. I hope this might explain the algorithm. Regards, Gerson. Edited: 26 Dec 2008, 5:22 p.m. Chuck Senior Member Posts: 320 Threads: 59 Joined: Dec 2006 12-26-2008, 04:35 PM A couple of other things of interest... Graph the equation 10^(889(x^(1/2048)-1))-x and see what happens when the 889 is changed to either 890 or 888. Also, if you write the equation as 10^(A(x^(1/2048)-1))-x, and solve for A for a particular x (ie x=40) you find that A=888.6343. Fun stuff for a snowy afternoon. CHUCK Palmer O. Hanson, Jr. Posting Freak Posts: 901 Threads: 113 Joined: Jun 2007 12-26-2008, 10:27 PM Thanks to all for the prompt responses. That's what I love about this forum. Palmer ▼ Namir Posting Freak Posts: 2,247 Threads: 200 Joined: Jun 2005 12-27-2008, 09:08 AM Palmer, You are so welcome. I enjoy sharing algorithms, because I can then implement them on a whole variety of machines and languages. I remember 30 years ago I can across the definition of the e^x using the limits. I used to chat with different engineers (mostly with simple calculators that had the square root) and showed them how to approximate ln(x) and exp(x). That seem to impress them. Namir PatrickS Junior Member Posts: 2 Threads: 0 Joined: Dec 2008 12-26-2008, 10:47 PM The Texas Instruments SR-10 was my first-ever calculator. My dad purchased it for me somewhere around 1974-75 for about \$100 (Canadian). Of course, I read the manual cover-to-cover and vividly remember reading about this nifty logarithm technique. I actually put it to use on several occasions, mostly in chem lab. While knowing this trick was like a secret-decoder ring in it's novelty, I was nevertheless jealous of my more affluent friends whose dad's bought them the incredible SR-52 (\$250) with it's one key log / trig capabilities. But that SR-10 was still waaayyy better than the one-to-two digit accuracy I was getting previously with my (metal) Stirling slide rule. Of course, even then I knew of the superiority of HP calculators, but the price tags of the then-current models (HP-45, 55 and 65) were far out of reach. It was only a year or so later that I was introduced to the techniques of calculus and learned how and why this multi-square root trick worked.

 Possibly Related Threads... Thread Author Replies Views Last Post Question about a "combinations" algorithm Namir 9 513 09-20-2012, 04:51 PM Last Post: Gilles Carpentier Linear Programming - Simplex Algorithm LarryLion 5 321 09-04-2012, 10:57 PM Last Post: David Hayden Algorithm for fitting a logistic curve? Tim Wessman 5 345 11-13-2011, 01:22 AM Last Post: Wes Loewer A fast and compact algorithm for the normal quantile Dieter 13 683 04-22-2011, 07:11 PM Last Post: Paul Dale The forensics algorithm for the 10s Palmer O. Hanson, Jr. 4 247 01-19-2010, 11:25 PM Last Post: Katie Wasserman Calculator Algorithm or Canon F-766S vs TI-89 Joerg Woerner 7 425 06-04-2008, 10:54 AM Last Post: Gunnar Degnbol CORDIC Trigonometric Algorithm on an HP17BII Charles 4 292 03-14-2008, 12:14 AM Last Post: Eric Smith HP-16C Encryption Algorithm John Williamson 3 249 01-19-2006, 05:45 AM Last Post: John Williamson New root-seeking algorithm Namir 7 437 12-10-2005, 10:39 PM Last Post: Namir Algorithm used to find Q and Q^-1 on HP32E Mike T. 9 581 11-25-2005, 08:40 AM Last Post: Mike T.

Forum Jump: