技艺第十八
本文永久链接:https://shishuguan.com/books/mengxi-bitan-baihuawen-full/volume-18/chapter-18
计算体积的方法,如刍萌、刍童、方池、冥谷、堑堵、鳖臑、圆锥、阳马等形状,物体的形态已经完备,唯独没有间隙堆积这一方法。古代算法:凡是计算方形物体的体积,有立方体,指的是六个面都是正方形的物体。其算法是边长自乘两次得到体积。有堑堵,形状像土墙,两头逐渐变窄,两端齐平。算法是合并上底和下底的宽度,取平均值作为宽度,再乘以垂直高度;以垂直高度作为股,以上底宽度减去下底宽度,余数的一半作为勾,通过勾股定理求出弦,作为斜高。有刍童,形状像倒扣的斗,四面都逐渐变窄。算法是:上底长度加倍后加上下底长度,乘以上底宽度;下底长度加倍后加上上底长度,乘以下底宽度;将这两个结果相加,乘以高度,再除以六。所谓间隙堆积,是指堆积物之间有间隙,比如堆积的棋子、层叠的土坛以及酒店堆积的酒坛等。虽然形状像倒扣的斗,四面都逐渐变窄,但因为存在缺口和空隙,如果用刍童法计算,常常会得出偏少的数值。我思考后得到一种方法:用刍童法算出一个数值作为上位;下位则另外列出:下底宽度减去上底宽度,余数乘以高度,除以六,然后并入上位。假设有堆积的酒坛:最上面一行纵横各两个酒坛,最下面一行各十二个酒坛,行与行依次排列。先从上往下,两行依次排列,直到十二行,共十一行。用刍童法计算:上底长度加倍得四,加上下底长度得十六,乘以上底宽度,得三十二;又下底长度加倍得二十四,加上上底长度得二十六,乘以下底宽度,得三百一十二;将两个结果相加得三百四十四,乘以高度得三千七百八十四。再列出下底宽度十二,减去上底宽度,余十,乘以高度得一百一十,并入上位得三千八百九十四;除以六得六百四十九,这就是酒坛的数量。刍童法求得的是实心方体的体积,隙积法求得的是包含缺角和不完整部分的体积,实际上是多出的部分。丈量田亩的方法,方形、圆形、弯曲、直线都已完备,唯独没有会圆之术。凡是圆形田地,既然能分割,就必须能使它重新拼合为圆形。古代方法只有用中分圆的方法来分割,其误差有时达到三倍。我另外创立了分割和拼合的方法:设定一块圆形田地,取直径的一半作为弦,再用半径减去被割掉的部分,余数作为股;各自平方,用弦的平方减去股的平方,余数开平方得到勾,加倍后就是被割部分的直径。将被割部分的数值自乘后加倍,再除以圆径,所得结果加上直径,就是被割部分的弧长。再次分割也按此方法,减去已经割去的弧长,就得到第二次分割的弧长。假设有圆形田地,直径十步,要割去两步。以半径五步为弦,自乘得二十五;半径减去所割两步,余三步为股,自乘得九;用弦的平方减去股的平方,余十六,开平方得四步为勾,加倍得到被割部分的直径八步。被割部分的数值两步自乘得四,加倍得八,退一位作四尺,除以圆径。现在圆径是十,已是满数,无法再除。只用四尺加入直径,得到被割部分的弧长,一共得圆径八步四尺。再次分割也按此方法。如果圆径二十步求弧长,就要折半,这就是所谓除以圆径。这两种方法都是极其精微的算法,是古书中没有记载的,我随意记录在这里。
建造房屋的方法,称为《木经》,有人说是喻皓所著。房屋分为三部分(去声):从梁以上为上分,地面以上为中分,台阶为下分。凡是梁长多少,就配以相应的屋脊高度多少,以此作为椽子的标准。例如梁长八尺,配屋脊三尺五寸,这是厅堂的规则,这称为上分。柱子若干尺,就配以相应的台基若干尺,以此作为椽子的标准。例如柱子高一丈一尺,台基就高四尺五寸之类。以至于斗拱、椽子、屋桷,都有固定法则,这称为中分。台阶有陡、平、缓三种等级,宫中以御辇为标准:凡是自下而上登坡,前竿垂到手臂尽头,后竿举到手臂尽头,称为陡道;抬辇的十二人:前面两人叫前竿,接着两人叫前絛,再往后两人叫前胁;后面一人叫后胁,再往后叫后絛,最后一人叫后竿。辇前有一名队长,叫传倡;后面一人叫报赛。前竿与肘平齐,后竿与肩平齐,称为缓道;前竿垂手,后竿与肩平齐,称为平道;这称为下分。那本书共三卷。近年来土木工程更加精细完善,旧《木经》大多不再使用,还没有人重新编写这样的书,这也是优秀工匠的一项事业。
用雕版印刷书籍,唐朝人还没有广泛使用。自从冯道开始印刷五经,以后的典籍,都采用雕版印刷。庆历年间,有个平民毕昇,又发明了活字版。他的方法是:用胶泥刻字,薄得像铜钱边缘,每个字做一个印,用火烧使其坚硬。先设置一块铁板,上面用松脂、蜡和纸灰之类的东西覆盖。想要印刷时,就把一个铁框放在铁板上,然后密密地排列字印。排满一铁框就是一板,拿到火上烘烤,等药稍稍熔化,就用一块平板按压字面,字面就平整得像磨刀石。如果只印两三本,这种方法不算简便;如果印几十、几百、几千本,就极为迅速。通常准备两块铁板,一块在印刷,另一块已经在排字。这一块刚印完,第二块就已经准备好了。交替使用,瞬间就能完成。每个字都有几个印,像“之”、“也”等字,每个字有二十多个印,用来防备一板内重复出现。不用的时候就用纸贴上,按韵部分类,每个韵部贴一个标签,用木格存放。遇到生僻字平时没有准备的,就临时刻制,用草火烧制,瞬间就能做好。不用木头做字模的原因,是木头的纹理有疏有密,沾水后就会高低不平,而且和药粘在一起,取不下来。不如用胶泥烧制,用完后再次用火使药熔化,用手一拨,字印自己就掉下来,完全不会沾污。毕昇死后,他的字模被我的堂兄弟和侄子们得到,至今珍藏着。
淮南人卫朴精通历法,是像一行那样的人物。《春秋》记载了三十六次日食,各家历法通通验证,精确的也不过得到二十六、七次,只有一行得到二十九次;卫朴却得到三十五次日食,只有鲁庄公十八年的一次日食,古今推算都不符合日食规律,怀疑是以前的史书记载有误。从夏朝仲康五年癸巳岁,到熙宁六年癸丑岁,一共三千二百零一年,史书所记载的日食,共四百七十五次。各家历法验证,虽然各有得失,但卫朴得到的日食次数最多。卫朴能不用算筹,推算古今的日食月食,只是口算乘除,不差一算。凡是大的历法都是计算数字,让人在耳边读一遍,他就能默记背诵;对于旁通的历法,他还能纵横背诵。曾经让人抄写历书,抄完后,让人附在耳边读给他听,如果有算错一个数字的,读到那里,他就说:“这个字错了。”他精确到这种程度。大的乘除运算都不用看数位,运算算筹如同飞一般,人的眼睛都跟不上。有人故意移动他的一根算筹,他从上到下用手抚过一遍,到被移动的算筹处,就拨正然后离开。熙宁年间撰《奉元历》,因为没有观测记录簿,没能完全发挥他的技术。他自己说只得到六七成,但已经比其他历法精密。
钱氏占据两浙的时候,在杭州梵天寺建造一座木塔,刚建到两三层,钱俶登上塔,嫌塔摇晃。工匠说:“还没铺瓦,上面轻,所以这样。”等到铺上瓦,塔还是像原来一样晃动。工匠没办法,偷偷让妻子去见喻皓的妻子,送给她金钗,问塔晃动的原因。喻皓笑着说:“这容易。只要逐层铺完木板,就用钉子钉牢,就不会晃动了。”工匠按照他说的去做,塔就稳了。这是因为钉牢木板后,上下紧密约束,六个面互相连接像箱子一样。人踩在木板上,六个面相互支撑,自然不会晃动。人们都佩服他技术精湛。