MAiNGO
ubpStructure.h
Go to the documentation of this file.
1 /**********************************************************************************
2  * Copyright (c) 2019 Process Systems Engineering (AVT.SVT), RWTH Aachen University
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License 2.0 which is available at
6  * http://www.eclipse.org/legal/epl-2.0.
7  *
8  * SPDX-License-Identifier: EPL-2.0
9  *
10  **********************************************************************************/
11 
12 #pragma once
13 
14 #include "constraint.h"
15 
16 #include <utility>
17 #include <vector>
18 
19 
20 namespace maingo {
21 
22 
23 namespace ubp {
24 
25 
30 struct UbpStructure {
31 
32  //For information on sparsity structure see https://www.coin-or.org/Ipopt/documentation/node38.html
33  unsigned nnonZeroJac;
34  unsigned nnonZeroHessian;
35  std::vector<unsigned> nonZeroJacIRow;
36  std::vector<unsigned> nonZeroJacJCol;
37  std::vector<unsigned> nonZeroHessianIRow;
38  std::vector<unsigned> nonZeroHessianJCol;
39  std::vector<std::vector<std::pair<std::vector<unsigned>, CONSTRAINT_DEPENDENCY>>> jacProperties;
40 };
41 
42 
43 } // end namespace ubp
44 
45 
46 } // end namespace maingo
std::vector< unsigned > nonZeroHessianJCol
Definition: ubpStructure.h:38
std::vector< unsigned > nonZeroHessianIRow
Definition: ubpStructure.h:37
CONSTRAINT_DEPENDENCY
Enum for representing the constraint dependency. Note that the dependency is increasing meaning that ...
Definition: constraint.h:76
std::vector< unsigned > nonZeroJacIRow
Definition: ubpStructure.h:35
std::vector< std::vector< std::pair< std::vector< unsigned >, CONSTRAINT_DEPENDENCY > > > jacProperties
Definition: ubpStructure.h:39
unsigned nnonZeroHessian
Definition: ubpStructure.h:34
namespace holding all essentials of MAiNGO
Definition: aleModel.h:25
Struct for storing structure information for the upper bounding solver.
Definition: ubpStructure.h:30
unsigned nnonZeroJac
Definition: ubpStructure.h:33
std::vector< unsigned > nonZeroJacJCol
Definition: ubpStructure.h:36