## ---- eval=FALSE, echo=TRUE--------------------------------------------------- # library('DSAIRM') ## ---- eval=FALSE, echo=TRUE--------------------------------------------------- # dsairmmenu() ## ----dsaidemenu, fig.cap='Main menu of the DSAIRM package.', echo=FALSE------ knitr::include_graphics("mainmenu.png") ## ----appexample, fig.cap='Screenshot of the input-output elements of one of the apps.', echo=FALSE---- knitr::include_graphics("appexample.png") ## ----modelexample, fig.cap='Screenshot of the _Model_ section of one of the apps.', echo=FALSE---- knitr::include_graphics("modelexample.png") ## ----whattodoexample, fig.cap='Screenshot of the _What to do_ section of one of the apps.', echo=FALSE---- knitr::include_graphics("whattodoexample.png") ## ---- eval=TRUE, message=FALSE------------------------------------------------ library('DSAIRM') ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # help('simulate_basicbacteria_ode') ## ---- eval=TRUE, echo=TRUE---------------------------------------------------- result <- simulate_basicbacteria_ode() ## ---- eval=TRUE, echo=TRUE---------------------------------------------------- plot(result$ts[ , "time"],result$ts[ , "B"],xlab='Time',ylab='Bacteria',type='l') ## ---- eval=TRUE, echo=TRUE---------------------------------------------------- result <- simulate_basicbacteria_ode(g = 0.5, r = 0.002) plot(result$ts[ , "time"],result$ts[ , "B"],xlab='Time',ylab='Bacteria',type='l') ## ---- eval=TRUE, echo=TRUE---------------------------------------------------- #values for immune activation rate, r, for which to run the simulation rvec = 10^seq(-5,-2,length=20) #this variable will hold the peak values for each r Bpeak = rep(0,length(rvec)) for (n in 1:length(rvec)) { #run the simulation model for different values of r #for simplicity, all other inputs are kept at their defaults result <- simulate_basicbacteria_ode(r = rvec[n]) #record max number of bacteria for each value of r Bpeak[n] <- max(result$ts[,"B"]) } #plot final result plot(rvec,Bpeak,type='p',xlab='Immune activation rate',ylab='Peak bacteria',log='xy') ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # simulate_basicbacteria_ode <- function(B = 10, I = 1, g = 1, Bmax = 1e+05, dB = 0.1, k = 1e-06, r = 0.001, dI = 1, tstart = 0, tfinal = 30, dt = 0.05) ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # mysimulator <- function(B = 10, I = 1, g = 1, Bmax = 1e+05, dB = 0.1, k = 1e-06, r=1e3, dI=1, tstart = 0, tfinal = 30, dt = 0.05, s=1E3) ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # pars = c(g=g,Bmax=Bmax,dB=dB,k=k,r=r,dI=dI) ## ----eval=FALSE, echo=TRUE, color='red'--------------------------------------- # pars = c(g=g,Bmax=Bmax,dB=dB,k=k,r=r,dI=dI,s=s) ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # dBdt = g*B*(1-B/Bmax) - dB*B - k*B*I # dIdt = r*B*I - dI*I ## ----eval=FALSE, echo=TRUE---------------------------------------------------- # dBdt = g*B*(1-B/Bmax) - dB*B - k*B*I # dIdt = r*B*I/(s+B) - dI*I ## ----eval=TRUE, echo=TRUE----------------------------------------------------- #initialize the new function #it needs to be in the same directory as this code source('mysimulator.R') #values of saturation parameter to explore svec = 10^seq(-3,3,length=20) #this will record the maximum immune response level Ipeak = rep(0,length(svec)) for (n in 1:length(svec)) { #run the simulation model for different values of s #for simplicity, all other inputs are kept at their defaults result <- mysimulator(s = svec[n]) #record max immune response for each value of s Ipeak[n] <- max(result$ts[,"I"]) } ## ----eval=TRUE, echo=TRUE----------------------------------------------------- plot(svec,Ipeak,type='p',xlab='Saturation parameter, s',ylab='Peak immune response',log='xy')