v2.0.0
Loading...
Searching...
No Matches
src
libraries
dsp
extended_infomax.h
Go to the documentation of this file.
1
//=============================================================================================================
28
29
#ifndef EXTENDED_INFOMAX_H
30
#define EXTENDED_INFOMAX_H
31
32
//=============================================================================================================
33
// INCLUDES
34
//=============================================================================================================
35
36
#include "
dsp_global.h
"
37
38
//=============================================================================================================
39
// EIGEN INCLUDES
40
//=============================================================================================================
41
42
#include <Eigen/Core>
43
#include <Eigen/Dense>
44
45
//=============================================================================================================
46
// DEFINE NAMESPACE UTILSLIB
47
//=============================================================================================================
48
49
namespace
UTILSLIB
{
50
51
//=============================================================================================================
55
struct
DSPSHARED_EXPORT
InfomaxResult
{
56
Eigen::MatrixXd
matUnmixing
;
57
Eigen::MatrixXd
matMixing
;
58
Eigen::MatrixXd
matSources
;
59
int
nIterations
;
60
bool
converged
;
61
};
62
63
//=============================================================================================================
70
class
DSPSHARED_EXPORT
ExtendedInfomax
{
71
public
:
85
static
InfomaxResult
compute
(
86
const
Eigen::MatrixXd& matData,
87
int
nComponents = -1,
88
int
maxIterations = 200,
89
double
learningRate = 0.001,
90
double
tolerance = 1e-7,
91
bool
extendedMode =
true
,
92
unsigned
int
seed = 0);
93
94
private
:
102
static
Eigen::VectorXd estimateSignVector(
const
Eigen::MatrixXd& matSources);
103
};
104
105
}
// namespace UTILSLIB
106
107
#endif
// EXTENDED_INFOMAX_H
dsp_global.h
Export/import macros and namespace declaration for the DSP library.
DSPSHARED_EXPORT
#define DSPSHARED_EXPORT
Definition
dsp_global.h:50
UTILSLIB
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Definition
rtfiffrawview.h:58
UTILSLIB::InfomaxResult
Definition
extended_infomax.h:55
UTILSLIB::InfomaxResult::matUnmixing
Eigen::MatrixXd matUnmixing
Definition
extended_infomax.h:56
UTILSLIB::InfomaxResult::nIterations
int nIterations
Definition
extended_infomax.h:59
UTILSLIB::InfomaxResult::matSources
Eigen::MatrixXd matSources
Definition
extended_infomax.h:58
UTILSLIB::InfomaxResult::matMixing
Eigen::MatrixXd matMixing
Definition
extended_infomax.h:57
UTILSLIB::InfomaxResult::converged
bool converged
Definition
extended_infomax.h:60
UTILSLIB::ExtendedInfomax
Definition
extended_infomax.h:70
UTILSLIB::ExtendedInfomax::compute
static InfomaxResult compute(const Eigen::MatrixXd &matData, int nComponents=-1, int maxIterations=200, double learningRate=0.001, double tolerance=1e-7, bool extendedMode=true, unsigned int seed=0)
Definition
extended_infomax.cpp:43
Generated on
for MNE-CPP by
1.16.1