20 #ifndef LIBMESH_TAO_OPTIMIZATION_SOLVER_H 21 #define LIBMESH_TAO_OPTIMIZATION_SOLVER_H 26 #if defined(LIBMESH_HAVE_PETSC_TAO) && !defined(LIBMESH_USE_COMPLEX_NUMBERS) 81 virtual void clear ()
override;
86 virtual void init ()
override;
96 virtual void solve ()
override;
154 #endif // #if defined(LIBMESH_HAVE_PETSC_TAO) && !defined(LIBMESH_USE_COMPLEX_NUMBERS) 155 #endif // LIBMESH_TAO_OPTIMIZATION_SOLVER_H PetscErrorCode __libmesh_tao_objective(Tao, Vec x, PetscReal *objective, void *ctx)
friend PetscErrorCode __libmesh_tao_inequality_constraints(Tao tao, Vec x, Vec cineq, void *ctx)
PetscErrorCode __libmesh_tao_equality_constraints_jacobian(Tao, Vec x, Mat J, Mat Jpre, void *ctx)
virtual void solve() override
friend PetscErrorCode __libmesh_tao_hessian(Tao tao, Vec x, Mat h, Mat pc, void *ctx)
OptimizationSystem sys_type
friend PetscErrorCode __libmesh_tao_equality_constraints(Tao tao, Vec x, Vec ce, void *ctx)
virtual int get_converged_reason() override
PetscErrorCode __libmesh_tao_gradient(Tao, Vec x, Vec g, void *ctx)
virtual void print_converged_reason() override
friend PetscErrorCode __libmesh_tao_equality_constraints_jacobian(Tao tao, Vec x, Mat J, Mat Jpre, void *ctx)
TaoOptimizationSolver(sys_type &system)
friend PetscErrorCode __libmesh_tao_inequality_constraints_jacobian(Tao tao, Vec x, Mat J, Mat Jpre, void *ctx)
friend PetscErrorCode __libmesh_tao_objective(Tao tao, Vec x, PetscReal *objective, void *ctx)
friend PetscErrorCode __libmesh_tao_gradient(Tao tao, Vec x, Vec g, void *ctx)
PetscErrorCode __libmesh_tao_inequality_constraints_jacobian(Tao, Vec x, Mat J, Mat Jpre, void *ctx)
const sys_type & system() const
TaoConvergedReason _reason
virtual void clear() override
PetscErrorCode __libmesh_tao_hessian(Tao, Vec x, Mat h, Mat pc, void *ctx)
PetscErrorCode __libmesh_tao_equality_constraints(Tao, Vec x, Vec ce, void *ctx)
virtual void init() override
PetscErrorCode __libmesh_tao_inequality_constraints(Tao, Vec x, Vec cineq, void *ctx)
virtual void get_dual_variables() override