私は、jupyterノートブックでいくつかのvpythonスクリプトを書き直そうとしています。これまで私は多くの問題に遭遇していませんでしたが、私が書き直そうとした最後のものはかなり遅くなりました。それはVIDLEで非常に迅速に実行されます。私はPython 3.5.0とJupyter 4.1.0でsierraOSを使用しています。VPythonがJupyterでかなり遅い
コードはいくつかのオブジェクトを作成し、whileループでその位置を変更します。 当初ループはvisual.rate(5000)
でしたが、私は無駄に50に減らそうとしました。私はまた、オブジェクトの数を2つに減らそうと試みましたが、依然として非常にゆっくりと作業していました。ここでは、コードの私の最も簡単なバージョンがあります:
from vpython import scene, sphere, color, curve, arrow, mag, vector, rate,canvas
scene = canvas(width=800, height=600)
obj0 = sphere(pos=vector(0,0,0), radius=5e11)
obj1 = sphere(pos=vector(5e12,0,0), radius=5e11)
trail1= curve()
#some initial value
G = 6.7E-11
obj0.mass = 2.0E30
obj0.momentum = vector(0,0,0)
obj1.mass = 1.0E26
obj1.momentum = vector(0,0,0)
dt=200000.
CrashFlag=0
while(CrashFlag==0):
rate(1000)
obj1.force= -G*(obj0.mass*obj1.mass*obj1.pos)/(mag(obj1.pos)**3)
obj1.momentum = obj1.momentum+ dt*(obj1.force)
obj1.pos = obj1.pos + dt*obj1.momentum/obj1.mass
trail1.append(pos=obj1.pos)
if (mag(obj1.pos)<2.e11) :
CrashFlag=1
あなたは、これがJupyterノートで特に遅いことが原因となるものを特定し、またはその周りにどのような方法を提案することはできますか?それ以外の場合は、JupyterノートブックでインラインではなくVIDLEでシミュレーションを出力することができます(コードはまだJupyterノートブックから実行されます)