对数是怎么被发明的?

admin 74 0

先提一个问题:

10,000*1,000等于多少?

如果不是太蠢的话(XD),我相信大家都不会这样算:

计算太阳质量的公式过程_太阳的质量如何计算公式图解_图解公式太阳计算质量是多少

简单地数一下0的个数,两个数字10000, 1000分别是4个0和3个0。所以答案就是一个拥有4+3=7个零的一个数,即10,000,000。

在这样的简化计算过程中,我们实际上就在不知不觉中采用了对数计算方法。

最初发明对数计算方法的人,就是想到了可以创造出一种新的计算乘法和除法的方式,将它们转换成加法和减法:

\log(ab) = \log(a) + \log(b)

\log(\frac{a}{b})=\log(a)-\log(b)

就这两个等式,给数学家们省下了多少时间和生命!

我们举个使用对数公式和对数表简化计算的例子:

假设 x=567.89×3141.59 ,

两边同时取以10为底的对数,得到:

\begin{aligned} &&\log(x)=&\log(567.89×3141.59)& \\ & &= & \log(567.89)+\log(3141.59)& \\ & &=&\log(10^2×5.6789)+\log(10^3×3.14159)& \\ & &=&2+\log(5.6789)+3+\log(3.14159)& \\ & &=&5+\log(5.6789)+\log(3.14159)& \end{aligned}

以四位对数表为例,对数表提供 \log 1.0000 至 \log 9.9999 的值,

查表可得 \log(5.6789) = 0.7543 和 \log(3.14159) = 0.4971 。

所以\log(x) = 5+0.7543+0.4971 = 6.2514 ,两边取指数得x = 10^{6.2514} = 10^6 \times 10^{0.2514} 。

根据对数表反查可得10^{0.2514} = 1.7840

所以用对数表计算可得 x = 1784000,相比于直接计算567.89×3141.59 = 1784077.5451 ,误差约为0.004%。

更一般地,对两个任意大数乘积 x_1 x_2,令 x_1 = a_1 * 10^{n_1}, x_2 = a_2 * 10^{n_2}, 1\leq a_1, a_2 \leq 10,有

\log(x_1 x_2) = \log(10^{n_1}a_1 \times 10^{n_2}a_2 ) =n_1+ n_2 + \log(a_1) + \log(a_2)

将 a_1,a_2 的值四舍五入到最近的四位小数,查对数表\log(a_1),\log(a_2) 可得 \log(x_1x_2) ,两边取指数有x_1x_2 = 10^{n_1+n_2+ \log(a_1) + log(a_2)} ,将指数部分拆分为整数和 [0,1) 的小数部分,再使用反查表求小数部分的指数函数值,即可得到 x_1x_2 的值。

整个计算过程中,我们只查两次对数表,进行一次加法运算,再反查一次对数表,就能得到两个大数乘积的值,这就可以大幅度简化大数的乘除法运算,提高运算速度。

再来个天文学领域计算的例子,有人说上面的例子太简单(XD),那我们这次用真的数据:

假设地球以圆形轨道绕太阳运动,根据以下已知数据,计算太阳的质量:

根据万有引力定律和牛顿运动定律可知:

M = \frac{4\pi^2R^3}{GT^2}

不用计算器,使用对数表只要做加法、减法和简单的乘法就能求出这个表达式,所有的对数值都可以由查表得到。当时的天文学家是这样计算的:

\begin {array} {r@{{}={}}r} {{}{}} \ & & \log(2\pi) &=& 0.7982 \\ & \log(4\pi^2) &=2\log(2\pi) & = & 1.5964 \\ \\ & & \log(G) &= & - 11 + 0.8242 & \\ & & \log(T) &= & 7 + 0.4991 & \\ &+ & \log(T) &= & 7 + 0.4991 & \\ \hline & & \log(GT^2)& = & 4.8224 \\ \\ \\ & & \log(R)& = & 11 + 0.1750 \\ &\times & & & 3 & \\ \hline & & \log(R^3) & = & 33.5250 & \\ & + &\log(4\pi^2) & = & 1.5964 \\ &- & \log(GT^2) & = & 4.8224 & \\ \hline & & \log(M) & = &30.2990 & \\ \\ & & M & = & 10^{0.2990} \times 10 ^ {30} \\ & & & = & 1.991 \times 10^{30} \\ \end {array}

如果按照传统方法计算,需要7个大数乘法竖式和1个除法竖式。这种算法只要一个「对数竖式」,就能取代所有的大数乘法和除法,通过简单的加减大幅度简化了运算过程。

计算所得结果为:太阳质量是 1.991 \times 10^{30} kg 。查有关资料可知,准确值为 (1.98855 \pm 0.00025) \times 10^{30} kg ,所以上述计算的相对误差为0.09\% 。

由此看出,通过对数表进行大数计算,得到的是有误差的数,不是真值,除非是那种数零就可以计算的大数。但对于许多工程计算、甚至科学计算来说,这种精度已经足够。

发明对数计算,都是因为没有计算器可用给逼出来的。

17世纪初,在工程实践、天文观察等行业和科学研究领域中,人们开始遇到越来越多的大数字,这些大数字还需要通过复杂的乘除运算才能拿来用,所以迫切的需要一种提高计算效率的方法,于是对数和对数表就这样应时而生了。通过上面的对数公式,很容易地就把乘除法转换成了加减法,从此就不用列乘法竖式和除法竖式了。

对数有独一无二的功能:化乘除为加减,化乘方开方为乘除,将高级运算降为次级运算。当时有一种说法:对数的发明让天文学家的寿命增加了一倍。

太阳的质量如何计算公式图解_图解公式太阳计算质量是多少_计算太阳质量的公式过程

化乘除为加减,化乘方开方为乘除,将高级运算降为次级运算

第一张对数表是瑞士工程师比尔吉(Jost Bürgi, 1552-1632)制作的,他曾经担任过著名天文学家开普勒的助手,这一工作干的主要任务就是计算天体运行的数值,大概实在是算得头晕眼花了吧,比尔吉产生了化简数值计算的想法,搞出了他自己用的对数和对数表。在完全独立的情况下,苏格兰数学家约翰·纳皮尔男爵(John Napier)发明了现在大家用的对数规则。如今一般都承认他们两人都是对数先驱。

太阳的质量如何计算公式图解_图解公式太阳计算质量是多少_计算太阳质量的公式过程

比尔吉搞出的第一张对数表

思考题:那么对数表是怎么发明的?

提示:要发明对数表,只要求出从 \log(1.0001) 到 \log(9.9999) 的四位小数的值。那么,什么方法能够计算出从 \log(1.0001) 到 \log(9.9999) 的所有值呢?

标签: #对数 #运算 #计算 #发明 #天文