R 用不同的初始条件求解常微分方程
我正在使用deSolve包运行以下函数。 我想对C_WT的不同初始值运行此函数,然后从数据帧输出中提取所有结果的最后一行 我有什么办法可以这样做吗R 用不同的初始条件求解常微分方程,r,function,loops,dataframe,R,Function,Loops,Dataframe,我正在使用deSolve包运行以下函数。 我想对C_WT的不同初始值运行此函数,然后从数据帧输出中提取所有结果的最后一行 我有什么办法可以这样做吗 kon_WT = 1 koff_WT = 10 R_WT = 20 Complex <- function (t,y,parms){ with(as.list(y), { dC_WT <- koff_WT*RL_WT -kon_WT*R_WT*C_WT dRL_WT <- k
kon_WT = 1
koff_WT = 10
R_WT = 20
Complex <- function (t,y,parms){
with(as.list(y), {
dC_WT <- koff_WT*RL_WT -kon_WT*R_WT*C_WT
dRL_WT <- kon_WT*R_WT*C_WT - koff_WT*RL_WT #uM
dR_WT <- koff_WT*RL_WT -kon_WT*R_WT*C_WT
return(list(c(dC_WT, dRL_WT, dR_WT)))
})
}
times <- seq(0,1,0.01)
Out <- ode(y = c(C_WT = 10, RL_WT = 0, R_WT= R_WT),
times = times, func=Complex, parms=NULL)
Output <- data.frame(Out)
是的,有一种方法可以做到这一点,例如:
resC_WT <- function(iC_WT) {
times <- seq(0,1,0.01)
Out <- ode(y = c(C_WT = iC_WT, RL_WT = 0, R_WT= R_WT), times = times, func=Complex, parms=NULL)
Output <- data.frame(Out)
return(Output[nrow(Output), ])
}
vectorC_WT <- 1:11
sapply(vectorC_WT, FUN=resC_WT)
是的,有一种方法可以做到这一点,例如:
resC_WT <- function(iC_WT) {
times <- seq(0,1,0.01)
Out <- ode(y = c(C_WT = iC_WT, RL_WT = 0, R_WT= R_WT), times = times, func=Complex, parms=NULL)
Output <- data.frame(Out)
return(Output[nrow(Output), ])
}
vectorC_WT <- 1:11
sapply(vectorC_WT, FUN=resC_WT)
谢谢你,本。。这是有用的!谢谢你,本。。这是有用的!嗨,乔戈,这真的很有用。。这正是我想要的。如果我现在还想将koff改为三个不同的值,这样对于kd的每个值,iC_WT都适用,那该怎么做??非常感谢你,这真的很有用。。这正是我想要的。如果我现在还想将koff改为三个不同的值,这样对于kd的每个值,iC_WT都适用,那该怎么做??多谢了,我现在还想把koff改成三个不同的值,这样kd C_WT的每个值都会改变,怎么做??多谢了,我现在还想把koff改成三个不同的值,这样kd C_WT的每个值都会改变,怎么做??多谢