[ADOL-C] Can adolc compute Hessian with m>1

Kshitij Kulshreshtha kshitij at math.upb.de
Mon Jun 11 04:51:36 EDT 2012


On 06/09/12 18:14, 周恺 wrote:
> Dear Professors,
>         The hessian(tag,n,x,H) function only computes the normal hessian
> with m=1; But in our case, instead of just one value, f(x) is a vector.
> So I want to have a 3-d m*n*n Hessian. What should I do with adolc?
>         Regards!
> 
> 

Hello,

in this case you can either use the lagra_hess_vec function to compute
u^T H v where H is the hessian tensor, v is a tangent direction in R^n
and u is a adjoint direction in R^m. This is what one typically needs
when such a hessian occurs in any algorithm for nonlinear optimization.

The other possibility is to use forward or reverse functions in a loop
to get your hessian tensor in slices.

-- 
Dr. Kshitij Kulshreshtha

Institut für Mathematik,
Universität Paderborn,
Warburger Straße 100,
33098 Paderborn.

Büro: A3.235

Privatanschrift:
Arnikaweg 62
33100 Paderborn.


More information about the ADOL-C mailing list