Files
dynamics/examples/case05
admin 854f00ae44 feat: 增加驱动力系统、Marker渲染模式、动画防闪退、案例文档
- 新增 driving_force 驱动力系统(driver.txt 定义,支持周期控制)
- 新增 use_marker 渲染开关(GPU实例化点精灵,提升大量原子性能)
- 修复动画闪退:独立控制台、错误日志、启动存活检测
- 重绘 draw.py 架构:双渲染模式 + 预分配键线缓冲区
- 修复 raw trajectory 采样时间变量遮蔽 bug
- 重构 case05: 60原子一维链 + 驱动力 + 完整案例文档
- 修复所有案例 Readme.md 编码(GBK → UTF-8)
- 所有 input.txt 新增 driver_file / driving_force / use_marker 参数
2026-06-10 15:34:53 +08:00
..

case05: 一维原子链(60原子)

60个原子沿 x 轴排列,相邻原子用弹簧连接。

物理设定

参数
原子数 60
排列 沿 x 轴等间距排列,间距为 1
约束 原子只沿 z 方向振动(fix_x=1, fix_y=1, fix_z=0
弹簧 劲度系数 k=1.0,原长 L₀=1.0
重力
万有引力
阻尼
算法 leapfrog(蛙跳法,能量守恒)

初始条件

  • 所有原子初始速度为零
  • 第1个原子在 z 方向有初始位移,位移量 = 1
  • 其余原子初始 z=0

动力学行为

初始时刻第1个原子的 z 位移拉伸了它和第2个原子之间的弹簧,产生一个沿 z 方向的扰动。该扰动将以波的形式沿一维原子链传播,在链的两端反射,形成驻波叠加。

由于无阻尼,系统总能量守恒。