Lines Matching refs:routine
42 of code as well as the (essential) code required for the routine
103 in each file that uses a routine in the TAO libraries.
113 routine. Much like creating PETSc vector and matrix objects, the first
125 The routine
155 command. This routine frees the internal data structures used by the
167 routine. This command also provides information about runtime options
188 routine. When using this routine, the application should initialize the
198 routine. This routine takes the address of a `Vec` in the second
211 application developer, passed into a routine also written by the
212 application developer, and used within the routine to perform its stated
215 For example, a routine that evaluates an objective function may need
219 arguments in the routine. The address of this structure will be cast as
220 type `(void*)` and passed to the routine in the final argument. Many
225 information needed by TAO appears in the arguments of the routine, while
253 argument is an application context. This routine should use the third
257 This routine, and the application context, should be passed to the
264 routine. The first argument in this routine is the TAO solver object,
265 the second argument is a function pointer to the routine that evaluates
269 to the developer in the fourth argument of the routine that evaluates
270 the objective. In this routine, the pointer can be cast back to the
285 third argument in this routine is different from the arguments in the
286 routine for evaluating the objective function. The numbers in the
287 gradient vector have no meaning when passed into this routine, but they
289 the end of the routine. This routine, and the user-defined pointer, can
296 routine. In this routine, the first argument is the Tao object, the second
303 gradient in the same routine. In fact, some solvers are more efficient
305 routine. These routines should follow the form
316 routine should be set with the call
337 The routine that evaluates the Hessian should have the form
343 where the first argument of this routine is a TAO solver object. The
351 set the Hessian matrix and linear solver in the routine
354 One can set the Hessian evaluation routine by calling the
360 routine. The first argument is the TAO Solver object. The second and
392 routine to
410 Hessian evaluation routine need not be conventional matrices; instead,
466 routine for evaluating $c_e(x)$ at a given vector of optimization
525 routine. We discuss several universal options below.
554 tolerances, but they can be changed by using the routine
569 To see parameters and performance statistics for the solver, the routine
575 can be used. This routine will display to standard output the number of
582 customized, the default monitoring routine will print out several
614 customized monitoring routine or after the solver has terminated.
661 be specified in a routine, written by the user, that evaluates
662 $g(x)$. The routine that evaluates the constraint equations
669 The first argument of this routine is a TAO solver object. The second
673 context. This routine and the user-defined context should be set in the
682 third argument is a function point to the routine for evaluating the
753 routine. If required by the algorithm, the Jacobian of the residual,
767 routine.
776 specified in a routine written by the user with the form
782 that evaluates $C(X)$. The first argument of this routine is a TAO
788 This routine and the user-defined context must be registered with TAO by
797 third argument is the user-defined routine that evaluates $C(X)$,
804 evaluation of the Jacobian of $C$ should be performed in a routine
820 in the routine `KSPSetOperators()`.
822 This routine should be specified to TAO by using the
868 routine is available, then the Newton line search and Newton
870 routine is not available, then the limited-memory, variable-metric
2401 should be provided to Tao using `TaoSetJacobianResidual()` routine.
2604 storing the separable objective function, and a routine for evaluating
2836 $x$. The algorithm only requires a routine which, given an
2927 The routine `mon` indicates a user-defined monitoring routine, and
2929 the monitor routine.
2931 The routine set by `TaoMonitorSet()` is called once during each
2933 routine for any application-specific computations that should be done
2953 Within this routine, the solver can be queried for the solution vector,
2963 The second argument of this command is the convergence routine, and the
2964 final argument of the convergence test routine denotes an optional
2965 user-defined context for private data. The convergence routine receives
2967 be set by using the routine
3103 All TAO solvers have a routine that accepts a TAO structure and computes
3104 a solution. TAO will call this routine when the application program uses
3105 the routine `TaoSolve()` and will pass to the solver information about
3165 The first line of this routine casts the second argument to a pointer to
3171 routine `TaoComputeObjectiveAndGradient()`. Other routines may be used
3180 a measure of infeasibility to TAO with the routine
3189 this command somewhere in each iteration. This routine records this
3191 set by default or the user. In this routine, the second argument is the
3205 After this monitoring routine, the solver computes a step direction
3212 provides several line searches and support for using them. The routine
3235 routine. This routine sets default convergence tolerances, creates a
3237 this solver. For example, the routine that creates the nonlinear
3273 This routine declares some variables and then allocates memory for the
3278 This routine also sets some default parameters particular to the
3281 the routine that solves the problem, but specifying them here gives the
3289 this routine. These macros are required to preserve the name of this
3294 Another routine needed by most solvers destroys the data structures
3296 discussed earlier, the following routine destroys the two work vectors
3316 This routine is called from within the `TaoDestroy()` routine. Only
3317 algorithm-specific data objects are destroyed in this routine; any
3320 algorithm-specific destroy routine completes.
3324 If the SetUp routine has been set by the initialization routine, TAO
3325 will call it during the execution of `TaoSolve()`. While this routine
3347 The SetFromOptions routine should be used to check for any
3366 The View routine should be used to output any algorithm-specific
3367 information or statistics at the end of a solve. This routine will be
3390 can use the routine
3401 of the routine that creates the solver (in our case, `TaoCreate_CG`),
3402 and `create` is a pointer to that creation routine. If one is using