隙积术和会圆术




  沈括是一位卓越的数学家,他在数学的许多领域内都取得了辉煌的成就,如本则笔记所记的隙积术和会圆术就是他的两大重要研究成果。

  隙积术是用来计算诸如累棋、层坛、积罂(堆砌的酒坛子)一类堆垛物体的体积公式,其中包含了高阶等差级数的计算公式。沈括的研究开了中国垛积术研究的先河。后来,南宋时期的数学家杨辉发展了这一成果,创造了垛积术公式。

  会圆术是计算圆弧的弦、矢(弧的高)与孤长间数量关系的数学公式。在我国数学史上,沈括第一个利用弦、矢求出了孤长的近似值。这一公式为元代郭守敬创制《授时历》提供了直接的数学依据。

  沈括的数学成就赢得了中外科学家的高度赞扬。日本数学家三上义夫在其《中国算学之特色》一书中,称赞他是世界数学史上独一无二的杰出人物。客观地看,这一评价基本上还是符合事实的。

  算术求积尺之法,如刍萌【刍萌】长方楔形物体。刍,音chú。 、刍童【刍童】底面为长方形的四棱台形物体。、方池、冥谷【方池、冥谷】一种上底面大于下底面的四棱台形物体,它的形状类似于过去升斗一类的容器。、堑堵【堑堵】一种底面为长方形,二侧面与底面垂直,另两个侧面与底面斜交的四棱台形物体。它的形状像一堵土墙,故称为堑堵。、鳖臑【鳖臑】三棱锥形物体。臑,音nào。、圆锥、阳马【阳马】四棱锥形物体。之类,物形备矣,独未有隙积【隙积】把形状相同的物体有次序地堆积起来构成的堆垛体。一术。古法:凡算方积之物,有立方,谓六幕【六幕】指长方体的六个面。 皆方者,其法再自乘则得之。有堑堵,谓如土墙者,两边杀【杀】收缩,并拢。,两头齐。其法并上下广折半以为之广,以直高乘之【“其法并上下广”句】这是求“堑堵”侧面积的一个公式。广,边长。直高,梯形的高,在堑堵中它同时又是棱台的高……又以直高为股,以上广减下广,余者半之为勾,勾股求弦,以为斜高。有刍童,谓如覆斗者,四面皆杀【四面皆杀】指刍童形状物体的四个侧面都是下底长、上底短的梯形,其形状都向上缩小……其法倍上长加入下长,以上广乘之,倍下长加入上长,以下广乘之,并二位,以高乘之,六而一。隙积者,谓积之有隙者,如累棋、层坛及酒家积罂【罂】坛子。罂,音yīnɡ。之类。虽似覆斗,四面皆杀,缘有刻缺【刻缺】指堆垛体边缘的空缺。及虚隙之处,用刍童法求之,常失于数少。予思而得之:用刍童法为上位,下位别列,下广以上广减之,余者以高乘之,六而一,并入上位。(假令积罂:最上行纵横各二罂,最下行各十二罂,行行相次。先以上二行相次,率至十二,当十一行也。以刍童法求之,倍上行长得四,并入下长得十六,以上广乘之,得之三十二,又倍下行长得二十四,并入上长,得二十六,以下广乘之,得三百一十二,并二位得三百四十四,以高乘之,得三千七百八十四。重列下广十二,以上广减之,余十,以高乘之,得一百一十,并入上位,得三千八百九十四。六而一,得六百四十九,此为罂数也。刍童求见实方之积,隙积求见合角【合角】把堆垛体截出一个棱台,再把截剩的角部分加以拼合而成的部分。不尽,益出羡积【羡积】多出的体积。也。)履亩之法,方圆曲直尽矣,未有会圆之术【会圆之术】沈括的一种已知弧的直径和弧形的高,求弧形的弦长和弧长的方法……凡圆田,既能拆之,须使会之复圆。古法惟以中破圆法【中破圆法】古代计算圆形或弧形的一种方法。拆之,其失有及三倍者。予别为拆会之术:置圆田,径【径】圆弧的直径。半之以为弦【弦】直角三角形的斜边。,又以半径减去所割数【所割数】这里指圆弧的高,古代又称为矢。,余者为股,各自乘,以股除弦,余者开方除为勾,倍之为割田之直径【直径】这里指圆弧的弧长……以所割之数自乘倍之,又以圆径除所得,加入直径,为割田之弧。再割亦如之,减去已割之弧,则再割之弧也。(假令有圆田,径十步【步】古代的长度单位,约相当于现代的五公尺。,欲割二步,以半径为弦,五步自乘得二十五,又以半径减去所割二步,余三步为股,自乘得九,用减弦外,有十六,开平方,除得四步为勾,倍之为所割直径。以所割之数二步自乘为四,倍之得为八,退上一位为四尺,以圆径除【“退上一位”句】这里是说弧形的高为二步,圆弧直径为十步,算出的结果是08步,折合为四尺。用筹码来计算,就要去掉一个表示五的筹码,加上一个表示一的筹码,类似于珠算中的“退五上一”。圆径:这里指圆弧的弧长……今圆径十,已足盈数,无可除,只用四尺加入直径,为所割之弧,凡得圆径八步四尺也。再割亦依此法,如圆径二十步求弧数,则当折半,乃所谓以圆径除之也。)此二类皆造微之术,古书所不到者,漫志于此。

  【译文】

  算术中求物体体积的方法,如刍萌、刍童、方池、冥谷、堑堵、鳖臑、圆锥、阳马等,各种物体的形状都齐备了,唯独没有隙积这一种算法。古代的算法,凡是计算物体的体积,有立方体,是指六个面都是正方形的物体。它的计算方法是把一条边自乘两次就求得了。有堑堵,是指像土墙一样的形状的物体,两个墙面是斜的,两头的面是直立的。它的截面积的算法是把上、下底面的宽相加,除以二,作为截面的宽,用直高与它相乘即得。再把直高作为股,用上底面的宽减去下底面的宽,得到的差数除以二作为勾,用勾股定理算出弦,就是它的斜边长。有刍童,是说像倒扣在地上的斗那样的形状,四个侧面都是斜面。它的计算方法是:把上底面的长乘以二,加下底面的长,再用上底面的宽乘它,把下底面的长乘以二,加上底面的长,再用下底面的宽乘它;加上这二项,用高乘它们,再取其六分之一,就得到了它的体积。隙积是指体积有空隙的堆垛体,像垒起来的棋子、分层筑造的土坛和酒店里堆起的酒坛一类的东西。它们虽然像倒扣的斗,四个侧面也都是斜的,但由于边缘有残缺和空隙的地方,如果用刍童法来算它,得出的数目常常比实际的少。我想出了一种算法:用刍童法计算出它的上位、下位,再列出它的下底宽,减去上底宽,把这一差数乘以高,取其六分之一,并入前面的数目即可以了。(如果有堆垛的酒坛子,最上层长、宽都是两只坛子,最下层长、宽都是十二只坛子,一层层相错开垛好。先从最上层数起;数到有十二只坛子处,正好是十一层。用刍童法来算,把上层的长乘以二得四,加下层的长得十六,用上层的宽来乘它,得三十二。又把下层的长乘以二得二十四,加上上层的长得二十六,用下层的宽来乘它,得三百一十二。上、下两位相加,得三百四十四,乘以高得三千七百八十四。另外把下层的宽十二减去上层的宽,得十,与高相乘,得一百一十。加上前面的数字得三千八百九十四。取其六分之一,得六百四十九。这就是酒坛子的数目。用刍童法算出的是“实方”的体积,用隙积法算出的是截剩部分拼合成的体积,可以求出多余的体积。)丈量土地的算法,方、圆、曲、直的都有了,但没有会圆的算法。凡是圆形土地,既能够拆开它,又必须使它合起来能恢复圆形。古代的算法只是用“中破圆法”拆开来计算,其误差有达三倍的。我另外设计了一种拆开、会合的方法:设置一块圆形土地,以其直径的一半作为弦;再从半径减去所割下的弧形的高,它们的差数作为股。弦、股各自平方,用弦的平方减去股的平方,它们的差平方作为勾,再乘以二,就是割下的弧形田的弦长。把割下的弧形田的高平方,乘以二,再除以圆的直径,所得的商加上弧形的弦长,便是割下的弧形田的弦长。再割一块田,其算法也如此,把总的弧长减去已割部分的弧长,就是再割田的弧长了。(假如有一块圆形田,直径为十步,想使割出的弧形高二步,就用圆半径五步作为弦,五步平方得二十五,用半径减去弧形的高二步,它们的差数三步作为股,平方得九。用它来减弦的数二十五,得十六,开平方得四,这就是勾,再乘以二就得弧的弦长。把圆弧的高二步自乘,得数为四,再乘以二得八,退上一位为四尺,用圆的直径相除。现今圆的直径为十,已经满了整十数,不除退上一位也可以。只需要将四尺加入弧弦长,就得出圆弧的弧长,共是八步四尺。再割一块田,也依照这种方法。如果圆弧直径是二十步,要求孤长,就应当折半,这就是所说的要用圆弧直径来除它。)这两类方法都是涉及精微的算法,是古书里所没有的,所以随笔记录在这里。