runge-kutta

    6

    3答えて

    古典的なルンゲクッタスキームをPythonで実装するには、hereという2つの方法があります。最初はラムダ関数を使用し、2番目はラムダ関数を使用しません。 どちらが速いことになるだろうと、なぜ正確ですか?

    1

    1答えて

    は私がやっているシミュレーションにRK4統合を実装しようとしています。機能は以下のthisサイトで、12ページの式に基づいて、3次元で力場を経由統合するRK4を使用しての私の最高の試みです。私のコードで 、粒子クラスは、本質的に、速度と位置のリストを格納し、位置(力は速度とは無関係である)所定の力を計算することができます。また、私は私の関数が長いと引き出されていることを知っている、とループのために

    0

    1答えて

    ここに示されたコードはうまく機能しますが、(10,30)ではなく(-30,30)のオメガを変化させたときに分岐点を見つけると言うと、 'int o'が2000〜6000の場合、次のメッセージが画面に表示されます。 Bifurcation_Plotter.exeの0x7665B802で未処理の例外が発生しました。Microsoft C++の例外:メモリ位置0x012FF544のstd :: bad_

    0

    2答えて

    最近C++を使い始めたばかりで、ユーザー定義のodeのシステムの統合を可能にするクラスを作成しました。その性能を比較するために2つの異なるインテグレータを使用します。ここで、コードの一般的なレイアウトは、次のとおり class integrators { private: double ti; // initial time double *xi; // ini

    0

    1答えて

    私が取り組んでいるプロジェクトの一環として、4次ルンゲクッタ(Runge-Kutta)法を使って星周りのオブジェクトの軌道をシミュレートする必要があります。このオブジェクトの位置と速度をRK4メソッドの実装ごとに.datファイルに書き込む必要があります。 私の問題は、後続の時間間隔でメソッド全体を繰り返す方法や、統計やインスタンスと混乱させることなく各ステップでファイルに書き込む方法を考えることが

    0

    1答えて

    私は8つの惑星(太陽が(0,0)にある)のorbiteシミュレーションのコードを開始しました 私はXとYで加速度を得ました。 XとYのスピード、まずオイラーを使い、次にRK4を使い、私は立ち往生した。私はどこから始めるべきか分からない。 numpyによって提供されるように

    0

    1答えて

    私はRunge-Kuttaメソッドを学び、単純な振り子に適用しようとしています。タイムステップdt = 0.1(h = 0.1)を使用すると、振り子は毎周期1%のエネルギーを発生します。このサイトでは: link エネルギーを約0.01%削減します。 ソフトウェアでは、どこで計算した値を比較できますか?おかげ import java.awt.BasicStroke; import java.aw

    -2

    1答えて

    私はRK4の実装を使用したいと思っています。私は何かのためにオンラインで見つけましたが、私がオンラインで見つけた実装の周りに頭を抱えるのは少し難しいです。たとえば : def rk4(f, x0, y0, x1, n): vx = [0] * (n + 1) vy = [0] * (n + 1) h = (x1 - x0)/float(n) vx[0] =

    2

    1答えて

    のみ作動オイラー法は、私はそのための解決策 r(t) = r²(t)/2+r³(t)/3 有する非線形ODE dr/dt = r(t)+r²(t) を(一つの可能​​)を解くためのアルゴリズムを記述しようとしました私はPythonでオイラー法とRK4法の両方を実装しました。 、それはrosettacodeから例えば正常に動作 import numpy as np from matplot

    0

    1答えて

    クラスのODEソルバーのカスタム実装があります。私は時間のステップをdtより小さくして.2より小さくすると、プログラムが停止する問題があります。しかし、Runge-Kuttaソルバーの1つをコメントアウトすると、非常に迅速に実行され、どのソルバーからコメントを外すかを切り替えることができるので、両方のソルバーから解を得ることができます。私はこれを修正する方法が不思議です。私は、あるソルバが他のソル