43#include "../inverse_global.h"
44#include "../IInverseAlgorithm.h"
73#define NOT_TRANSPOSED 0
74#define IS_TRANSPOSED 1
95 typedef QSharedPointer<RapMusic>
SPtr;
103 typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>
MatrixXT;
105 typedef Eigen::Matrix<double, Eigen::Dynamic, 6>
MatrixX6T;
107 typedef Eigen::Matrix<double, 6, Eigen::Dynamic>
Matrix6XT;
111 typedef Eigen::Matrix<double, Eigen::Dynamic, 1>
VectorXT;
155 virtual const char* getName()
const;
166 void setStcAttr(
int p_iSampStcWin,
float p_fStcOverlap);
178 int calcPhi_s(
const MatrixXT& p_matMeasurement,
MatrixXT* &p_pMatPhi_s)
const;
223 static void calcA_k_1(
const MatrixX6T& p_matG_k_1,
235 void calcOrthProj(
const MatrixXT& p_matA_k_1,
MatrixXT& p_matOrthProj)
const;
248 void calcPairCombinations(
const int p_iNumPoints,
249 const int p_iNumCombinations,
250 Pair** p_ppPairIdxCombinations)
const;
268 static void getPointPair(
const int p_iPoints,
const int p_iCurIdx,
int &p_iIdx1,
int &p_iIdx2);
279 static void getGainMatrixPair(
const MatrixXT& p_matGainMarix,
281 int p_iIdx1,
int p_iIdx2);
293 static void insertSource(
int p_iDipoleIdx1,
int p_iDipoleIdx2,
327 static inline int getRank(
const MatrixXT& p_matSigma);
339 static inline int useFullRank(
const MatrixXT& p_Mat,
363 for(t_iRank = p_matSigma.rows()-1; t_iRank > 0; t_iRank--)
364 if (p_matSigma(t_iRank, t_iRank) > 0.00001)
379 int rank =
getRank(p_matSigma_src);
382 p_matFull_Rank = p_Mat.block(0,0,p_Mat.rows(),rank);
384 p_matFull_Rank = p_Mat.block(0,0,rank,p_Mat.cols());
MNEForwardSolution class declaration, which provides the forward solution including the source space ...
MNESourceEstimate class declaration.
#define INVERSESHARED_EXPORT
Inverse algorithm interface.
The RapMusic class provides the RAP MUSIC Algorithm CPU implementation. ToDo: Paper references.
Eigen::Matrix< double, 6, 6 > Matrix6T
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorXT
Eigen::Matrix< double, Eigen::Dynamic, 6 > MatrixX6T
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixXT
virtual MNELIB::MNESourceEstimate calculateInverse(const Eigen::MatrixXd &data, float tmin, float tstep, bool pick_normal=false) const
QSharedPointer< RapMusic > SPtr
int m_iNumLeadFieldCombinations
Pair ** m_ppPairIdxCombinations
static MatrixXT makeSquareMat(const MatrixXT &p_matF)
Eigen::Matrix< double, 6, Eigen::Dynamic > Matrix6XT
static int useFullRank(const MatrixXT &p_Mat, const MatrixXT &p_matSigma_src, MatrixXT &p_matFull_Rank, int type=NOT_TRANSPOSED)
MNELIB::MNEForwardSolution m_ForwardSolution
QSharedPointer< const RapMusic > ConstSPtr
static int getRank(const MatrixXT &p_matSigma)
Eigen::Matrix< double, 6, 1 > Vector6T
Source Space descritpion.