aboutsummaryrefslogtreecommitdiff
path: root/man/memkin.Rd
blob: 8ae6100ab796754d500367b52c8006a325abab63 (plain) (blame)
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
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/memkin.R
\name{memkin}
\alias{memkin}
\title{Estimation of parameter distributions from mmkin row objects}
\usage{
memkin(object, random_spec = "auto", ...)
}
\arguments{
\item{object}{An mmkin row object containing several fits of the same model to different datasets}

\item{random_spec}{Either "auto" or a specification of random effects for \code{\link{nlme}}
given as a character vector}

\item{...}{Additional arguments passed to \code{\link{nlme}}}
}
\value{
An nlme object
}
\description{
This function sets up and attempts to fit a mixed effects model to
an mmkin row object which is essentially a list of mkinfit objects
that have been obtained by fitting the same model to a list of
datasets.
}
\examples{
sampling_times = c(0, 1, 3, 7, 14, 28, 60, 90, 120)
m_SFO <- mkinmod(parent = mkinsub("SFO"))
d_SFO_1 <- mkinpredict(m_SFO,
  c(k_parent_sink = 0.1),
  c(parent = 98), sampling_times)
d_SFO_1_long <- mkin_wide_to_long(d_SFO_1, time = "time")
d_SFO_2 <- mkinpredict(m_SFO,
  c(k_parent_sink = 0.05),
  c(parent = 102), sampling_times)
d_SFO_2_long <- mkin_wide_to_long(d_SFO_2, time = "time")
d_SFO_3 <- mkinpredict(m_SFO,
  c(k_parent_sink = 0.02),
  c(parent = 103), sampling_times)
d_SFO_3_long <- mkin_wide_to_long(d_SFO_3, time = "time")

d1 <- add_err(d_SFO_1, function(value) 3, n = 1)
d2 <- add_err(d_SFO_2, function(value) 2, n = 1)
d3 <- add_err(d_SFO_3, function(value) 4, n = 1)
ds <- c(d1 = d1, d2 = d2, d3 = d3)

f <- mmkin("SFO", ds)
x <- memkin(f)
summary(x)

ds_2 <- lapply(experimental_data_for_UBA_2019[6:10],
 function(x) x$data[c("name", "time", "value")])
m_sfo_sfo <- mkinmod(parent = mkinsub("SFO", "A1"),
  A1 = mkinsub("SFO"), use_of_ff = "min")
m_sfo_sfo_ff <- mkinmod(parent = mkinsub("SFO", "A1"),
  A1 = mkinsub("SFO"), use_of_ff = "max")
m_fomc_sfo <- mkinmod(parent = mkinsub("FOMC", "A1"),
  A1 = mkinsub("SFO"))
m_dfop_sfo <- mkinmod(parent = mkinsub("DFOP", "A1"),
  A1 = mkinsub("SFO"))
m_sforb_sfo <- mkinmod(parent = mkinsub("SFORB", "A1"),
  A1 = mkinsub("SFO"))

f_2 <- mmkin(list("SFO-SFO" = m_sfo_sfo,
 "SFO-SFO-ff" = m_sfo_sfo_ff,
 "FOMC-SFO" = m_fomc_sfo,
 "DFOP-SFO" = m_dfop_sfo,
 "SFORB-SFO" = m_sforb_sfo),
  ds_2)

f_nlme_sfo_sfo <- memkin(f_2[1, ])
f_nlme_sfo_sfo_2 <- memkin(f_2[1, ], "pdDiag(parent_0 + log_k_parent_sink + log_k_parent_A1 + log_k_A1_sink ~ 1)") # explicit
f_nlme_sfo_sfo_3 <- memkin(f_2[1, ], "pdDiag(parent_0 + log_k_parent_sink + log_k_parent_A1 ~ 1)") # reduced
f_nlme_sfo_sfo_4 <- memkin(f_2[1, ], "pdDiag(parent_0 + log_k_parent_sink ~ 1)") # further reduced
\dontrun{
  f_nlme_sfo_sfo_ff <- memkin(f_2[2, ]) # does not converge with maxIter = 50
}
f_nlme_fomc_sfo <- memkin(f_2[3, ])
\dontrun{
  f_nlme_dfop_sfo <- memkin(f_2[4, ])  # apparently underdetermined
  f_nlme_sforb_sfo <- memkin(f_2[5, ]) # also does not converge
}
anova(f_nlme_fomc_sfo, f_nlme_sfo_sfo, f_nlme_sfo_sfo_4)
}

Contact - Imprint