Newer
Older
/* MELODIC - Multivariate exploratory linear optimized decomposition into
independent components
melica.h - ICA estimation
Christian F. Beckmann, FMRIB Image Analysis Group
/* CCOPYRIGHT */
#ifndef __MELODICICA_h
#define __MELODICICA_h
#include "newimage/newimageall.h"
#include "utils/log.h"
#include "melpca.h"
#include "meloptions.h"
#include "meldata.h"
#include "melodic.h"
#include "newmatap.h"
#include "newmatio.h"
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
#include "melreport.h"
using namespace Utilities;
using namespace NEWIMAGE;
namespace Melodic{
class MelodicICA
{
public:
MelodicICA(MelodicData &pmelodat, MelodicOptions &popts, Log &plogger, MelodicReport &preport):
melodat(pmelodat),
opts(popts),
logger(plogger),
report(preport)
{
}
void perf_ica(const Matrix &Data);
bool no_convergence;
private:
MelodicData &melodat;
MelodicOptions &opts;
Log &logger;
MelodicReport &report;
int dim;
int samples;
Matrix redUMM;
void ica_fastica_symm(const Matrix &Data);
void ica_fastica_defl(const Matrix &Data);
void ica_maxent(const Matrix &Data);
void ica_jade(const Matrix &Data);
Matrix randm(const int dim1, const int dim2);
void sort();
Matrix sign(const Matrix &Inp);
};
}
#endif