私はエラーを取得しておいてください。FUNC2、倍、Y、ロー・エラー
Error in checkFunc(Func2, times, y, rho) :
The number of derivatives returned by func() (175) must equal the length of the initial conditions vector (51)
私はBrigattiら2009(predは、獲物モデルWA空間構成要素)
のオフに基づいてモデルを作成しようとしていますx<-c(1:40000)
left_shift = function(x) {
x[c(2:length(x), 1)]
}
right_shift = function(x) {
x[c(length(x), 1:(length(x) - 1))]
}
laplace = function(x) {
return(c(left_shift(x) + right_shift(x) - 2 * x))
}
dxdt <- function(time, state, pars) {
prey = state[1:length(state)/2]
pred = state[(length(state)/2 + 1):length(state)]
dprey = pars[5] * laplace(prey) + pars[1] * prey - x[2] * prey * pred
dpred = pars[5] * laplace(pred) + pars[3] * prey * pred - pars[4] * pred
list(c(prey, pred, dprey, dpred))
}
time <- seq(0, 600, by = 1)
pars <- c(alpha=1,
beta = .5,
gamma = .2,
delta = .6,
D = 0.000008 #(0.004*0.004/2), #diffusion coefficient
)
state <- rep(0.1, 51)
out <- as.data.frame(ode(func = dxdt, y = state, parms = pars, times = time))
あなた 'state'パラメータは、51の長さを持っていますが、あなたの関数' dxdt'はバック175個の値を示します。方程式を見ることができるモデルへのリンクがありますか? –
これは私がモデルのために持っているコードですが、Bertelliらの方程式を基にしています。相互作用の空間スケールを特徴とする捕食者 - 獲物システムのパターン形成 –