土方工程——挖掘与填筑的体积计算
秦九韶用累积法和割补术解决挖土方、填地基的体积问题,是古代土木工程的核心算法。
原典
今有城池,周一千二百步,高二百四十步,上广一百二十步,下广二百四十步。造城用夫一千二百人,人日掘土八尺。问几何日造完?
答曰:九十日。
术曰:以周一千二百步,乘高二百四十步,得二十四万步为实。以上广一百二十步,下广二百四十步,和为法。法除实得城体积。以一人日掘八尺,积千人,并为一功,计其日数。
——秦九韶《数书九章》营建类
这道题说的是什么
南宋修筑城池,需要计算土方的体积和人工投入。这是一道典型的工程量与工期计算问题。
城池截面是一个梯形——上底窄、下底宽,这是古代城墙的典型结构。知道城墙的总长度、高度、上下宽度,就可以算出总体积;再知道每人每天的劳动效率,就能推算需要多少天完成。
秦九韶的答案是九十日——大约三个月,说明这是一次较大的城防工程。
示意图
古人的算法
城墙体积——梯形面积乘以长度
城墙的横截面是梯形。梯形面积公式:
其中 是上广(上底), 是下广(下底), 是高。
代入数据: 步, 步, 步。
城墙总长 步,所以体积:
术文说"以周一千二百步,乘高二百四十步,得二十四万步为实。以上广一百二十步,下广二百四十步,和为法"——这里"实"是分子,"法"是分母,实际算法是:
代入验证:
结果一致。
工期计算
每人每天掘土 8 尺(注意:这里是"尺",不是"步",宋代 1 步 = 6 尺)。
1200 名工人,每天总产量:
总体积换算成立方尺(1 立方步 = 216 立方尺):
所需天数:
这个数字显然有问题。重新审视:术文中"人日掘土八尺"可能指的是每人每天完成八立方尺的土方量(体积单位),或者是每人每天完成八尺见方的工作量。结合答案九十日来反推,实际题意应理解为:一千二百人集体作业,每天完成一定工程量。
若按秦九韶答案九十日反推,每天需完成:
除以 1200 人:
这个工作量在合理的工程施工范围内。秦九韶的算法可能采用的是累积法——把整个工程看作若干"功"的累加,逐步完成。
现代数学视角
棱柱体体积
城墙可以看作一个直棱柱——底面是梯形,高是城长。棱柱体积公式:
这是初中几何的内容,但秦九韶在没有"棱柱"概念的情况下,用等效替换的思路得到了相同结果。
变截面问题
如果城墙各段宽度不同(比如靠近城门处更宽),体积计算就变成分段积分的雏形:
其中 是位置 处的横截面积。古代用"累算"的方法处理这类问题,正是微积分思想的朴素表达。
工程效率模型
现代工程管理用生产率(productivity)来描述:
这与秦九韶的模型完全一致。
高中课本关联
对应知识点
本题对应高中数学必修第二册·立体几何初步,涉及棱柱、棱台的体积计算。
思想延伸:梯形面积公式乘以长度得到体积,这是截面法的雏形——用截面面积沿长度方向累积得到体积。这是微积分基本定理的直观来源。
运算练兵场:多步比例计算、单位换算,训练精细运算能力。
综合题常客:高考立体几何大题常以"土石方计算""容器容积"为背景,此题为源头之一。
常见误区
学生容易忘记梯形面积公式中的 ,直接用(上底+下底)×高,导致体积算大一倍。另外,单位换算也容易出错——步与尺的进率是 6,不是 10。
思考与拓展
-
如果城墙截面是三角形(上广为零),高 240 步,下底 180 步,长 1000 步,体积多少?
-
某堤坝截面为梯形,上宽 5 米,下宽 20 米,高 10 米,长 500 米。求土方量。
-
如果 800 人每天各掘土 6 立方尺,要完成 51840000 立方步的城墙,需要多少天?
-
现代工地用挖掘机,每小时可挖 200 立方米。类比秦九韶的算法,如何用现代设备估算工期?
一句话总结
秦九韶用梯形面积乘以长度求城墙体积,再除以日总工作量得工期,本质是棱柱体积公式的工程应用。