Jump to content
  • Advertisement


This topic is now archived and is closed to further replies.


This topic is 6167 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

is anyone aware of an algorithm to compute logarithm other than the Tayler series method? thanx for any responses.

Share this post

Link to post
Share on other sites
Here's a little recursive algorithm due to John Napier (16th century).

//Globals defined outside of function for clarity
static double aMean = -1.0; //arithmetic mean
static double gMean = -1.0; //geometric mean
static double precision = 0.00001; //adjustable precision

n is the number whose log is sought
b1 and b2 are two boundary values where b1 < n < b2
l1 and l2 are the known logs of b1 and b2, respectively

double rLog(double n, double b1, double b2, double l1, double l2) {
if( abs(b1 - b2) > precision ) {
gMean = sqrt( b1 * b2 );
aMean = ( l1 + l2 ) / 2;
if( n <= gMean ) rLog(n, b1, gMean, l1, aMean);
else rLog(m, gMean, b2, aMean, l2);
return aMean;

Invoking, say, recLog(100, 10, 1000, 1, 3) gives 1.99999 or so. (Be wary of numberical errors)

Edited by - Graylien on June 28, 2001 9:59:41 PM

Share this post

Link to post
Share on other sites
thanx alot, graylien. that''s exactly what i was looking for.

To the vast majority of mankind, nothing is more agreeable than to escape the need for mental exertion... To most people, nothing is more troublesome than the effort of thinking.

Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!