Arguments
- formula
0 + trait | gstyle formula.- common
FALSE(default) for trait-specific variances;TRUEfor one shared variance across traits at this tier. For new standalone marginal code, preferindep(..., common = TRUE); for new paired ordinary intercept-only decompositions, preferlatent(..., common = TRUE).
Details
unique() is soft-deprecated as compatibility syntax in gllvmTMB 0.2.0.
Use indep() for standalone marginal diagonal tiers, including
indep(..., common = TRUE) for the scalar standalone marginal case.
Ordinary latent() now carries \(\boldsymbol\Psi\) by default, so paired
latent() + unique() remains accepted compatibility syntax. Removal is a
later API-change decision while the parser and source-specific exports
remain live. The
paired legacy unique(..., common = TRUE)
parsimony knob remains accepted, but new ordinary intercept-only code should
use latent(..., common = TRUE).
Canonical name for the trait-specific unique-variance covstruct
inside a gllvmTMB() formula. Formerly diag(0 + trait | g) –
same engine, new name. The new name avoids the clash with
base::diag(). The diag() keyword still works for backward compat
but emits a one-shot deprecation warning per session.
Compatibility spelling inside a gllvmTMB() formula:
New code can write the ordinary decomposition as latent() alone; the
explicit unique() companion is retained for compatibility.
This is a formula keyword – it's recognised by the parser inside
a gllvmTMB() formula's RHS but is never evaluated as a function
call. unique is not exported as an R function (because that
would shadow base::unique()); the parser handles the symbol
directly.
common = TRUE parsimony mode
For new standalone marginal fits where the trait-specific \(\sigma_S\)
estimates are weakly identified, write indep(..., common = TRUE) to fit a
single shared \(\sigma_S\) across all traits at this tier (one parameter
instead of T). Legacy standalone unique(..., common = TRUE) remains accepted
and objective-equivalent as compatibility syntax. Paired
latent() + unique(..., common = TRUE) also remains compatibility syntax; new
ordinary intercept-only decompositions can write
latent(..., common = TRUE) instead.
