TaoTermComputeHessianFD#
Use finite difference to compute Hessian matrix.
Synopsis#
#include "petsctao.h"
PetscErrorCode TaoTermComputeHessianFD(TaoTerm term, Vec x, Vec params, Mat H, Mat Hpre)
Collective
Input Parameters#
term - a
TaoTermx - a solution vector
params - parameters vector (may be
NULL, seeTaoTermParametersMode)
Output Parameters#
H - (optional) Hessian matrix
Hpre - (optional) Hessian preconditioning matrix
Options Database Keys#
-tao_term_fd_delta
- change in X used to calculate finite differences-tao_term_hessian_use_fd
- UseTaoTermComputeHessianFD()inTaoTermComputeHessian()
Notes#
This routine is slow and expensive, and is not optimized to take advantage of
sparsity in the problem. Although not recommended for general use in
large-scale applications, it can be useful in checking the correctness of a
user-provided Hessian. Call TaoTermComputeHessianSetUseFD() to start using
this routine in TaoTermComputeHessian().
See Also#
TaoTerm: composable objective function terms,
TaoTerm,
TaoTermComputeHessian(),
TaoTermGetFDDelta(),
TaoTermSetFDDelta(),
TaoTermComputeHessianSetUseFD(),
TaoTermComputeHessianGetUseFD()
Level#
advanced
Location#
src/tao/term/utils/taotermfdiff.c
Index of all TaoTerm routines
Table of Contents for all manual pages
Index of all manual pages