Pythonで独自のRunge-Kutta 4インテグレータを実装したいと思います。だから、基本的に、私は、例えば、運動の3つの方程式のセットを定義することができ、および関数にこれらを渡すことができるし、操作するためにそれらにアクセスしたいPythonの別の関数への引数として関数のセットを渡す
---- EXAMPLE set of equations ----
f1 = lambda x: x**2
f2 = lambda y: y**2
.
.
.
fn = lambda n: n**2
f = [f1, f2, f3, ... , fn]
result = integrate(f, other arguments [e.g. stepsize etc.])
---- result should be of format ----
result = [result1 result2 result3 ... resultn]
:フォーマットは次のようなものでなければなりませんこれらの方程式はその関数の内部にあります。そんなことがあるものか?
は、理想的には、私は、例えば次のように呼び出すことができる機能をode45はMatlabsに似たものを、achiveたい:
% ---- file 1 ---- %
function xp=F(t,x)
xp=zeros(2,1);
xp(1)=x(2);
xp(2)=-t*x(1)+exp(t)*x(2)+3*sin(2*t);
% ---- file 2 ---- %
[t,x]=ode45(’file 1’,[t0,tf],[x10,x20]);
% where t0 tf initial and final values of t
% x10 x20 initial values of x
注1:
私はすでにscipyのダウンロードでdopri5のソースを見てきましたが、それは私の目的のためにC言語で実装され、あまりにも進んでいます。
注2:
私が上記に書いたことは全く明らかではない場合、私に教えてください、どの
あなたはこれがおそらく遅くなるだろうと知っていますか? – katrielalex