初始问题
一个弹簧,自身质量为 m0,劲度系数为 k。重力加速度为 g。将弹簧竖直悬挂,它的伸长量 Δx 是多少?
一个想当然的答案是,根据胡克定律 F=kΔx:
Δx=km0g
这就等价于,给一个劲度系数为 k 的轻质弹簧,下面挂了一个质量为 m0 的物块。但真的是这样吗?
定性分析
按上面的理想情况,弹簧的各部分的“伸长程度”应该是一致的,都在受到大小为 m0g 的力的拉伸。然而在实际情况下,弹簧只有最上面受到的力是完整的 m0g,而越往下,弹簧上的一点只受到来自它下面的部分的拉力,而它上面的部分不算,因此受到的拉力应为越来越小,“伸长程度”也就越来越小。最终,弹簧会呈现出上疏下密的状态,而只有最上面一点是和理想情况下一样疏的,这样全部加起来,总伸长量势必小于 km0g。

近似如上图,C 为理想情况,B 为实际情况。
嗯,那么它具体是多少呢?
定量分析
用微元法。把弹簧均匀地切成无数(这里设为 n,n→+∞)个小段,每一小段受到自身重力的影响可忽略不计,视作理想的轻质弹簧。将每一小段的伸长量加起来,就是总伸长量。
计算每一小段的劲度系数
将弹簧横放(消除重力影响),用大小为 F 的力拉它,有:
Δx=kF
均匀地切成 n 小段,则每一小段的伸长量 Δx′ 为:
Δx′=nΔx=nkF
此时弹簧上应处处张力相等,均为 F。那么再用一次胡克定律,可得到每一小段的劲度系数 k′ 为:
k′=Δx′F=F⋅Fnk=nk
计算每一小段的伸长量
将弹簧竖直悬挂。关注从下往上数的第 i 小段(i=1,2,3,…,n),此处的张力 Ti,即它下面的部分的重力为:
Ti=ni−1⋅m0g
那么它的伸长量 Δxi 为:
Δxi=k′Ti=n(i−1)m0g⋅nk1=n2k(i−1)m0g
求和
将每一小段的伸长量都加起来,得到总伸长量 Δx:
Δx=n→+∞limi=1∑nΔxi=n→+∞limi=1∑nn2k(i−1)m0g=n→+∞limn2km0gi=1∑n(i−1)=n→+∞limn2km0g⋅2n(n−1)=n→+∞lim(1−n1)2km0g=2km0g
也可以用图像法:
抱歉,我直觉认为这里有个图像,是过原点的倾斜直线,横坐标与弹簧上一小段的位置有关,纵坐标与该点的“伸长程度”有关,线下面积是一个直角三角形,加起来就能直接得到 2km0g。但我实在想不出来严谨的横、纵坐标应该是什么。
我查了一下,需要引入一个新的物理量“线应变”,用来表示我所说的“伸长程度”。我就不去捣鼓新东西了。
实际上,这相当于往轻质弹簧的重心位置塞了一个质量为 m0 的物块,只让上半部分伸长,下半部分不伸长,而不是把它挂在最下面。这也符合我们一般对重力的简化处理。(如果你不关心弹簧内部的疏密分布的话)
弹簧还能用吗?
在高中物理实验中,我们常将弹簧竖直悬挂后,取此时的长度为新的“原长”。但是,如果考虑到上述的影响,弹簧还符合胡克定律吗?
依旧将弹簧切成 n 小段,此时第 i 小段处的张力:
Ti′=ni−1⋅m0g+F
这一小段的伸长量:
Δxi′=nkTi′=[n(i−1)m0g+F]nk1=n2k(i−1)m0g+nkF
求和:
Δx′=n→+∞limi=1∑nΔxi′=n→+∞limi=1∑n[n2k(i−1)m0g+nkF]=kF+n→+∞limi=1∑nn2k(i−1)m0g=kF+2km0g
所以,弹簧实际上还是能正常使用的。