Exceptions to drop-in replacement: 1. don't require that the attributes are in the same order 2. don't require that the r version returns everything that the tmb version does (e.g. flexmodel) 3. don't require that the row.names are identical (is this ok? the r version counts iterations with skips, but is this informative?) 4. don't require that the call is identical (obvious i guess, but being exhaustive) 5. don't look for parameter called S0 in classic simulation results (FIXME: this one might not be necessary anymore) 6. don't require the ordering of params_timevar rows to be the same (FIXME: this should probably be handled in run_sim itself)

compare_sims(
  classic_sim,
  tmb_sim,
  tolerance = NULL,
  compare_attr = TRUE,
  na_is_zero = FALSE
)

compare_sims_cbind(classic_sim, tmb_sim, index)

compare_sims_plot(...)

compare_sims_diffmat(classic_sim, tmb_sim, state, op = `-`)

compare_sims_unlist(classic_sim, tmb_sim, tolerance = testthat_tolerance())

Arguments

classic_sim

result of `run_sim` without using TMB

tmb_sim

result of `run_sim` using TMB

tolerance

numerical tolerance

compare_attr

compare attributes or just the simulations themselves

na_is_zero

should NAs be replaced with zeros?

index

length-one vector for extracting the simulated variable to be compared

...

Arguments passed on to compare_sims_cbind

state

vector of state names to compare

op

binary comparison operator

See also

Other compare: compare_grads(), time_wrap()