diff --git a/dune/solvers/solvers/quadraticipopt.hh b/dune/solvers/solvers/quadraticipopt.hh index 391d0622a23e007a7699327f9a4e9a869e0c753c..6bd1f026dfa50a8f53d3986235678fb74519dfdb 100644 --- a/dune/solvers/solvers/quadraticipopt.hh +++ b/dune/solvers/solvers/quadraticipopt.hh @@ -644,7 +644,7 @@ public: QuadraticIPOptSolver () : IterativeSolver<VectorType>(1e-8, 100, NumProc::FULL), hessian_(NULL), rhs_(NULL), obstacles_(NULL), - linearSolverType_("ma27"), + linearSolverType_(""), constraintObstacles_(nullptr),constraintMatrix_(nullptr) {} @@ -653,7 +653,7 @@ public: VectorType& x, const VectorType& rhs, NumProc::VerbosityMode verbosity=NumProc::FULL, - std::string linearSolverType = "ma27") + std::string linearSolverType = "") : IterativeSolver<VectorType>(1e-8, 100, verbosity), hessian_(&hessian), rhs_(&rhs), obstacles_(NULL), linearSolverType_(linearSolverType), @@ -724,7 +724,8 @@ void QuadraticIPOptSolver<MatrixType,VectorType,JacobianType>::solve() app->Options()->SetNumericValue("tol", this->tolerance_); app->Options()->SetIntegerValue("max_iter", this->maxIterations_); app->Options()->SetStringValue("mu_strategy", "adaptive"); - app->Options()->SetStringValue("linear_solver",linearSolverType_); + if (linearSolverType_!="") + app->Options()->SetStringValue("linear_solver",linearSolverType_); app->Options()->SetStringValue("output_file", "ipopt.out"); app->Options()->SetStringValue("hessian_constant", "yes");