Language agnostic 角动量传递方程

Language agnostic 角动量传递方程,language-agnostic,physics,equation,angular-momentum,rigid-bodies,Language Agnostic,Physics,Equation,Angular Momentum,Rigid Bodies,对于如何计算两个刚体之间的角动量传递,可以相对容易地实现的方程,有没有人有很好的参考资料 我一直在寻找这类东西有一段时间了,但我还没有找到任何对这个问题特别容易理解的解释 确切地说,问题是这样产生的;两个刚体在无摩擦(很好,几乎)表面上运动;把它想象成空中曲棍球。两个刚体接触,然后移开。现在,不考虑角动量,方程相对简单;问题是,物体之间的角动量传递会发生什么 例如,假设两个物体没有角动量;它们没有旋转。当它们以一个倾斜的角度相互作用时(运动矢量不与它们的质心线对齐),显然一定量的动量会转化为角动

对于如何计算两个刚体之间的角动量传递,可以相对容易地实现的方程,有没有人有很好的参考资料

我一直在寻找这类东西有一段时间了,但我还没有找到任何对这个问题特别容易理解的解释

确切地说,问题是这样产生的;两个刚体在无摩擦(很好,几乎)表面上运动;把它想象成空中曲棍球。两个刚体接触,然后移开。现在,不考虑角动量,方程相对简单;问题是,物体之间的角动量传递会发生什么

例如,假设两个物体没有角动量;它们没有旋转。当它们以一个倾斜的角度相互作用时(运动矢量不与它们的质心线对齐),显然一定量的动量会转化为角动量(也就是说,它们每个都有一定量的自旋),但这有多少,方程是什么

这可能可以通过使用多刚体系统来计算来解决,但我想进行更优化的计算,这样我就可以实时计算这些东西。有没有人对方程式有什么想法,或者有没有指向这些计算的开源实现的指针,以便将其包含在项目中?准确地说,我需要这是一个相当优化的计算,因为在模拟的一个“滴答声”内需要模拟的交互数量


编辑:好吧,看起来关于这个话题的确切信息并不多。我发现“程序员物理学”类的书有点太。。。哑口无言,真正得到;我不想要算法的代码实现;我想弄清楚(或者至少为我画出)算法。只有这样,我才能根据自己的需要适当地优化它。有人对这类话题有数学参考吗?

你应该看看——奥雷利的书很难出错。

除非你有很好的理由重新发明轮子,
我建议好好看看一些开源物理引擎的源代码,比如or。这方面的高效算法是一种艺术形式,最好的实现无疑是在野外,在类似这样的同行评审项目中找到的。

嗯,我最喜欢的物理书是。我从来没有觉得那本书对我来说是一个哑巴(哑巴在脑袋里,不是在书页上…)

如果你设置了一个思维问题,你可以开始感觉到这将如何进行

假设你的两个刚性空气曲棍球在底部没有摩擦,但在边缘有一个最大的摩擦系数。很明显,如果两个冰球以相同的动能朝向对方,它们将以完美的弹性碰撞,并朝相反的方向返回

然而,如果它们的中心偏移2*半径ε,它们将几乎不接触周界上的一个点。如果它们在边缘有难以置信的高摩擦系数,你可以想象它们所有的能量都会转化为旋转。当然,撞击后必须有一个分离,否则它们会在粘在一起时立即停止自己的旋转

所以,如果你只是在寻找一些看似合理和有趣的东西(ala游戏物理),我会说你可以标准化摩擦系数来解释两个物体之间的微小接触面积(选择一些看起来有趣的东西),并使用物体路径和撞击点之间角度的sin。一直往前走,你会得到一个反弹,45度会给你反弹和旋转,90度的偏移会给你最大的旋转和最小的反弹

显然,以上这些都不是精确的模拟。不过,它应该是一个足够简单的框架,可以让有趣的行为发生

编辑:好的,我想出了另一个有趣的例子,也许更能说明问题

想象一个圆盘(如上所述)朝着一个静止的、刚性的、接近一维的针尖移动,该针尖提供了先前的高摩擦但低粘性。如果圆盘经过的距离刚好与边缘相接,你可以想象它的线性能量的一小部分将转化为旋转能量

然而,有一件事你可以肯定,那就是在这个接触之后,有一个最大的旋转能量:磁盘不能以这样的速度结束旋转,即它的外缘以高于原始线性速度的速度移动。因此,如果磁盘以每秒一米的速度移动,它不可能以每秒一米的速度移动外边缘

因此,现在我们有了一篇长文章,有几个简单的概念可以帮助直觉:

  • 碰撞角度的正弦将影响产生的旋转
  • 线性能量将决定可能的最大旋转能量
  • 单个参数可以模拟相关的摩擦系数,使其在模拟中看起来有趣

  • 如果您对旋转非球形物体感兴趣,请演示如何进行旋转。物体的不对称性意味着碰撞过程中的法向接触力可以产生关于各自CG的扭矩,从而导致物体开始旋转

    以台球或曲棍球为例,事情就更微妙了。因为物体是球形/圆形的,法向力总是正好穿过重心,所以没有扭矩。然而,法向力不是唯一的力。还有一个摩擦力,与接触法线相切,它会产生一个关于重心的力矩。摩擦力的大小为