1.12 项目

练习 1.38. 数值研究 考虑一个摆:在均匀重力场中,质量 m 由长度为 l 的无质量杆支撑。摆的拉格朗日量为

对于摆,运动的周期取决于振幅。我们希望找到具有给定频率的摆的轨迹。有三种方法可以做到这一点:(1) 最小作用量原理求解,(2) 拉格朗日方程的数值积分,(3) 解析解(需要对椭圆函数有所了解)。我们将全部执行三种方法并比较解轨迹。

考虑参数 m = 1 kg, l = 1 m, g = 9.8 m s-2。小振幅振荡的频率为 0 = (g/l)1/2。让我们找出具有频率 1 = (4/5) 0 的非平凡解。

a. 角度在时间上是周期性的,因此傅里叶级数表示是合适的。我们可以选择时间的原点,使角度过零点在时间零点。由于势能是角度的偶函数,角度是时间的奇函数。因此我们只需要正弦级数。由于角度在半个周期后回到零,角度关于中点的时间是奇函数。因此级数中只存在奇次项:

轨迹的振幅为 A = max = sumn=1infty ( - 1)n+1 An

通过最小化作用量找到前几个系数 An 的近似值。你需要编写一个类似于第 1.4 节中 find-path 过程的程序。注意:可能存在不止一个使作用量最小化的轨迹。

b. 编写一个程序数值积分摆的轨迹的拉格朗日方程。使用数值积分解决这个问题的麻烦在于,我们不知道运动的频率如何依赖于初始条件。因此我们必须猜测,然后逐步改进我们的猜测。定义一个函数 (),它数值计算作为初始角速度函数的运动频率(其中 = 0)。通过求解 () = 来找到所需轨迹的初始角速度。求解该方程的方法包括逐次二分法、最小化平方残差等——选择一种。

c. 现在让我们制定作为振幅函数的频率解析解。运动的周期简单地是

利用能量,用振幅 A 求解 ,以显式写出所需的积分。该积分可以用椭圆函数表示,但从某种意义上说这并没有解决问题——我们仍然需要计算椭圆函数。让我们避免这种对椭圆函数的涉足,而使用过程 definite-integral 直接进行数值积分。我们仍然存在这样的问题:我们可以指定振幅 A 并得到频率;要解决我们的问题,我们需要解决反问题,但这可以像部分 b 中那样完成。

练习 1.39. 双摆行为 考虑图 1.11 所示的理想双摆。

a. 制定拉格朗日量以描述动力学。用给定的角度 1 和 2 推导运动方程。将方程转化为适合数值积分的形式。假设以下系统参数:

b. 准备图表,显示系统在以下初始条件下启动时每个角度随时间的行为:

将图表延伸到 50 秒。以 0.125 秒的间隔将状态点保存在一个列表中。

c. 绘制系统能量随时间变化的图。能量应守恒。你得到的守恒效果如何?

d. 重复部分 b 的实验,但将 m2 摆锤抬高 m 的 10-10。计算两次实验中 m2 摆锤之间距离的平方差列表,并绘制其对数值与时间的关系。你看到了什么?

e. 重复之前的比较,但这次使用以下初始条件:

你在这里看到了什么?