TaoDefaultComputeGradient#

computes the gradient using finite differences.

Synopsis#

#include "petsctao.h"  
PetscErrorCode TaoDefaultComputeGradient(Tao tao, Vec Xin, Vec G, void *dummy)

Collective

Input Parameters#

  • tao - the Tao context

  • Xin - compute gradient at this point

  • dummy - not used

Output Parameter#

  • G - Gradient Vector

Options Database Key#

  • -tao_fd_gradient - activates TaoDefaultComputeGradient()

  • -tao_fd_delta delta - change in X used to calculate finite differences

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 gradient using the command-line option -tao_test_gradient This finite difference gradient evaluation can be set using the routine TaoSetGradient() or by using the command line option -tao_fd_gradient

See Also#

Tao, TaoSetGradient(), TaoTermComputeGradientFD()

Level#

advanced

Location#

src/tao/interface/fdiff.c


Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages