So-Bogus
A c++ sparse block matrix library aimed at Second Order cone problems
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
LocalSOCSolver.hpp
1 /*
2  * This file is part of So-bogus, a C++ sparse block matrix library and
3  * Second Order Cone solver.
4  *
5  * Copyright 2013 Gilles Daviet <gdaviet@gmail.com>
6  *
7  * So-bogus is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 2 of the License, or
10  * (at your option) any later version.
11 
12  * So-bogus is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16 
17  * You should have received a copy of the GNU General Public License
18  * along with So-bogus. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 
22 #ifndef BOGUS_LOCAL_SOC_SOLVER_HPP
23 #define BOGUS_LOCAL_SOC_SOLVER_HPP
24 
25 #include "../SecondOrder.fwd.hpp"
26 
27 namespace bogus {
28 
29 
30 template< DenseIndexType Dimension, typename Scalar, bool DeSaxceCOV,
33 {
34 
36  typedef typename Traits::Vector Vector ;
37  typedef typename Traits::Matrix Matrix ;
38 
39  static Scalar solve(
40  const typename Traits::Matrix &A,
41  const typename Traits::Vector &b,
42  typename Traits::Vector &x,
43  const Scalar mu, const Scalar tol,
44  const Scalar scaling = 1
45  ) ;
46 
47 } ;
48 
49 }
50 
51 #endif
Strategy
Strategy to be used by the local SOC solver.
Definition: SecondOrder.fwd.hpp:36
Definition: EigenProblemTraits.hpp:38
Newton algorithm, then Enumerative as failsafe.
Definition: SecondOrder.fwd.hpp:41
Definition: LocalSOCSolver.hpp:32