Dip-All
0.91.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
home
coin
svn-release
Dip-0.91.5
Dip
examples
SDPUC
SDPUC_Instance.h
Go to the documentation of this file.
1
//===========================================================================//
2
// This file is part of the Decomp Solver Framework. //
3
// //
4
// Decomp is distributed under the Common Public License as part of the //
5
// COIN-OR repository (http://www.coin-or.org). //
6
// //
7
// Author: Matthew Galati, Lehigh University //
8
// //
9
// Copyright (C) 2002-2015, Lehigh University, Matthew Galati, and Ted Ralphs//
10
// All Rights Reserved. //
11
//===========================================================================//
12
13
#ifndef SDPUC_INSTANCE_INCLUDED
14
#define SDPUC_INSTANCE_INCLUDED
15
16
//===========================================================================//
17
#include "UtilMacros.h"
18
//===========================================================================//
19
class
SDPUC_Param
;
20
using namespace
std;
21
//===========================================================================//
22
23
//===========================================================================//
36
//===========================================================================//
37
class
SDPUC_Instance
{
38
public
:
40
struct
arc
{
41
int
tail
;
42
int
head
;
43
double
lb
;
44
double
ub
;
45
double
weight
;
//e.g. reactance
46
double
mcost
;
//marginal cost
47
double
fcost1
;
//arc installation cost
48
double
fcost2
;
//switch installation cost
49
int
tscap
;
50
int
tscost
;
51
int
acline
;
// arc is included in kirchoffs constraints (set to 0 for supply and hvdc-arcs)
52
int
switchable
;
// arc is switchable
53
};
54
struct
node
{
55
int
id
;
56
double
demand
;
57
int
tsdemand
;
58
};
59
struct
timeseries
{
60
int
id
;
61
double
*
values
;
62
};
63
string
m_problemName
;
64
arc
*
m_arcs
;
65
node
*
m_nodes
;
66
timeseries
*
m_timeseries
;
67
int
m_numNodes
;
68
int
m_numArcs
;
69
int
m_numTimeseries
;
70
int
m_numTimeperiods
;
71
int
m_numSwitchings
;
// max. no. of simultaneously employed switches
72
73
public
:
75
int
readInstance(
string
& fileName,
76
bool
addDummyArcs =
true
);
77
78
inline
void
initMembers
(){
79
m_problemName =
""
;
80
m_arcs = NULL;
81
m_nodes = NULL;
82
m_numNodes = 0;
83
m_numArcs = 0;
84
m_numTimeseries = 0;
85
m_numTimeperiods = 0;
86
m_numSwitchings = 0;
87
}
88
89
public
:
93
SDPUC_Instance
(){
94
initMembers();
95
};
96
98
SDPUC_Instance
(
string
& fileName) {
99
initMembers();
100
readInstance(fileName);
101
}
102
104
~SDPUC_Instance
() {
105
UTIL_DELARR
(m_arcs);
106
UTIL_DELARR
(m_nodes);
107
UTIL_DELARR
(m_timeseries);
108
};
109
};
110
111
#endif
SDPUC_Instance::arc::mcost
double mcost
Definition:
SDPUC_Instance.h:46
SDPUC_Instance::timeseries::values
double * values
Definition:
SDPUC_Instance.h:61
SDPUC_Instance::m_numSwitchings
int m_numSwitchings
Definition:
SDPUC_Instance.h:71
SDPUC_Instance::SDPUC_Instance
SDPUC_Instance()
Default constructor.
Definition:
SDPUC_Instance.h:93
SDPUC_Instance::node::tsdemand
int tsdemand
Definition:
SDPUC_Instance.h:57
SDPUC_Instance::~SDPUC_Instance
~SDPUC_Instance()
Default destructor.
Definition:
SDPUC_Instance.h:104
SDPUC_Instance::SDPUC_Instance
SDPUC_Instance(string &fileName)
Default constructor.
Definition:
SDPUC_Instance.h:98
SDPUC_Instance::arc::head
int head
Definition:
SDPUC_Instance.h:42
SDPUC_Instance::arc::lb
double lb
Definition:
SDPUC_Instance.h:43
SDPUC_Instance::arc::tscost
int tscost
Definition:
SDPUC_Instance.h:50
SDPUC_Param
Definition:
SDPUC_Param.h:30
UTIL_DELARR
#define UTIL_DELARR(x)
Definition:
UtilMacros.h:29
SDPUC_Instance::arc::ub
double ub
Definition:
SDPUC_Instance.h:44
SDPUC_Instance
Definition:
SDPUC_Instance.h:37
SDPUC_Instance::m_problemName
string m_problemName
Definition:
SDPUC_Instance.h:63
SDPUC_Instance::timeseries
Definition:
SDPUC_Instance.h:59
SDPUC_Instance::arc::fcost1
double fcost1
Definition:
SDPUC_Instance.h:47
SDPUC_Instance::m_numArcs
int m_numArcs
Definition:
SDPUC_Instance.h:68
SDPUC_Instance::timeseries::id
int id
Definition:
SDPUC_Instance.h:60
SDPUC_Instance::m_nodes
node * m_nodes
Definition:
SDPUC_Instance.h:65
SDPUC_Instance::m_numTimeseries
int m_numTimeseries
Definition:
SDPUC_Instance.h:69
SDPUC_Instance::m_numTimeperiods
int m_numTimeperiods
Definition:
SDPUC_Instance.h:70
SDPUC_Instance::arc::tail
int tail
Definition:
SDPUC_Instance.h:41
SDPUC_Instance::arc::switchable
int switchable
Definition:
SDPUC_Instance.h:52
SDPUC_Instance::node::demand
double demand
Definition:
SDPUC_Instance.h:56
SDPUC_Instance::arc
SDPUC_Instance problem instance data.
Definition:
SDPUC_Instance.h:40
SDPUC_Instance::m_numNodes
int m_numNodes
Definition:
SDPUC_Instance.h:67
SDPUC_Instance::m_arcs
arc * m_arcs
Definition:
SDPUC_Instance.h:64
SDPUC_Instance::arc::fcost2
double fcost2
Definition:
SDPUC_Instance.h:48
SDPUC_Instance::initMembers
void initMembers()
Definition:
SDPUC_Instance.h:78
SDPUC_Instance::arc::tscap
int tscap
Definition:
SDPUC_Instance.h:49
SDPUC_Instance::node
Definition:
SDPUC_Instance.h:54
SDPUC_Instance::node::id
int id
Definition:
SDPUC_Instance.h:55
SDPUC_Instance::m_timeseries
timeseries * m_timeseries
Definition:
SDPUC_Instance.h:66
SDPUC_Instance::arc::acline
int acline
Definition:
SDPUC_Instance.h:51
SDPUC_Instance::arc::weight
double weight
Definition:
SDPUC_Instance.h:45
Generated by
1.8.5