[LONGITUDINAL] input={K, KDE, KPQ, KQPP, LAMBDAP, GAMMA, DELTAQP, PT0, Q0} PK: depot(target=C) EQUATION: t0 = 0 PT_0 = PT0 Q_0 = Q0 PSTAR = PT+Q+QP ddt_C = -KDE*C ddt_PT = LAMBDAP*PT*(1-PSTAR/K) + KQPP*QP - KPQ*PT - GAMMA*KDE*PT*C ddt_Q = KPQ*PT - GAMMA*KDE*Q*C ddt_QP = GAMMA*KDE*Q*C - KQPP*QP - DELTAQP*QP
shinyUI(fluidPage( tabsetPanel( tabPanel("Plot", fluidRow( column(4, tabsetPanel( tabPanel("Treatment", br(), sliderInput("tfd", "time of first dose:", value=50, min=0, max = 100, step=5), sliderInput("nd", "number of doses:", value=6, min=0, max = 20, step=1), sliderInput("ii", "interdose interval:", value = 15, min = 1, max = 20, step=1), sliderInput("amt", "amount:", value = 1, min = 0, max = 5, step=0.2), br() ), tabPanel("Parameters", sliderInput("GAMMA", "GAMMA:", value = 1, min = 0, max = 4, step=0.1), sliderInput("K", "K:", value = 100, min = 0, max = 200, step=5), sliderInput("KDE", "KDE:", value = 0.3, min = 0, max = 1, step=0.05), sliderInput("LAMBDAP", "LAMBDAP:", value = 0.12, min = 0, max = 0.5, step=0.025) , sliderInput("DELTAQP", "DELTAQP:", value = 0.01, min = 0, max = 0.05, step=0.0025), sliderInput("KPQ", "KPQ:", value = 0.025, min = 0, max = 0.1, step=0.005), sliderInput("KQPP", "KQPP:", value = 0.004, min = 0, max = 0.01, step=0.0005), sliderInput("PT0", "PT0:", value = 5, min = 1, max = 10, step=1), sliderInput("Q0", "Q0:", value = 40, min = 10, max = 100, step=5), br() ) )), column(8, plotOutput("plot", height="500px")) )), tabPanel("Mlxtran", pre(includeText("ribba.txt"))), tabPanel("ui.R", pre(includeText("ui.R"))), tabPanel("server.R", pre(includeText("server.R"))) ) ))
#source("../../initMlxR.R") library(mlxR) shinyServer(function(input, output) { r <- reactive({ param.value=c(input$K,input$KDE,input$KPQ,input$KQPP,input$LAMBDAP,input$GAMMA,input$DELTAQP, input$PT0,input$Q0) t.value=seq(0,250) t1=input$tfd t2=input$ii*(input$nd-1)+t1 if (t2>=t1){ t.dose=seq(t1,t2,by=input$ii) adm <- list(time=t.dose, amount=input$amt) }else{ adm <- list(time=t1, amount=0) } f <- list(name=c('PSTAR'),time=t.value) p <- list(name=c('K','KDE','KPQ','KQPP','LAMBDAP','GAMMA','DELTAQP','PT0','Q0'), value=param.value) res <- simulx( model = 'ribba.txt', treatment = adm, parameter = p, output = f) return(res) }) output$plot <- renderPlot({ withProgress(message = 'Creating plot', detail='Wait...', value = 0.1, expr={ r=r() pl=ggplotmlx(data=r$PSTAR, aes(x=time, y=PSTAR)) + geom_line(size=0.75) print(pl) }) }) })