Files
matlab/RBM/UFLDL/common/minFunc_2012/autoDif/autoHv.m
T
jens 7b34529b24 imported RBM
git-svn-id: http://moon:8086/svn/matlab/trunk@91 801c6759-fa7c-4059-a304-17956f83a07c
2016-07-12 11:24:12 +00:00

13 lines
371 B
Matlab

function [Hv] = autoHv(v,x,g,useComplex,funObj,varargin)
% [Hv] = autoHv(v,x,g,useComplex,funObj,varargin)
%
% Numerically compute Hessian-vector product H*v of funObj(x,varargin{:})
% based on gradient values
if useComplex
mu = 1e-150i;
else
mu = 2*sqrt(1e-12)*(1+norm(x))/norm(v);
end
[f,finDif] = funObj(x + v*mu,varargin{:});
Hv = (finDif-g)/mu;