r - 求解具有不同初始条件的 ODE
问题描述
我正在使用deSolve
包运行以下功能。我想为不同的初始值运行此函数,C_WT
然后从数据框中提取所有结果的最后一行Output
。
有什么办法可以做到这一点吗?
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)
推荐阅读
- .net - 无法使用 NLog 登录到数据库
- c - 这是在中型项目中实现封装的有效 OOP 替代方案吗?
- google-cloud-platform - GCP Google Cloud Storage:避免昂贵的数据传出网络出口
- java - java.util.Collections#copy 方法在 kotlin 中的外观如何?
- api - 我应该使用 OAuth 让 SPA 与后端通信吗?
- java - 如何在开头将标题设置为 PDF 以及如何设置居中对齐
- android - Firebase ML 智能回复支持哪些语言?
- python - Selenium 滚动到页面底部偶尔会停止
- kotest - 在类级别或容器级别设置标签
- bash - 获取所有aws帐号并排除脚本执行期间传递的帐号