这一节介绍用 Python 解哈密顿系统的运动方程。
学习目标:
- 哈密顿系统,运动方程,相流与辛群
- 用 scipy.odeint 解常微分方程,举例:谐振子问题,开普勒问题和分子动力学问题
谐振子
先来考虑最简单的谐振子系统的哈密顿量,
其中
-
是方块儿的动量,
-
是其质量,
-
是弹簧的弹性系数,
-
是广义坐标,表示方块儿位移(弹簧拉伸或压缩的长度),有时也用表示。
哈密顿量可以看做是给定系统状态下的能量,等于动能
加势能
。
将
除到右边,上面方程表现出很奇特的性质,
设
,
上面的方程变为,
这是一个椭圆的轨迹方程。
即坐标和动量
在相空间中是一个等能量的椭圆曲线(一维流形)。
下面先画一下方块儿的相空间(坐标,动量)轨迹,选择两个不同的
。