:orphan:
# TaoSetUp
Sets up the internal data structures for the later use of a Tao solver 
## Synopsis
```
#include "petsctao.h" 
PetscErrorCode TaoSetUp(Tao tao)
```
Collective


## Input Parameter

- ***tao -*** the `Tao` context





## Note
The user will not need to explicitly call `TaoSetUp()`, as it will
automatically be called in `TaoSolve()`.  However, if the user
desires to call it explicitly, it should come after `TaoCreate()`
and any TaoSetSomething() routines, but before `TaoSolve()`.


## See Also
 [](ch_tao), `Tao`, `TaoCreate()`, `TaoSolve()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/interface/taosolver.c.html#TaoSetUp">src/tao/interface/taosolver.c</A>

## Examples
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/constrained/tutorials/ex1.c.html">src/tao/constrained/tutorials/ex1.c</A><BR>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bncg/bncg.c.html#TaoSetUp_BNCG">TaoSetUp_BNCG in src/tao/bound/impls/bncg/bncg.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bnk/bnk.c.html#TaoSetUp_BNK">TaoSetUp_BNK in src/tao/bound/impls/bnk/bnk.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bnk/bntl.c.html#TaoSetUp_BNTL">TaoSetUp_BNTL in src/tao/bound/impls/bnk/bntl.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bnk/bntr.c.html#TaoSetUp_BNTR">TaoSetUp_BNTR in src/tao/bound/impls/bnk/bntr.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bqnk/bqnk.c.html#TaoSetUp_BQNK">TaoSetUp_BQNK in src/tao/bound/impls/bqnk/bqnk.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bqnk/bqnktl.c.html#TaoSetUp_BQNKTL">TaoSetUp_BQNKTL in src/tao/bound/impls/bqnk/bqnktl.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/bound/impls/bqnk/bqnktr.c.html#TaoSetUp_BQNKTR">TaoSetUp_BQNKTR in src/tao/bound/impls/bqnk/bqnktr.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/complementarity/impls/asls/asfls.c.html#TaoSetUp_ASFLS">TaoSetUp_ASFLS in src/tao/complementarity/impls/asls/asfls.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/complementarity/impls/asls/asils.c.html#TaoSetUp_ASILS">TaoSetUp_ASILS in src/tao/complementarity/impls/asls/asils.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/complementarity/impls/ssls/ssfls.c.html#TaoSetUp_SSFLS">TaoSetUp_SSFLS in src/tao/complementarity/impls/ssls/ssfls.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/complementarity/impls/ssls/ssils.c.html#TaoSetUp_SSILS">TaoSetUp_SSILS in src/tao/complementarity/impls/ssls/ssils.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/constrained/impls/admm/admm.c.html#TaoSetUp_ADMM">TaoSetUp_ADMM in src/tao/constrained/impls/admm/admm.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/constrained/impls/almm/almm.c.html#TaoSetUp_ALMM">TaoSetUp_ALMM in src/tao/constrained/impls/almm/almm.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/leastsquares/impls/brgn/brgn.c.html#TaoSetUp_BRGN">TaoSetUp_BRGN in src/tao/leastsquares/impls/brgn/brgn.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/leastsquares/impls/pounders/pounders.c.html#TaoSetUp_POUNDERS">TaoSetUp_POUNDERS in src/tao/leastsquares/impls/pounders/pounders.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/cg/taocg.c.html#TaoSetUp_CG">TaoSetUp_CG in src/tao/unconstrained/impls/cg/taocg.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/lmvm/lmvm.c.html#TaoSetUp_LMVM">TaoSetUp_LMVM in src/tao/unconstrained/impls/lmvm/lmvm.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/neldermead/neldermead.c.html#TaoSetUp_NM">TaoSetUp_NM in src/tao/unconstrained/impls/neldermead/neldermead.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/nls/nls.c.html#TaoSetUp_NLS">TaoSetUp_NLS in src/tao/unconstrained/impls/nls/nls.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/ntl/ntl.c.html#TaoSetUp_NTL">TaoSetUp_NTL in src/tao/unconstrained/impls/ntl/ntl.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/ntr/ntr.c.html#TaoSetUp_NTR">TaoSetUp_NTR in src/tao/unconstrained/impls/ntr/ntr.c</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/tao/unconstrained/impls/owlqn/owlqn.c.html#TaoSetUp_OWLQN">TaoSetUp_OWLQN in src/tao/unconstrained/impls/owlqn/owlqn.c</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/tao/interface/taosolver.c)


[Index of all Tao routines](index.md)  
[Table of Contents for all manual pages](/manualpages/index.md)  
[Index of all manual pages](/manualpages/singleindex.md)  
