jacobian {numDeriv} | R Documentation |
Calculate the m by n numerical approximation of the gradient of a real m-vector valued function with n-vector argument.
jacobian(func, x, method="Richardson", method.args=list(), ...) ## Default S3 method: jacobian(func, x, method="Richardson", method.args=list(eps=1e-4, d=0.0001, zero.tol=sqrt(.Machine$double.eps/7e-7), r=4, v=2, show.details=FALSE), ...)
func |
a function with a real (vector) result. |
x |
a real or real vector argument to func, indicating the point at which the gradient is to be calculated. |
method |
one of |
method.args |
arguments passed to method. See |
... |
any additional arguments passed to |
For f:R^n -> R^m calculate the m x n
Jacobian dy/dx.
The function jacobian
calculates a numerical approximation of the
first derivative of func
at the point x
. Any additional
arguments in ... are also passed to func
, but the gradient is not
calculated with respect to these additional arguments.
If method is "simple", the calculation is done using a simple epsilon
difference. For this case, only the methods.args
element eps
is used. If method is "Richardson", the calculation is done by
Richardson's extrapolation. See link{grad}
for more details.
A real m by n matrix.
func2 <- function(x) c(sin(x), cos(x)) x <- (0:1)*2*pi jacobian(func2, x)