老安游记《浏览美国地理风光》第十六篇:后记
自从关于圣路易斯拱门的游记(第十三篇:看奇迹)发布以来,收到部分读者提出的要求,希望了解悬链线方程的推导过程。因为涉及到数学中的微积分运算和物理学中的力学分析,对学文科的朋友,可能带来不便,所以没有在正文中详细叙述。但是考虑到学理工科的读者,就把悬链线方程的推导过程编在本后记中,希望能够两边兼顾,对有兴趣的读者有所帮助。
1. 悬链线方程的精确解
悬链线(Catenary)是一种常用曲线,物理上用于描绘悬在水平两点间的,在均匀重力作用下的软绳或锁链呈现的形状,因此而得悬链线之名,下图是路边常见的悬链线。
图1. 路边常见的悬链线
现有一根自然下垂的柔软细绳,取垂直的 y 轴为对称轴,x 轴为水平轴,如图 2 所示。
图2. 置于坐标轴中的悬链线
(i)弧长分析
设曲线 y = f(x) 在(x,y)点的微元弧长为ds,其水平与垂直分量分别为 dx 和 dy,其倾角为 ,如下面图 3 所示。
图3. 细绳在(x,y)点的弧长分析
曲线的斜率为:
(1)
微元弧长为:
积分后,可求得弧长:
(2)
(ii)受力分析
从水平和垂直的两个方向进行受力分析:垂直方向由于重力的作用,绳中张力 F 的垂直分力并不是处处相等,而是从最低处起(=0),逐渐增加。绳中张力 F 的水平方向无重力作用,因此张力的水平分力处处相等。
取细绳坐标为(x,y)的点进行受力分析:张力 F 的走势与此处的切线相同,张力的垂直分力为此处细绳的重力 mg,而细绳的质量 m 等于线密度 ρ 乘以绳长 S,mg=ρg S,
再设张力的水平分力为 T,则此细绳在(x,y)点上的受力情况如下面的图 4 所示。
图4. 细绳在(x,y)点的受力分析
从图 4 中很容易看出,曲线 y = f(x) 在(x,y)点的斜率为:
(3)
(iii)微积分运算
把方程(2)中的 S 代入方程(3),得:
(4)
两边求导,得:
(5)
将方程(5)中的 f(x) 导函数,转移至等号同侧,得:
(6)
两边积分,得:
(7)
亦即
(8)
查阅导数与积分表,发现:
(9)
以 f'(x) 代替 x,方程(9)的成为:
(10)
写成微分形式
(11)
把方程(11)的两边,对 f'(x) 积分,得:
对方程右端,考虑到方程(8),得:
(12)
完成右端积分,得:
(13)
这是反双曲正弦函数,反过来,双曲正弦函数为:
(14)
对方程(14)积分得:
(15)
为了求出方程右端的积分,令 ,即 ,则,
方程(15)的右端变成:
再查阅导数与积分表,发现 [coshx]'=sinhx,把上式对 z 积分,得:
再把 z 还原成 x,得:
因此方程(15)变成:
(16)
(iv)悬链线方程的精确解
由于我们选取对称轴为y 轴,在 x=0 处切线呈水平,即 f'(0)=0,从方程(14)中得到sinhC1=0,进而C1=0。对于C2,没有任何限制条件,可取任意值,去掉下标2后,得:
(17)
令常数 a = T /,方程(17)变成:
(18)
这就是悬链线方程最一般形式的表达式,也就是在街头常见的悬链线照片中,嵌入图中的那个悬链线方程(见图1)。令人惊喜的是,德国数学家莱布尼茨(Leibnitz)和荷兰天文学家惠更斯,于1691年分别独立地给出了该问题相同形式的解。
2. 圣路易斯拱门悬链线方程的近似解
(i)精确解的困难
在精确的悬链线方程表达式中,有两个常数需要确定,常数 c 很容易定,它决定曲线在 y 轴上的高低,不失一般性,可取 c = 0。但是常数 a 却不容易定,它决定曲线在 x 轴上的张开度和曲线顶点在 y 轴上的纵坐标。
不幸的是,对于给定点的坐标(x,y),要想求出 a,必须要解一个关于 a 的,非线性的(Non-Linear) 隐函数(Implicit Function)形式的,超越方程(Transcendental Equation)。没办法,只能用数值方法去逐渐逼近。
因此,所谓的“精确解”,也只是个称谓罢了,不同的位数达到不同的精度,但都是近似值。其实,双曲余弦函数的值,除了少数几个特殊点之外,都是无理数,都是近似值,就看你想要的精度是到多少位了。
再进一步看,甚至有理数中的分数,1/3=0.333 … …, 1/7=1.412857142857 … …,也都是“无限”循环小数,并不是“精确值”,不同的精度要求,选取不同的位数。
对于一般的悬链线方程(18),有人假设 c = 0,对于每一个 a 值,算出一条曲线,对于不同的 a 值,算出一族曲线,如下图所示,这项研究形象地显示了常数 a 的影响。
图5. 不同 a 值算出的悬链线曲线族
数值逼近的方法,只有在计算机发展到一定程度时,才能付诸实践,而计算机真正开发出来,是上个世纪八九年代的事情。圣路易斯拱门的建造是上个世纪六十年代,用数值逼近的方法去解拱门悬链线方程的精确解,非线性的隐函数超越方程,似乎不太可能。
科学技术的发展,都带有时代性,圣路易斯拱门在建造时,连现代化的直立加横臂的起重机(Crane)都还没有,只能利用已经建造好的“脚”,当作起重机的立柱,把预制好的三角单元,一块一块地叠加上去,见下面的图 6 和图 7。
图6. 圣路易斯拱门的单元结构图
图7. 圣路易斯拱门的中期施工图
所以说,在圣路易斯拱门的建造过程中,使用某种近似方法,是不得不做的事情。我尚未看到当初建设者所写的计算公式报告,而是根据目前所知的条件,推导出圣路易斯拱门悬链线方程的近似解。
(ii)寻找悬链线的近似解
如果能够找到一个显式的悬链线方程的近似解,在工程应用上就会方便得多。最简单的假设就是:取双曲余弦符号内的 a = 1,因而前面的悬链线方程(18),就可以简化为如下的方程(1),(注:方程的编号在这节重新开始)。
y = c + a cosh x (1)
对于圣路易斯拱门,高度等于两脚之间的距离,所以对于拱门的顶点,x =0, y = 1, 则方程(1)变成:
c + a = 1 (2)
对于拱门的右脚,x = 1/2,y = 0, 则方程(1)变成:
c + a cosh 1/2 = 0 (3)
方程(2)减去(3),消去 c ,解出 a:
a = 1 / [1-cosh 1/2] (4)
把(4)中的 a 值代入(3),解出 c:
c = - a cosh 1/2 (5)
再把(4)中的 a 和(5)中的 c 代入方程(1),得:
y = [cosh x - cosh 1/2] / [1 - cosh 1/2]
于是,y 作为 x 的显函数,得:
y = 1 - [1 - cosh x] / [1 - cosh 1/2] (6)
根据双曲余弦函数的定义,
(7)
最后得到圣路易斯拱门悬链线的近似解:
(8)
这是一个 y 关于 x 的显式方程,对于任意的 x 值,马上可以求出对应的 y 值。
(iii)悬链线近似解的验证
为了验证这个公式,我们做出如下计算,在x = -1/2 和1/2 之间取21个点,由公式(8)所算出的曲线图如下(图8),毫无疑问,这是一条悬链线。
图8. 取21个点所计算出来的圣路易斯拱门形状
如果取更多的点,计算中取更多的位数,则曲线就会更加光滑,数值也就会更加精确,完全可以代替令人大伤脑筋的,非线性的,隐函数形式的,超越方程了。
3. 抛物线和悬链线的对比
我最近在网上查阅了一些有关圣路易斯拱门的文章,有人说,拱门的形状是“抛物线”, 很可惜,这是个错误的认识。为此,我做了一个抛物线的计算,抛物线的方程选作如下的方程(9),以满足和悬链线方程(8)相同的顶点和双脚条件。
y = 1 – 4 x² (9)
如果 x 值都取有理数, y 值必定也都是有理数,所以抛物线的解是真正的“精确解”。如果把抛物线的结果与悬链线的结果重叠在一起,可以看出,相比于悬链线,抛物线比较“瘦”,如下面的图 9 所示。这里的黑色实线是悬链线,红色虚线是抛物线。
图9. 抛物线与悬链线的对比
下面的表1列出了悬链线和抛物线在 21 个点上的坐标值。
表1. 抛物线与悬链线的对比
从上面表 1 中可以看出:抛物线总是低于悬链线,两者之间的差别,在于小数点的第3位以后。悬链线是无理数,抛物线是有理数。总而言之,拱门的形状,“看似好像抛物线”, “实则倒置悬链线”。
4. 编者的暂时告别
新年伊始,迄今为止,本人发布了三套系列主题游记。从第二个千禧年的第二个十年,第一年第一个月的第一天 (2021.1.1),开始发布第一套:《走遍美国五十州》。五个月后 (2021.5.1),又开始发布第二套:《追寻美国总统的足迹》。再过三个月后(2021.8.1),开始发布第三套:《浏览美国地理风光》,现在已经全部与读者见面。
在这段时间里,得到了许多网友的响应,有表扬也有批评,有补充也有纠正,笔者在此表示衷心的感谢。在读者的殷切希望和热情鼓励下,逼得我不顾“老卖年糕”(侯宝林语:意为老迈年高),阅读书籍,查找资料,勤动脑筋,客观上推迟了“老年痴呆症”的光顾,看来是件好事。
另一方面,这项工作对我来说,也是一种精力和体力的考验:贪黑熬夜成了家常便饭,深夜梦里突发奇想,一跃而起拿笔记下,否则第二天必忘无疑,也是常有的事。因此,下一段时间,打算调整一下心情,歇歇脚,喘口气,然后再找点什么由头,继续当我的“坐家”。
也可能换个方式打发时间,“万卷书”是读完了,是不是该走“万里路”了?一年多的疫情,把人都憋死了,现在情况已经有所好转,打算迈开双脚,拄起单拐,找个目标,走一走,看一看,去哪里走,去哪里看,再考虑考虑吧。
不论是家里坐,还是出门走,总得考虑写什么主题呀?前面的三套游记,都是写美国境内的,为何不考虑一下美国之外呢?再想想吧,也欢迎各位,帮忙出个主意,多谢了,再见。