任意精度可伸缩绳索仿真


12

我正在尝试模拟绳索对象。我了解的公式是由弹簧连接的一系列粒子。这些弹簧具有非常大的k值,因此线会变形,但拉伸很少。我得出的结论是,在闭合形式中不可能解决作为时间函数的问题,因为绳索是钟摆(不是闭合形式)的推广。

然后解决近似解决方案。我需要一个可扩展的算法。我看到的示例使用显式或隐式欧拉积分来移动粒子。这不会扩展。

要看到这一点,请考虑具有n个节点的绳索。向一端施加很大的力。由于绳索的拉伸不应太大,因此另一端的加速度必须是立即的。

但是,通过欧拉融合,将任何力量施加到另一端都需要n步。我注意到一个指数下降:如果第一个节点加速一定量,则相邻节点的加速较小(如果它们以相同的速度加速,则该算法不稳定)。因此,相邻节点节点加速更慢!

因此,对于n个节点而言,加速度几乎可以忽略不计。这导致绳索明显伸展。如果只想使模拟的分辨率加倍,则突然需要采取小几十或几百倍的时间步才能获得类似的行为。

我正在寻找一种解决此问题的简单方法-即,高分辨率模拟仅需多项式时间额外的计算即可收敛到该解决方案。可以使用矩阵和线性代数技术的完整库。我对经典力学的知识非常好,而且我知道一些数值分析。


vsdt

@dmckee,是的,请这样做!为了回答您的第二条评论,理想情况下,力应在任何时间步长内无限有效地传播。
malletlet

好吧,声音的速度可能很高...但是,如果您的时间步长小于10毫秒,则传播长度仍然只有几米。
dmckee ---前主持人小猫,2012年

我很想知道您在这里收到的建议是否有帮助。我以为缺乏接受意味着要么您仍在跟进,要么所有答案都不是您所希望的,但是它们是否为您指明了前进的方向?
dmckee ---前主持人小猫,

他们很有帮助,但是很多事情是同时发生的。我已经在一些答案中阐明了我的意图,当我喘口气时,我将能够对其进行跟进。谢谢,
malletlet

Answers:


4

首先,正如杰德·布朗Jed Brown)所提到的,您应该使用隐式时间步调方案,因为您的问题似乎很棘手,或者至少是一种更稳定,但同样简单的方案,例如Leapfrog集成Verlet集成

至于身体问题,您对伸展运动有多感兴趣?可以使用完整的约束来代替使用刚性弹簧连接粒子,例如,确保成对的粒子之间的距离保持恒定。需要在每个时间步求解约束,并且存在用于精确设置的有效算法,即一长串约束链。例如,参见本文

出于好奇,您是否还在沿着绳索的长度使用角势来建模其柔韧性?


即使使用隐式时间步进(确实有帮助),也会发生拉伸。实际上,我只在尝试摆脱它的范围内才有兴趣进行拉伸。这篇论文中的数学知识基本上是困扰我的,但是我正在研究fortran代码。尚未使用任何角度约束。
malletlet

@IanMallett:好的,那么约束就是要走的路,也就是说,约束根本就没有延伸。
2012年

5

使用当前的公式,您的系统会很僵硬。弦中的动态拉伸和振动(大概)没有意思,但是它们控制了明确的时间步长。这表明使用隐式时间积分方法。您可以使用阻尼来防止振荡,该振荡会破坏隐式方法的自适应误差控制。

如果尽管想要跨越细尺度振荡,但仍要进行建模仍然很重要(例如,对于疲劳建模),那么您可能要检查新的多尺度方法,例如异质多尺度方法(Engquist,Tsai等)或半频谱及时法。此类方法的使用是研究级的主题,您必须充分了解问题所在以及方法的功能,才能确定它是否合适。如果您想节省能量,例如某些振动模式不应该消散,则应考虑诸如Verlet之类的辛积分器。

您也可以根据需要解决零拉伸限制。使用惯性项,可以用角度来重新构建模型,从而形成非刚性ODE系统。正如faleichik指出的那样,这是ROPEHairer,Nørsett和Wanner的书中考虑的测试问题。如果您放弃了绳索本身的惯性,但允许松弛(轻,低拉伸的绳索,具有离散的载荷;不是常见的模型),那么问题就变成了微分变分不等式(DVI),通常您无法获得优于一阶精度的时间。


2
HMM本质上是一种基于投影的模型简化方法。我会毫不犹豫地推荐这种方法,除非应用程序特别要求它们;必须要牺牲速度的准确性。在某些应用中,确定压缩和重构运算符的“良好”选择(使用HMM的命名法)仍然是不容易的(燃烧就是这样的例子)。
Geoff Oxberry 2012年

@GeoffOxberry同意,我添加了一个警告。一个经典的问题是时钟中的机械振动是如何引起漂移的。我认为合适的一个示例问题是对从负载侧通过振动模式加速的绞盘绕绞盘的蠕变/滑移进行建模。并非一切都是燃烧。;-)
杰德·布朗

到目前为止,零拉伸限制基本上是我真正想要的唯一东西。精细的振荡会很好,但是现在最好使用过于光滑的无弹性布。我尝试了隐式的时间步进(通过OpenCloth的公式),但是不幸的是问题仍然存在。您能否详细说明/提供有关如何执行最后一段的链接?谢谢,
malletlet

2

如果您对快速的近似解决方案感兴趣,那么您可能会对数字效果中使用的方法(例如离散微分几何)感兴趣。我知道哥伦比亚大学Grinspun小组在2008年发表的论文Discrete Elastic Rods中的准静态公式,但该领域可能有更多的最新文献。


2

悬绳的运动是Hairer和Wanner的最爱测试问题,它出现在“求解常微分方程”的第二卷(刚性)和第一卷的第二版(1993年)中。我建议使用最后一个选项,第247页。方程式很难推导,数值解法也不是很简单。尽管最后使用了常规的显式时间步进器,例如DOPRI,RK45或ODEX,它们的表现也很好,所以问题并不是很棘手。


1
ROPE书中的问题是对一根不会拉伸的绳索进行建模,其动力学以惯性效应为主。问题似乎在询问伸展的绳索。
杰德·布朗
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.