1 绳长约束 —— 系统只有一个自由度
绳不可伸长,A 上升多少,B 就下降多少。这把两个独立变量锁成一个,因此系统只有 1 个自由度:
(yA − y0) + (yB − y0) = 0 ⟹ yA + yB = 常数
右侧标尺旁的校验值即为绳长,模拟中它应当始终不变。原图把绳画成斜线是错的 —— 斜绳意味着存在水平分力,会把滑轮拽偏,绳长也不再守恒。
2 动力学方程(含滑轮转动惯量)
对 A 列牛顿第二定律(向上为正),对滑轮列转动方程 τ = Iα:
TA − mAg = mAa
mBg − TB = mBa
(TB − TA)R = I·(a/R)
消去两个张力得:
a = (mB − mA)g / (mA + mB + I/R²)
这解释了本实验最反直觉的一点:
TA = mA(g + a) ≠ TB = mB(g − a)
TB − TA = I·a / R² > 0
同一条绳两端张力不相等,差额全部用来转动滑轮。滑轮越重(I 越大),a 越小,两侧张力越接近。理想无质量滑轮时才回到 TA = TB。
3 能量核算
Ek = ½mAv² + ½mBv² + ½I(v/R)² // 第三项是滑轮的转动动能
E = Ek + mAghA + mBghB
把摩擦力矩和空气阻力调为 0 时,E 应当是一条水平直线(图三中灰线)。若它下滑,说明数值积分或约束出了问题 —— 这是检验代码正确性的强判据。
调节建议:把「轴摩擦力矩」和「空气阻力」都设为 0,再对比图中 a(t) 与理想值 —— 有质量滑轮时 a 必然小于理想值。
若想看到 mA > mB 时系统反向运动,点「交换 A/B」。
快捷键:空格 播放/暂停 R 重置 ↑↓ 微调时间倍率