Skip to main content
`Ctrl`+`K`

# TaoTermIsObjectiveDefined

Whether a standalone objective operation is defined for this `TaoTerm`

## Synopsis

    #include "petsctao.h"
    PetscErrorCode TaoTermIsObjectiveDefined(TaoTerm term, PetscBool *is_defined)

Not collective

## Input Parameter

- term - a `TaoTerm`

## Output Parameter

- is_defined - whether the objective is defined

## Note

This function strictly checks whether a dedicated objective operation is defined. It does not check whether the objective could be computed via other operations (e.g., an objective-and-gradient callback). `TaoTermComputeObjective()` may still succeed even if this function returns `PETSC_FALSE`, by falling back to `TaoTermComputeObjectiveAndGradient()`.

## See Also

TaoTerm: composable objective function terms, `TaoTerm`, `TaoTermComputeObjective()`, `TaoTermShellSetObjective()`, `TaoTermIsGradientDefined()`, `TaoTermIsObjectiveAndGradientDefined()`, `TaoTermIsHessianDefined()`

## Level

developer

## Location

src/tao/term/interface/taoterm.c

## Implementations

TaoTermIsObjectiveDefined_Callbacks() in src/tao/term/impls/callbacks/taotermcallbacks.c

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