当前位置:首页 > 杂谈 > 正文内容

对数是怎么被发明的?

2023-07-20 16:56:39TONY杂谈111

先提一个问题:

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(ab) = \log(a) + \log(b)

log⁡(ab)=log⁡(a)−log⁡(b)\log(\frac{a}{b})=\log(a)-\log(b)

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

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

假设 x=567.89×3141.59x=567.89×3141.59

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

log⁡(x)=log⁡(567.89×3141.59)=log⁡(567.89)+log⁡(3141.59)=log⁡(102×5.6789)+log⁡(103×3.14159)=2+log⁡(5.6789)+3+log⁡(3.14159)=5+log⁡(5.6789)+log⁡(3.14159)\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}

四位对数表为例,对数表提供 log1.0000\log 1.0000log9.9999\log 9.9999 的值,

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

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

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

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

更一般地,对两个任意大数乘积 x1x2x_1 x_2,令 x1=a1∗10n1,x2=a2∗10n2,1≤a1,a2≤10x_1 = a_1 * 10^{n_1}, x_2 = a_2 * 10^{n_2}, 1\leq a_1, a_2 \leq 10,有

log⁡(x1x2)=log⁡(10n1a1×10n2a2)=n1+n2+log⁡(a1)+log⁡(a2) \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)

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

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

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

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

地球与太阳的平均距离 R=1.496×1011mR = 1.496 \times 10^{11} m地球公转周期 T=3.156×107sT = 3.156 \times 10^7 s万有引力常数 G=6.672×10−11m3/(s2⋅kg)G = 6.672 \times 10^{-11} m^3/(s^2 \cdot kg)

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

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

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

log⁡(2π)=0.7982log⁡(4π2)=2log⁡(2π)=1.5964log⁡(G)=−11+0.8242log⁡(T)=7+0.4991+log⁡(T)=7+0.4991log⁡(GT2)=4.8224log⁡(R)=11+0.1750×3log⁡(R3)=33.5250+log⁡(4π2)=1.5964−log⁡(GT2)=4.8224log⁡(M)=30.2990M=100.2990×1030=1.991×1030\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×1030kg1.991 \times 10^{30} kg 。查有关资料可知,准确值为 (1.98855±0.00025)×1030kg(1.98855 \pm 0.00025) \times 10^{30} kg ,所以上述计算的相对误差0.09%0.09\%

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

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

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

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

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

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

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

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

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

(评论区有大佬给出了思路)

我给了其中一种解法,也是当时比尔吉和纳皮尔计算第一张对数表时采用的方法。请移步下面的问题。 我会尽快更新。 : )

在没有计算机的时代,是如何制作对数表的?104 关注 · 2 回答问题

“对数是怎么被发明的?” 的相关文章

5款国内外大牌空气净化器深度数据测评,怎么选最适合你家?

5款国内外大牌空气净化器深度数据测评,怎么选最适合你家?

我们都知道空气净化器可以去除甲醛和PM2.5等污染物,但是除了选择甲醛净化数值与净化功能之外,还有哪些要点是一般大众容易忽略的?哪些功能是厂家隐而不宣的秘密劣势?这篇文章带你看仔细了! 前言摘要 5个品牌、3位专家、耗时60天以上 本期空气净化器测评,感...

给孩子买储蓄险,担心以后交不起钱怎么办?

给孩子买储蓄险,担心以后交不起钱怎么办?

越来越多家长在给孩子配置基础保障之余,会给孩子买增额终身寿险或年金险。但储蓄险大多是分期缴费,有些父母会担心将来因故导致交不起钱怎么办。本文我们就来聊聊解决方案。 担心因疾病、意外交不起钱 解决思路1:考虑可附加投保人豁免的产品。 投保人豁免通常是附加险。...

抖店登录怎么操作?一键触达美好生活~

抖店登录怎么操作?一键触达美好生活~

近期比较火的抖音小店,吸引了许多商家的注意力。越来越多的商家开始入驻抖音电商。那么抖店登录都需要经过哪些步骤呢? 输入"抖音小店商家入口",即会跳出抖店官网,其实这就是抖音小店商家入口。在抖音小店官网,商家们可以清楚的看到"立即入驻"字样,想要登录抖店的商家们,只需要点击...

2022年楼市小阳春来了,1月统计局发布的70城市房价指数,房价环比上涨的城市增加到了14个

2022年楼市小阳春来了,1月统计局发布的70城市房价指数,房价环比上涨的城市增加到了14个

今天统计局把1月份70城市的房价指数发出来了,里面的数据和大家预想的一样,全国楼市的小阳春果然还是来了。这点,是无法避免的。 大家可以对比前几个月统计局发布的城市房价指数,在2021年10月份的时候,二手房房价环比上涨的只有6个城市,11月份的时候,二手房房价环比上涨的还是6个城市...

70城房价数据出炉,一线城市普涨,房价还会继续分化走势吗?

70城房价数据出炉,一线城市普涨,房价还会继续分化走势吗?

2023年的房价走势,民众最关心了。在近半年组合拳的扶持措施下,在3月份,终于收到了正面的反馈。如果仔细分析,这也是早有预兆: 从宏观层面,稳定楼市的决心也早已经下了,而且也已经将房地产企业纳入实体经济范畴之内; 从微观层面,各个地方政府、央行等金融监管部门、公积...

秋日浪漫|“知云合作院校学生”的一天

秋日浪漫|“知云合作院校学生”的一天

戴上耳机,走在路边 阵阵秋风吹得凉爽 让人静得下心来,感受秋日的浪漫 秋天究竟哪里浪漫? 百花凋零,树黄叶枯 还是秋风萧瑟的凄凉 不,这些都不是 有时候我们不妨换个角度看世界 今天知云带大家体验 “知云合作院校学生的一...