fit_inactivation_MCMC {bioinactivation} | R Documentation |
Fits the parameters of an inactivation model to experimental using
the Markov Chain Monte Carlo fitting algorithm implemented in
the function modMCMC
of the package FME
.
fit_inactivation_MCMC(experiment_data, simulation_model, temp_profile,
starting_points, upper_bounds, lower_bounds, known_params, ...,
minimize_log = TRUE, tol0 = 1e-05)
experiment_data |
data frame with the experimental data to be adjusted. It must have a column named “time” and another one named “N”. |
simulation_model |
character identifying the model to be used. |
temp_profile |
data frame with discrete values of the temperature for
each time. It must have one column named |
starting_points |
starting values of the parameters for the adjustment. |
upper_bounds |
named numerical vector defining the upper bounds of the parameters for the adjustment. |
lower_bounds |
named numerical vector defining the lower bounds of the parameters for the adjustment. |
known_params |
named numerical vector with the fixed (i.e., not adjustable) model parameters. |
... |
other arguments for |
minimize_log |
logical. If |
tol0 |
numeric. Observations at time 0 make Weibull-based models singular. The time for observatins taken at time 0 are changed for this value. |
A list of class FitInactivationMCMC
with the following items:
modMCMC
: a list of class modMCMC
with the
information of the adjustment process.
best_prediction: a list of class SimulInactivation
with the prediction generated by the best predictor.
data: a data frame with the data used for the fitting.
## EXAMPLE 1 ------
data(dynamic_inactivation) # The example data set is used.
get_model_data() # Retrieve the valid model keys.
simulation_model <- "Peleg" # Peleg's model will be used
model_data <- get_model_data(simulation_model)
model_data$parameters # Set the model parameters
dummy_temp <- data.frame(time = c(0, 1.25, 2.25, 4.6),
temperature = c(70, 105, 105, 70)) # Dummy temp. profile
## Set known parameters and initial points/bounds for unknown ones
known_params = c(temp_crit = 100)
starting_points <- c(n = 1, k_b = 0.25, N0 = 1e+05)
upper_bounds <- c(n = 2, k_b = 1, N0 = 1e6)
lower_bounds <- c(n = 0.5, k_b = 0.1, N0 = 1e4)
MCMC_fit <- fit_inactivation_MCMC(dynamic_inactivation, simulation_model,
dummy_temp, starting_points,
upper_bounds, lower_bounds,
known_params,
niter = 100)
# It is recommended to increase niter
plot(MCMC_fit)
goodness_of_fit(MCMC_fit)
## END EXAMPLE 1 -----