This function calls mkinfit on all combinations of models and datasets specified in its first two arguments.

mmkin(models, datasets,
      cores = round(detectCores()/2), cluster = NULL, ...)

Arguments

models

Either a character vector of shorthand names ("SFO", "FOMC", "DFOP", "HS", "SFORB"), or an optionally named list of mkinmod objects.

datasets

An optionally named list of datasets suitable as observed data for mkinfit.

cores

The number of cores to be used for multicore processing. This is only used when the cluster argument is NULL.

cluster

A cluster as returned by makeCluster to be used for parallel execution.

Further arguments that will be passed to mkinfit.

Value

A matrix of mkinfit objects that can be indexed using the model and dataset names as row and column indices.

See also

[.mmkin for subsetting, plot.mmkin for plotting.

Examples

m_synth_SFO_lin <- mkinmod(parent = mkinsub("SFO", "M1"), M1 = mkinsub("SFO", "M2"), M2 = mkinsub("SFO"), use_of_ff = "max")
#> Successfully compiled differential equation model from auto-generated C code.
m_synth_FOMC_lin <- mkinmod(parent = mkinsub("FOMC", "M1"), M1 = mkinsub("SFO", "M2"), M2 = mkinsub("SFO"), use_of_ff = "max")
#> Successfully compiled differential equation model from auto-generated C code.
models <- list(SFO_lin = m_synth_SFO_lin, FOMC_lin = m_synth_FOMC_lin) datasets <- lapply(synthetic_data_for_UBA_2014[1:3], function(x) x$data) names(datasets) <- paste("Dataset", 1:3) time_default <- system.time(fits.0 <- mmkin(models, datasets, quiet = TRUE)) time_1 <- system.time(fits.4 <- mmkin(models, datasets, cores = 1, quiet = TRUE))
#> Warning: Optimisation by method Port did not converge. #> Convergence code is 1
#> Warning: Optimisation by method Port did not converge. #> Convergence code is 1
time_default
#> user system elapsed #> 15.992 0.188 11.440
time_1
#> user system elapsed #> 24.576 0.000 24.578
endpoints(fits.0[["SFO_lin", 2]])
#> $ff #> parent_M1 parent_sink M1_M2 M1_sink #> 0.7340479 0.2659521 0.7505687 0.2494313 #> #> $SFORB #> logical(0) #> #> $distimes #> DT50 DT90 #> parent 0.8777689 2.915885 #> M1 2.3257456 7.725960 #> M2 33.7200862 112.015702 #>
# plot.mkinfit handles rows or columns of mmkin result objects plot(fits.0[1, ])
plot(fits.0[1, ], obs_var = c("M1", "M2"))
plot(fits.0[, 1])
# Use double brackets to extract a single mkinfit object, which will be plotted # by plot.mkinfit and can be plotted using plot_sep plot(fits.0[[1, 1]], sep_obs = TRUE, show_residuals = TRUE, show_errmin = TRUE)
plot_sep(fits.0[[1, 1]]) # Plotting with mmkin (single brackets, extracting an mmkin object) does not # allow to plot the observed variables separately plot(fits.0[1, 1])