Skip to contents

Access model fit diagnostics from an xpdb object generated by xposeNlme.

Usage

get_overallNlme(
  xpdb,
  .problem = 1,
  .subprob = 0,
  .method = NULL,
  conditionNumber = NULL
)

Arguments

xpdb

An xpose data base object from which the model output file data will be extracted. Only objects generated by xposeNlme are supported.

.problem

The problem to be used.

.subprob

The subproblem to be used.

.method

The estimation method to be used.

conditionNumber

Optional character; overrides the basis/scope used for the returned Condition (one of "CovarianceFixef", "CorrelationFixef", "CovarianceFull", "CorrelationFull", or the legacy aliases "Covariance" / "Correlation" - same vocabulary as Certara.RsNLME::engineParams(conditionNumber = ...)). NULL (the default) returns whatever basis was recorded at import time (see Details) unchanged. When supplied, this is computed lazily by re-reading the run's dmp.txt ("...Fixef" scopes) or Covariance.csv ("...Full" scopes) from the original run directory, which must still exist. A missing directory or a missing Covariance.csv for a "...Full" request warns and sets Condition to NA while still updating ConditionBasis to the requested label. An unrecognized string warns and leaves both columns unchanged. See Details for why "...Full" scopes need Covariance.csv specifically.

Value

A tibble for single problem/subproblem.

Details

This function returns only the Overall.csv fit-statistics table (for example objective function value, AIC, BIC, log-likelihood). It does not contain run metadata such as estimation settings or timing.

Condition and ConditionBasis report the reported-condition- number diagnostic (see engineParams(conditionNumber = ...) in Certara.RsNLME). ConditionBasis labels which basis/scope Condition actually reflects, e.g. "Correlation (full)" vs. "Covariance (fixed effects)". Actual-over-requested precedence (this is the value returned when conditionNumber is NULL): when the engine's own out.txt reports a value (any conditionNumber mode), it is used as-is; only when that is unavailable does this function fall back to an independent, theta-only, covariance-basis recompute (always labeled "Covariance (fixed effects)") - so Condition may not be comparable across rows/fits that used different conditionNumber modes unless ConditionBasis matches.

Passing conditionNumber forces a specific basis/scope instead, regardless of what the engine actually used, by recomputing from the raw covariance data. "...Fixef" scopes (fixed effects only) can always be recomputed from dmp.txt$varFix. "...Full" scopes (all free population parameters: fixed effects, free residual error, free Omega) require Covariance.csv specifically - dmp.txt does not carry the joint covariance needed, because dmp.txt$omegaSE is only the per-element standard error of each Omega entry, with no cross-covariance to fixed effects/error or between different Omega entries.

Run metadata lives in xpdb$summary (view it with summary(xpdb)). Two timing rows may appear there and are measured differently: runtime (and covtime) are engine-reported CPU times parsed from nlme7engine.log that sum across workers and can overstate the actual wait on multi-core runs, whereas runtime_wallclock is the elapsed wall-clock time captured from a self-describing Certara.RsNLME fit (via xposeNlmeModel()) and is generally smaller on multi-core runs. runtime_wallclock is never available on the file-based xposeNlme(dir = ...) path.

Examples

# Store the parameter table
prmOverall <- get_overallNlme(xpdb_ex_Nlme)