25 #ifndef UQ_INFO_THEORY_H
26 #define UQ_INFO_THEORY_H
28 #include <queso/Defines.h>
35 #define UQ_INFTH_ANN_NO_SMP 10000
36 #define UQ_INFTH_ANN_EPS 0.0
37 #define UQ_INFTH_ANN_KNN 6
48 unsigned int dimX,
unsigned int dimY,
49 unsigned int xN,
unsigned int yN,
50 unsigned int k,
double eps );
65 unsigned int dimX,
unsigned int N1,
unsigned int N2 );
71 unsigned int dimX,
unsigned int dimY,
72 unsigned int k,
unsigned int N,
double eps );
80 template <
template <
class P_V,
class P_M>
class RV,
class P_V,
class P_M>
82 const unsigned int xDimSel[],
unsigned int dimX,
83 const unsigned int yDimSel[],
unsigned int dimY,
84 unsigned int k,
unsigned int N,
double eps );
90 template <
class P_V,
class P_M,
91 template <
class P_V,
class P_M>
class RV_1,
92 template <
class P_V,
class P_M>
class RV_2>
94 const RV_2<P_V,P_M>& yRV,
95 const unsigned int xDimSel[],
unsigned int dimX,
96 const unsigned int yDimSel[],
unsigned int dimY,
97 unsigned int k,
unsigned int N,
double eps );
106 template <
class P_V,
class P_M,
107 template <
class P_V,
class P_M>
class RV_1,
108 template <
class P_V,
class P_M>
class RV_2>
111 unsigned int xDimSel[],
unsigned int dimX,
112 unsigned int yDimSel[],
unsigned int dimY,
113 unsigned int xN,
unsigned int yN,
114 unsigned int k,
double eps );
122 template <
class P_V,
class P_M,
123 template <
class P_V,
class P_M>
class RV_1,
124 template <
class P_V,
class P_M>
class RV_2>
127 unsigned int xDimSel[],
unsigned int dimX,
128 unsigned int yDimSel[],
unsigned int dimY,
129 unsigned int xN,
unsigned int yN,
130 unsigned int k,
double eps );
134 #endif // QUESO_HAS_ANN
136 #endif // UQ_INFO_THEORY_H
double estimateMI_ANN(const RV< P_V, P_M > &jointRV, const unsigned int xDimSel[], unsigned int dimX, const unsigned int yDimSel[], unsigned int dimY, unsigned int k, unsigned int N, double eps)
double estimateCE_ANN(RV_1< P_V, P_M > &xRV, RV_2< P_V, P_M > &yRV, unsigned int xDimSel[], unsigned int dimX, unsigned int yDimSel[], unsigned int dimY, unsigned int xN, unsigned int yN, unsigned int k, double eps)
void whiteningANN_X_Y(ANNpointArray dataX1, ANNpointArray dataX2, unsigned int dimX, unsigned int N1, unsigned int N2)
void distANN_XY(const ANNpointArray dataX, const ANNpointArray dataY, double *distsXY, unsigned int dimX, unsigned int dimY, unsigned int xN, unsigned int yN, unsigned int k, double eps)
double estimateKL_ANN(RV_1< P_V, P_M > &xRV, RV_2< P_V, P_M > &yRV, unsigned int xDimSel[], unsigned int dimX, unsigned int yDimSel[], unsigned int dimY, unsigned int xN, unsigned int yN, unsigned int k, double eps)
void normalizeANN_XY(ANNpointArray dataXY, unsigned int dimXY, ANNpointArray dataX, unsigned int dimX, ANNpointArray dataY, unsigned int dimY, unsigned int N)
double computeMI_ANN(ANNpointArray dataXY, unsigned int dimX, unsigned int dimY, unsigned int k, unsigned int N, double eps)