プロが教える店舗&オフィスのセキュリティ対策術

次の連立常微分方程式
du_1/dt = f(u_1,u_2)
du_2/dt = g(u_1,u_2)
を4次のルンゲクッタ法で解く方法は次のようでいいのですか?

s_1 = f(u_1(i),u_2(i))
k_1 = g(u_1(i),u_2(i))
s_2 = f(u_1(i)+dt/2*s_1,u_2(i)+dt/2*k_1)
k_2 = g(u_1(i)+dt/2*s_1,u_2(i)+dt/2*k_1)
s_3 = f(u_1(i)+dt/2*s_2,u_2(i)+dt/2*k_2)
k_3 = g(u_1(i)+dt/2*s_2,u_2(i)+dt/2*k_2)
s_4 = f(u_1(i)+dt*s_3,u_2(i)+dt*k_3)
k_4 = g(u_1(i)+dt*s_3,u_2(i)+dt*k_3)
u_1(i+1) = u_1(i) + dt/6*(s_1+2*s_2+2*s_3+s_4)
u_2(i+1) = u_2(i) + dt/6*(k_1+2*k_2+2*k_3+k_4)

A 回答 (1件)

それでいいです。

変数が増えても同じです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!