A Parameter whose value is computed by a user-supplied callback
function rather than stored explicitly. Mirrors CVXPY's
cp.CallbackParam (cvxpy/expressions/constants/callback_param.py).
Usage
CallbackParam(
callback,
shape = c(1L, 1L),
name = NULL,
id = NULL,
latex_name = NULL,
...
)
Value
A CallbackParam object (subclass of Parameter).
Arguments
callback
A function (no arguments) returning the parameter's
numeric value. Re-evaluated on every read of value(param).
shape
Integer vector of length 1 or 2 giving parameter
dimensions. Defaults to c(1, 1) (scalar).
name
Optional character string name.
id
Optional integer ID. If NULL, a unique ID is generated.
latex_name
Optional LaTeX name for visualisation.
...
Other Parameter attributes (e.g., nonneg, nonpos).
DPP use
If p and q are scalar Parameters, the expression p * q is
not DPP. Wrapping it in a CallbackParam,
yields a DPP-compliant Parameter whose value tracks p and q
automatically.
Details
Each call to value(param) re-evaluates the callback and validates
the returned numeric against the parameter's shape and attribute
domain. Setting via value(param) <- v is not allowed and signals
an error.