-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomputeSS_1var.r
101 lines (86 loc) · 3.01 KB
/
computeSS_1var.r
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
computeSS_plasconc <- function(X) {
# initial guess values
amtgut0 <- 4.37500
conc_plas0 <- 4.206262
conc_inter0 <- 4.206262
conc_muscle0 <- 130.1553
init_guess <- c(amt_gut = amtgut0,
conc_plas = conc_plas0,
conc_inter = conc_inter0,
conc_muscle = conc_muscle0)
one_par <- function(i){
ST <- stode(init_guess, time = 0, func = model_eqns_baseSS,
parms = X[i, ])
return(ST$y)
}
res_per_par <- sapply(1:nrow(X), one_par, simplify = TRUE)
res_per_state <- aperm(res_per_par)
dimnames(res_per_state) <- list(NULL, names(init_guess))
plas_conc_vals <- res_per_state[,2]
#print('warning: only doing plasma conc!')
return(plas_conc_vals)
}
computeSS_interconc <- function(X) {
# initial guess values
amtgut0 <- 4.37500
conc_plas0 <- 4.206262
conc_inter0 <- 4.206262
conc_muscle0 <- 130.1553
init_guess <- c(amt_gut = amtgut0,
conc_plas = conc_plas0,
conc_inter = conc_inter0,
conc_muscle = conc_muscle0)
one_par <- function(i){
ST <- stode(init_guess, time = 0, func = model_eqns_baseSS,
parms = X[i, ])
return(ST$y)
}
res_per_par <- sapply(1:nrow(X), one_par, simplify = TRUE)
res_per_state <- aperm(res_per_par)
dimnames(res_per_state) <- list(NULL, names(init_guess))
inter_conc_vals <- res_per_state[,3]
# print('warning: only doing plasma conc!')
return(inter_conc_vals)
}
computeSS_amtgut <- function(X) {
# initial guess values
amtgut0 <- 4.37500
conc_plas0 <- 4.206262
conc_inter0 <- 4.206262
conc_muscle0 <- 130.1553
init_guess <- c(amt_gut = amtgut0,
conc_plas = conc_plas0,
conc_inter = conc_inter0,
conc_muscle = conc_muscle0)
one_par <- function(i){
ST <- stode(init_guess, time = 0, func = model_eqns_baseSS,
parms = X[i, ])
return(ST$y)
}
res_per_par <- sapply(1:nrow(X), one_par, simplify = TRUE)
res_per_state <- aperm(res_per_par)
dimnames(res_per_state) <- list(NULL, names(init_guess))
amtgut_vals <- res_per_state[,1]
return(amtgut_vals)
}
computeSS_muscleconc <- function(X) {
# initial guess values
amtgut0 <- 4.37500
conc_plas0 <- 4.206262
conc_inter0 <- 4.206262
conc_muscle0 <- 130.1553
init_guess <- c(amt_gut = amtgut0,
conc_plas = conc_plas0,
conc_inter = conc_inter0,
conc_muscle = conc_muscle0)
one_par <- function(i){
ST <- stode(init_guess, time = 0, func = model_eqns_baseSS,
parms = X[i, ])
return(ST$y)
}
res_per_par <- sapply(1:nrow(X), one_par, simplify = TRUE)
res_per_state <- aperm(res_per_par)
dimnames(res_per_state) <- list(NULL, names(init_guess))
muscleconc_vals <- res_per_state[,4]
return(muscleconc_vals)
}