I would like to learn how optim(..., hessian=TRUE)
computes a Hessian, so I took a look at the function\'s definition. Near its end, it includes this call to
Notice that C_optimhess
is an object, not a string.
> stats:::C_optimhess
$name
[1] "optimhess"
$address
attr(,"class")
[1] "RegisteredNativeSymbol"
$dll
DLL name: stats
Filename: /usr/lib/R/library/stats/libs/stats.so
Dynamic lookup: FALSE
$numParameters
[1] 4
attr(,"class")
[1] "ExternalRoutine" "NativeSymbolInfo"
So you need to grep for "optimhess" in $R_SOURCE_DIR/src/library/stats/src/
:
josh@compy: $R_SOURCE_DIR/src/library/stats/src
> grep optimhess *
init.c: EXTDEF(optimhess, 4),
optim.c:SEXP optimhess(SEXP call, SEXP op, SEXP args, SEXP rho)
statsR.h:SEXP optimhess(SEXP call, SEXP op, SEXP args, SEXP rho);