問題タブ [verlet-integration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - スイフト ロープ ベルレッツ
Swift で Verlet ロープを実装しようとしています。制約から点質量の位置を修正しようとすると、それらが非常に急速に離れてしまい、座標が NaN になるという問題が発生しています。私のコードで何が間違っている可能性がありますか?
python - Python での Verlet アルゴリズムの実装
Python での verlet アルゴリズムの実装に問題があります。私はこのコードを試しました:
しかし、それは正しく機能していません。なにが問題ですか?Verlet アルゴリズムの一般的なコードを探しています。
python - レナード・ジョーンズ ポテンシャル シミュレーション
Lennard-Jones ポテンシャルで粒子をシミュレートしたかったのです。このコードに関する私の問題は、Verlet アルゴリズムの使用方法がわからないことです。
- Verlet アルゴリズムをどこに実装すればよいかわかりません。クラスの中か外か?
- メソッドで Verlet アルゴリズムの速度を使用するにはどうすればよい
move
ですか? - Verlet アルゴリズムの実装は正しいですか、それとも結果を保存するために配列を使用する必要がありますか?
- それを機能させるには、他に何を変更する必要がありますか?
algorithm - MATLAB: Verlet アルゴリズム -
以下は、メイン スクリプトから呼び出される Verlet 関数のコードです。
この機能をテストするスクリプトを作成しました。コンテキストは単純な調和運動であり、Verlet アルゴリズムは、他のアルゴリズムと比較して相対的な精度についてテストされる予定です。
これが私のテストスクリプトです:
作成されたプロットは、0.001 ステップ サイズの 200 回の実行で非常に大きくなります - http://i.imgur.com/GF2Zdvu.png
0.0001 ステップ サイズの 200 回の実行を次に示します: http://i.imgur.com/u0zCUWS.png
簡単にわかるように、同様に爆発します。私のコードには (私には見えない) 問題があるはずです。
前もって感謝します!
javascript - Verlet / Euler 積分は不正確です
ゲーム用のいくつかの physx を作成したいので、それがどのように機能するかを理解するために小さな例から始めました。この間、いくつかの問題がありましたが、90% で解決しました。
私の例を作成するために、私はいくつかの他の例を研究し、これを作成するために私が使用した例を作成しました: codeflow.org/entries/2010/aug/28/integration-by-example-euler-vs-verlet-vs-runge-kutta/
最初は - これは汚れていて非効率的なコードです。2 つの問題に関心があるのは 1 つだけです。
#1正確な楕円を作成するための「タイムステップ」ループがありますが、たとえばステップ= 5で1つのオブジェクト(2番目は静的)を移動すると、楕円は正確ですが、両方のオブジェクトが動的である場合、曲線は完全に不正確になります。
しかし、ステップ = 1 で実行すると、オブジェクトがより正確になります (何?) さらに、1 つのオブジェクトが静的である場合、楕円は少し不正確になります。
1 つの静的なjsfiddle の例- http://jsfiddle.net/hnq8eqta/ window.steps (1 または 5) を変更してテストします。
2 つの動的なjsfiddle の例- http://jsfiddle.net/agbhwe9g/ 変更手順も。
#2これは通常の動作ではないと思います。1 つのオブジェクトの初期ベクトルが大きい場合、両方のオブジェクトの軌道がおかしくなり、画面から逃げてしまいます。このアルゴリズムは正常ですか?ここで非常によく似たシミュレーションを行うことができます: phet.colorado.edu/sims/my-solar-system/my-solar-system_en.html ですが、これは同じではありません...
例- jsfiddle.net/hr1ebq3c/
verlet 統合の何が問題になっていますか?
performance - Haskell: Verlet 統合の無限リストが遅い
Haskell を使用して Verlet インテグレーターを作成し、重力をモデル化しています。インテグレータは、オブジェクトの最初の 2 つの位置をシードとして使用し、その後残りを生成します。
Haskell でこれを行う良い方法は、無限リストを使用することだと思いました。ただし、実装すると、長時間非常にゆっくりと実行されることがわかりました (Haskell 1700 のタイム ステップ: 12 秒、Python 1700 のタイム ステップ: < 1 秒)。
同様のパフォーマンスを持つ 1 次元積分器の関連コードを次に示します。
無限リストの生成にも使用zipWith
してみましたが、同様のパフォーマンスが得られます。
なぜこれに時間がかかるのですか?ガベージ コレクション自体は約 5 秒です。これをより速く実行する良い方法はありますか?
math - 時間補正されたベルレの数値積分公式
時間補正された Verlet と呼ばれる、Johnathan Dummer による Web で一般的に使用されているverlet 統合式があります。ただし、フォーラムの投稿をいくつか読んだことがありますが、特定の条件下で奇妙な結果や予期しない結果が得られるというものです。
ダマーの時間補正式が壊れており、ポスターが彼自身の派生を正しいものとして提示していると述べているスタックオーバーフローの回答もあります。
さて、ダマーの公式は本当に壊れているのでしょうか? はいの場合、ポスターの派生の方が優れていますか?
PS: ダマーがx1 = x - x0 + a * dt^2
彼のウェブサイトで正しいx1 = 2x - x0 + a * dt^2
.