nimDerivs {nimble} | R Documentation |
Nimble Derivatives
Description
Computes the value, 1st order (Jacobian), and 2nd order (Hessian) derivatives of a given
nimbleFunction
method and/or model log probabilities
Usage
nimDerivs(call = NA, wrt = NULL, order = nimC(0, 1, 2), model = NA, ...)
Arguments
call |
a call to a |
wrt |
a character vector of either: names of function arguments
(if taking derivatives of a |
order |
an integer vector with values within the set |
model |
(optional) for derivatives of a nimbleFunction that involves model.
calculations, the uncompiled model that is used. This is needed in order
to be able to correctly restore values into the model when |
... |
additional arguments intended for internal use only. |
Details
Derivatives for uncompiled nimbleFunctions are calculated using the
numDeriv
package. If this package is not installed, an error will
be issued. Derivatives for matrix valued arguments will be returned in
column-major order.
Value
a nimbleList
with elements value
, jacobian
,
and hessian
.
Examples
## Not run:
model <- nimbleModel(code = ...)
calcDerivs <- nimDerivs(model$calculate(model$getDependencies('x')),
wrt = 'x')
## End(Not run)