-1
関数式の入力引数にどうしたらよいかわかりません。 2番目の入力をベクターにする必要はありますか?またはIF文が必要ですか?以下は私の現在のコードです。3つの微分方程式を同時にrで解く方法
ti <- 0
X0 <- .0005
S0 <- .04
P0 <- 0
umax <- .5
Pmax <- .109
ks <- .001
m <- 1
ms <- .008
Yh <- 2
Y <- 1
tf <- 15
Z <- c(S, P)
Keq <- function(X, S, P) {
dX <- umax*X*(S/ks+S)*(1-(P/Pmax))^m
dS <- -(dX/Y) - (ms*X)
dP <- -(dX/Y) - (dX/Yh)+ms*X
return(c(dX, dS, dP))
}
Y0 <- c(X0, S0, P0)
Rx <- ode45(Keq, ti, tf, Y0)
ようこそ!残念ながら、コードにエラーがあります。変数「S」と「P」は欠落しています。彼らは何ですか? – akraf
彼らは与えられておらず、私はそれらが単に従属変数であると言われました。私は初期値X0、S0、P0しか与えられませんでした。 – Tsolstice