From 1bafc74d49d9d0aafa0cc8d757e972cd03b9d799 Mon Sep 17 00:00:00 2001 From: Oliver Sander <sander@igpm.rwth-aachen.de> Date: Wed, 18 Jun 2014 13:48:39 +0200 Subject: [PATCH] Tell IPOpt that the Hessian is constant The QuadraticIPOpt solver can only handle quadratic functionals with or without bound constraints. Hence the Hessian of the objective functional is constant. IPOpt has an option to tell it that the Hessian is constant. In that case, IPOpt imports the matrix only once, instead of at each iteration. Setting this option doesn't really seem to bring any performance benefits, though. --- dune/solvers/solvers/quadraticipopt.hh | 1 + 1 file changed, 1 insertion(+) diff --git a/dune/solvers/solvers/quadraticipopt.hh b/dune/solvers/solvers/quadraticipopt.hh index ff32c695..41837e4a 100644 --- a/dune/solvers/solvers/quadraticipopt.hh +++ b/dune/solvers/solvers/quadraticipopt.hh @@ -574,6 +574,7 @@ void QuadraticIPOptSolver<MatrixType,VectorType>::solve() app->Options()->SetIntegerValue("max_iter", this->maxIterations_); app->Options()->SetStringValue("mu_strategy", "adaptive"); app->Options()->SetStringValue("output_file", "ipopt.out"); + app->Options()->SetStringValue("hessian_constant", "yes"); switch (this->verbosity_) { case NumProc::QUIET: app->Options()->SetIntegerValue("print_level", 0); -- GitLab