forked from Marxan-source-code/marxan
-
Notifications
You must be signed in to change notification settings - Fork 0
/
defines.hpp
94 lines (67 loc) · 1.9 KB
/
defines.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#pragma once
#define DEBUGTRACEFILE
#define PROB2D
// Flags to change to "define" for debugging purposes
#undef EXTRADEBUGTRACE
#undef ANNEALING_TEST
#undef DEBUGCHANGEPEN
#undef DEBUGCALCPENALTIES
#undef DEBUG_PRINTRESVALPROB
#undef DEBUG_COUNTMISSING
#undef DEBUG_HEURISTICS
#undef DEBUG_IIMPHEUR
#undef DEBUG_CLUSTERANALYSIS
#undef DEBUG_CONNECTIONCOST
#undef DEBUG_RESERVECOST
#undef DEBUGCHECKCHANGE
#undef DEBUG_CONNECTIONCOST2
#undef CREATE_R_SCRIPTS
#undef DEBUG_QA
#undef DEBUG_PROB1D
#undef DEBUG_PROB2D
#include <cstdarg>
#include <chrono>
#include <map>
#include <random>
#include <sstream>
#include <string>
#include <vector>
#include "species.hpp"
#include "connections.hpp"
#include "spu.hpp"
#include "anneal.hpp"
#include "input.hpp"
namespace marxan {
using namespace std;
// For printing
extern string sVersionString;
extern string sMarxanWebSite;
// Initialization constants
extern int verbosity;
extern FILE* fsavelog;
extern int savelog;
extern int asymmetricconnectivity;
extern int fProb2D, fProb1D, fUserPenalties;
extern int fOptimiseConnectivityIn, fSpecPROPLoaded;
extern double delta;
// some thresholds
extern double rStartDecThresh, rEndDecThresh, rStartDecMult, rEndDecMult;
// File names
extern string sTraceFileName;
extern string savelogname;
// probability
extern int iProbFieldPresent;
extern double rProbabilityWeighting;
// type definitions for sparse matrix optimisations data structures
extern map<int, int> PULookup;
extern map<int, int> SPLookup;
extern vector<spu> SMGlobal;
extern vector<spusporder> SMsporder;
extern vector<spustuff> pu;
extern scost debugcost_global;
extern vector<sspecies> specGlobal, bestSpec;
extern vector<sneighbour> debugnbr;
extern vector<sconnections> connections;
extern sanneal anneal_global;
extern sfname fnames;
}