Skip to main content
`Ctrl`+`K`

# TaoSubsetType

Type representing the way the `Tao` solvers handle active sets

## Synopsis

    typedef enum {
      TAO_SUBSET_SUBVEC,
      TAO_SUBSET_MASK,
      TAO_SUBSET_MATRIXFREE
    } TaoSubsetType;

## Values

- `TAO_SUBSET_SUBVEC` - Tao uses `MatCreateSubMatrix()` and `VecGetSubVector()`

- `TAO_SUBSET_MASK` - Matrices are zeroed out corresponding to active set entries

- `TAO_SUBSET_MATRIXFREE` - Same as `TAO_SUBSET_MASK` but it can be applied to matrix-free operators

## Options database Key

- -different_hessian - `Tao` will use a copy of the Hessian operator for masking. By default `Tao` will directly alter the Hessian operator.

## See Also

TAO: Optimization Solvers, `TaoVecGetSubVec()`, `TaoMatGetSubMat()`, `Tao`, `TaoCreate()`, `TaoDestroy()`, `TaoSetType()`, `TaoType`

## Level

intermediate

## Location

include/petsctao.h

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