2

この Mathematica のコードの何が問題なのかはわかります。バグの説明と、コードの改善方法を教えてくれる人はいますか?

V[x_, y_, z_] := x^2 + y - z;

m = 10;

DSolve[m*x''[t] == -Grad[V[x, y, z], {x, y, z}]*x[t], x[t], t]

ポテンシャル場における粒子のモデル。このモデルでは、粒子は、空間内の座標を時間の関数として与える関数によってモデル化された空間内の軌跡を記述する質量点であると見なします。ポテンシャル場は関数 V : R^3 → R で与えられ、軌道は微分方程式の解です。

ここに画像の説明を入力

このモデルは、粒子が質量点であると仮定していることに注意してください。これは、このモデルを使用する多くの場合、間違いであることが確かに知られています。たとえば、惑星運動のモデルとして。

実際の方程式:

ここに画像の説明を入力

4

1 に答える 1

4

まず、ウィキペディアを信用しないでください。いくつかの基本的な知識には適していますが、特定の何かについては、分野固有の情報源を使用することをお勧めします。

正しい式は次のとおりです。

ここに画像の説明を入力

そして正しいコード:

V[x_, y_, z_] := x^2 + y - z;
m = 10;
DSolve[m*{x''[t], y''[t], z''[t]} ==
    -(Grad[V[x, y, z], {x, y, z}] /. {x -> x[t], y -> y[t], z -> z[t]})
    , {x[t], y[t], z[t]}, t]

解決:

{{x[t] -> C[1] Cos[t/Sqrt[5]] + C[2] Sin[t/Sqrt[5]], 
  y[t] -> -(t^2/20) + C[3] + t C[4],
  z[t] -> t^2/20 + C[5] + t C[6]}}
于 2013-08-30T16:44:53.400 に答える