max@0
|
1 // Copyright (C) 2008-2012 NICTA (www.nicta.com.au)
|
max@0
|
2 // Copyright (C) 2008-2012 Conrad Sanderson
|
max@0
|
3 //
|
max@0
|
4 // This file is part of the Armadillo C++ library.
|
max@0
|
5 // It is provided without any warranty of fitness
|
max@0
|
6 // for any purpose. You can redistribute this file
|
max@0
|
7 // and/or modify it under the terms of the GNU
|
max@0
|
8 // Lesser General Public License (LGPL) as published
|
max@0
|
9 // by the Free Software Foundation, either version 3
|
max@0
|
10 // of the License or (at your option) any later version.
|
max@0
|
11 // (see http://www.opensource.org/licenses for more info)
|
max@0
|
12
|
max@0
|
13
|
max@0
|
14
|
max@0
|
15 // #define ARMA_64BIT_WORD
|
max@0
|
16 //// Uncomment the above line if you require matrices/vectors capable of holding more than 4 billion elements.
|
max@0
|
17 //// Your machine and compiler must have support for 64 bit integers (eg. via "long" or "long long")
|
max@0
|
18
|
max@0
|
19 // #define ARMA_USE_CXX11
|
max@0
|
20 //// Uncomment the above line if you have a C++ compiler that supports the C++11 standard
|
max@0
|
21 //// This will enable additional features, such as use of initialiser lists
|
max@0
|
22
|
max@0
|
23 #if !defined(ARMA_USE_LAPACK)
|
max@0
|
24 #define ARMA_USE_LAPACK
|
max@0
|
25 //// Uncomment the above line if you have LAPACK or a fast replacement for LAPACK,
|
max@0
|
26 //// such as Intel's MKL, AMD's ACML, or the Accelerate framework.
|
max@0
|
27 //// LAPACK is required for matrix decompositions (eg. SVD) and matrix inverse.
|
max@0
|
28 #endif
|
max@0
|
29
|
max@0
|
30 #if !defined(ARMA_USE_BLAS)
|
max@0
|
31 #define ARMA_USE_BLAS
|
max@0
|
32 //// Uncomment the above line if you have BLAS or a fast replacement for BLAS,
|
max@0
|
33 //// such as GotoBLAS, Intel's MKL, AMD's ACML, or the Accelerate framework.
|
max@0
|
34 //// BLAS is used for matrix multiplication.
|
max@0
|
35 //// Without BLAS, matrix multiplication will still work, but might be slower.
|
max@0
|
36 #endif
|
max@0
|
37
|
max@0
|
38 // #define ARMA_BLAS_LONG
|
max@0
|
39 //// Uncomment the above line if your BLAS and LAPACK libraries use "long" instead of "int"
|
max@0
|
40
|
max@0
|
41 // #define ARMA_BLAS_LONG_LONG
|
max@0
|
42 //// Uncomment the above line if your BLAS and LAPACK libraries use "long long" instead of "int"
|
max@0
|
43
|
max@0
|
44 #define ARMA_BLAS_UNDERSCORE
|
max@0
|
45 //// Uncomment the above line if your BLAS and LAPACK libraries have function names with a trailing underscore.
|
max@0
|
46 //// Conversely, comment it out if the function names don't have a trailing underscore.
|
max@0
|
47
|
max@0
|
48 // #define ARMA_BLAS_CAPITALS
|
max@0
|
49 //// Uncomment the above line if your BLAS and LAPACK libraries have capitalised function names (eg. ACML on 64-bit Windows)
|
max@0
|
50
|
max@0
|
51 #if !defined(ARMA_MAT_PREALLOC)
|
max@0
|
52 #define ARMA_MAT_PREALLOC 16
|
max@0
|
53 #endif
|
max@0
|
54 //// This is the number of preallocated elements used by matrices and vectors;
|
max@0
|
55 //// it must be an integer that is at least 1.
|
max@0
|
56 //// If you mainly use lots of very small vectors (eg. <= 4 elements),
|
max@0
|
57 //// change the number to the size of your vectors.
|
max@0
|
58
|
max@0
|
59 // #define ARMA_USE_TBB_ALLOC
|
max@0
|
60 //// Uncomment the above line if you want to use Intel TBB scalable_malloc() and scalable_free() instead of standard new[] and delete[]
|
max@0
|
61
|
max@0
|
62 // #define ARMA_USE_ATLAS
|
max@0
|
63 // #define ARMA_ATLAS_INCLUDE_DIR /usr/include/
|
max@0
|
64 //// If you're using ATLAS and the compiler can't find cblas.h and/or clapack.h
|
max@0
|
65 //// uncomment the above define and specify the appropriate include directory.
|
max@0
|
66 //// Make sure the directory has a trailing /
|
max@0
|
67
|
max@0
|
68 // #define ARMA_USE_BOOST
|
max@0
|
69 // #define ARMA_USE_BOOST_DATE
|
max@0
|
70 // #define ARMA_USE_WRAPPER
|
max@0
|
71
|
max@0
|
72 #if !defined(ARMA_DEFAULT_OSTREAM)
|
max@0
|
73 #define ARMA_DEFAULT_OSTREAM std::cout
|
max@0
|
74 #endif
|
max@0
|
75
|
max@0
|
76 #define ARMA_PRINT_LOGIC_ERRORS
|
max@0
|
77 #define ARMA_PRINT_RUNTIME_ERRORS
|
max@0
|
78
|
max@0
|
79 // #define ARMA_HAVE_STD_ISFINITE
|
max@0
|
80 // #define ARMA_HAVE_STD_ISINF
|
max@0
|
81 // #define ARMA_HAVE_STD_ISNAN
|
max@0
|
82 // #define ARMA_HAVE_STD_SNPRINTF
|
max@0
|
83
|
max@0
|
84 // #define ARMA_HAVE_LOG1P
|
max@0
|
85 // #define ARMA_HAVE_GETTIMEOFDAY
|
max@0
|
86
|
max@0
|
87 // #define ARMA_EXTRA_DEBUG
|
max@0
|
88 // #define ARMA_NO_DEBUG
|
max@0
|
89
|
max@0
|
90 #if defined(ARMA_DONT_USE_ATLAS)
|
max@0
|
91 #undef ARMA_USE_ATLAS
|
max@0
|
92 #undef ARMA_ATLAS_INCLUDE_DIR
|
max@0
|
93 #endif
|
max@0
|
94
|
max@0
|
95 #if defined(ARMA_DONT_USE_LAPACK)
|
max@0
|
96 #undef ARMA_USE_LAPACK
|
max@0
|
97 #endif
|
max@0
|
98
|
max@0
|
99 #if defined(ARMA_DONT_USE_BLAS)
|
max@0
|
100 #undef ARMA_USE_BLAS
|
max@0
|
101 #endif
|
max@0
|
102
|
max@0
|
103 #if defined(ARMA_DONT_PRINT_LOGIC_ERRORS)
|
max@0
|
104 #undef ARMA_PRINT_LOGIC_ERRORS
|
max@0
|
105 #endif
|
max@0
|
106
|
max@0
|
107 #if defined(ARMA_DONT_PRINT_RUNTIME_ERRORS)
|
max@0
|
108 #undef ARMA_PRINT_RUNTIME_ERRORS
|
max@0
|
109 #endif
|