Skip to contents

Bridges a drm_pair() declaration onto the shipped pieces: two drm_node() specifications (the marginal response sub-nodes) and the covary() covariance edges (residual rho12 plus any higher-level corpair). This is the documented hook point for the 0.4 engine lane — a joint bivariate drmTMB fit replaces the two independent node fits, while the covariance edges and accessors stay the same. Building the drm_node() objects wraps each plain formula with drmTMB::bf(), so this needs drmTMB available; the declaration itself (drm_pair()) and the accessors do not.

Usage

drm_expand_pair(pair)

Arguments

pair

A drm_pair object.

Value

A list with nodes (named list of drm_node) and covariances (list of drm_covary).

See also

Examples

# The declaration itself needs no engine.
pair <- drm_pair(
  activity ~ x + (1 | id),
  boldness ~ x + (1 | id),
  rho12 = ~ x
)
if (FALSE) { # \dontrun{
# Expansion builds the marginal sub-nodes with drmTMB::bf(), so it needs
# drmTMB available.
expanded <- drm_expand_pair(pair)
names(expanded$nodes)   # the two marginal response sub-nodes
expanded$covariances    # the residual rho12 (+ any corpair) edges
} # }