几何近似与估算
「将该水库的形状看作一个棱台」——这句话才是整道题。它是一个被替你做好的建模假设,而一个假设一旦被摊开,就可以问:它好不好?换一个差多少?真正的误差是不是根本不在这儿?
本页题目
「看作一个棱台」:一句假设值多少误差
A.1.0×10⁹ m³ B.1.2×10⁹ m³ C.1.4×10⁹ m³ D.1.6×10⁹ m³
高差 h = 157.5 − 148.5 = 9 m,两个底面 S₁ = 140、S₂ = 180(单位 km²)。棱台体积公式:
V = 9⁄3 × (140 + 180 + 159) = 3 × 479 = 1437(km²·m)。题面把 √7 ≈ 2.65 直接给了出来,就是在提示这条路。用不取近似的 60√7 = 158.745 算得 1436.2,落点一样。
单位是这道题最容易翻车的一步。km²·m 不是 m³:1 km² = 10⁶ m²,所以 1 km²·m = 10⁶ m³,1437 km²·m = 1437×10⁶ m³ ≈ 1.4×10⁹ m³,选 C。把 10⁶ 忘掉,答案会差一百万倍,而这种错在卷面上看不出任何异常。
还有一件事值得看一眼:四个选项都是从哪来的。把水面面积当成始终是下面那个 140,得 9 × 140 = 1260 ≈ 1.2×10⁹,正好是 B;当成始终是上面那个 180,得 9 × 180 = 1620 ≈ 1.6×10⁹,正好是 D。也就是说 B 和 D 不是随手编的数,而是两种「偷懒到底」的算法各自的答案。认出干扰项是怎么造出来的,比记住公式有用——因为它顺带告诉你正确答案必定夹在这两个数中间。
这道题真正的建模动作不是套公式,而是那句「将该水库在这两个水位间的形状看作一个棱台」。真实的水库当然不是棱台。这是一个显式的模型假设,题目替你做好了;建模训练该做的,是把它重新打开。
先把题翻译一次。水量就是面积沿高度的累积:
第一张图画的就是这条曲线。于是所有算法都只是对同一块面积的不同近似:把面积当常数(取下底或上底),得到两个矩形,就是 1260 和 1620,也就是选项 B 和 D;把面积看成随高度线性变化,得到梯形法 h(S₁+S₂)/2 = 1440;把√面积看成随高度线性变化,得到的正是棱台公式,1436.2。棱台之所以对应「√S 线性」,是因为棱台的水平尺寸随高度线性收缩,而面积是尺寸的平方。
梯形法和棱台公式究竟差多少?这个差有闭式:
相对只有 0.26%。第二张图画的就是这个差随上下面积之比怎么长:比值 1.29(本题)时 0.26%,比值到 2 才 1.9%,到 4 是 7.1%。本题两个面积太接近,两个模型在选项精度下根本区分不开——它们都指向 C。
于是有一个更值得问的问题:真正的误差在哪?第三张图把横轴换成「这个水库到底长什么样」:让 √S 沿高度按 uk 变化,k = 1 恰好是标准棱台。k 从 0.5 扫到 2,真水量在 1496 和 1377 之间走,相对棱台答案是 −4.0% 到 +4.3%;而两条公式线在同一张图上几乎压成一条。
结论不直觉,却是整道题最值钱的一句话:换公式带来的差是 0.26%,形状不确定带来的差是 4%,相差一个半数量级。在这里纠结用棱台还是梯形没有意义,真正的不确定性藏在那句被当作已知的「看作一个棱台」里。建模里管这个叫误差预算:先弄清各项误差各占多少,再决定精力往哪儿花。在一个贡献 0.26% 的环节上精雕细琢,而另一个环节贡献 4%,是最典型的用错力气。
真实的水库不靠公式算库容,靠一张库容曲线(水位—库容关系曲线)。它是测出来的:用地形测量或数字高程模型沿等高线量出各水位的水面面积 S(h),再逐段数值积分成 V(h),通常隔几米一个点,做成一张表。防洪调度、发电计划、蓄水许可,查的都是这张表,而不是某个几何公式。
换句话说,现实里 S(h) 不是两个点,是一整条曲线。这道题的全部困难恰恰来自只给了两个点——只有两个点时,中间怎么连纯属假设。这正是建模里最常见的处境:数据点比需要的少,缺口只能用假设补上,而假设的代价必须被算出来,不能装作不存在。上面那 4% 就是这道题假设的标价。
库容曲线还会随时间变。上游来沙在库区淤积,同一水位对应的库容会逐年变小,所以大型水库每隔若干年要重新测一次淤积、重绘曲线。这意味着「水库库容」根本不是一个常数,而是一个需要定期维护的测量结果——一个在考题里被写成已知数的量,在工程里是一项长期观测任务。
最后,连那两个水面面积本身也是估计值。水位不是一条静止的水平线(有风壅、有波浪);在浅滩处岸线随水位剧烈变化,几十厘米的水位差可能对应上平方公里的面积差;遥感影像分类出的水面边界也有自己的误差。140.0 和 180.0 这两个数各自带着不确定度,而把它们当作精确值代进一个只保留两位有效数字的公式,是考场的规矩,不是现实的规矩。