【发布时间】:2011-09-30 17:33:46
【问题描述】:
编辑:
@auxsvr 是正确的,我的力方程是错误的,关于 -3/2 指数。
另一种看待它的方式是简单地看二维并考虑一个 从原点作用的力,与 1/r^2 成正比,就像重力一样, 其中 r 是到原点的距离。
在 (x,y) 处,力沿 (-x,-y) 方向作用。然而,那是 只是方向,而不是大小。如果我们使用 k 作为常数 比例,力是(-kx,-ky)。
因此力的大小为 Sqrt[(-kx)^2+(-ky)^2],或 k*Sqrt[x^2+y^2] 或 k*Sqrt[r^2] 或 k*r
由于力的大小也是 1/r^2,这给了我们 k= 1/r^3。
因此力为 (-x/r^3, -y/r^3)。
因为我最初使用 r^2 作为我的主要数量,所以是 (r^2)^(-3/2),这就是 3/2 的来源。
这实际上使我的问题无效,尽管它仍然使 有趣的理论讨论。
我用正确的方程重试了这个 Mathematica,但仍然得到 没有答案。正如其他指出的那样,结果只是下面的一个椭圆 某些条件(在其他情况下可能是抛物线或双曲线)。
此外,虽然最终的轨道是圆锥截面,但 初始轨道可以螺旋进出,直到最终的圆锥截面轨道 已完成。
编辑到此结束
我正在使用 Mathematica 解决二体问题:
DSolve[{
d2[t] == (x1[t]-x0[t])^2 + (y1[t]-y0[t])^2 + (z1[t]-z0[t])^2,
D[x0[t], t,t] == (x1[t]-x0[t])/d2[t],
D[y0[t], t,t] == (y1[t]-y0[t])/d2[t],
D[z0[t], t,t] == (z1[t]-z0[t])/d2[t],
D[x1[t], t,t] == -(x1[t]-x0[t])/d2[t],
D[y1[t], t,t] == -(y1[t]-y0[t])/d2[t],
D[z1[t], t,t] == -(z1[t]-z0[t])/d2[t]
},
{x0,y0,z0,x1,y1,x1,d2},
t
]
但我回来了:
因变量比方程少,所以系统是超定的。
我数了 7 个方程和 7 个因变量?
事实上,系统是半不确定的,因为我没有提供时间 0 的位置和速度。
我意识到我的方程本身对于二体问题可能是错误的,但我仍然想知道为什么 Mathematica 会抱怨这个问题。
【问题讨论】:
-
您将 x1 列为变量两次,而 z1 根本没有,因此出现了消息。但修复它不足以让 DSolve 给出结果,它只会删除错误消息。
-
@belisarius,尝试编写这样的函数会很有趣。不过,写起来可能很邪恶。迷人,但邪恶。
-
@rcollyer 你想让 DSolve 弄清楚如何使用极坐标?这只是冷...
-
@rcollyer 以防万一你不知道research.microsoft.com/apps/tools/tuva/index.HTML#data=3|||
-
@Null 你是不是用 Unicode 绕过了单词过滤器?狡猾的。