62#include <QSharedPointer>
68#define MNE_COV_CH_UNKNOWN -1
69#define MNE_COV_CH_MEG_MAG 0
70#define MNE_COV_CH_MEG_GRAD 1
71#define MNE_COV_CH_EEG 2
79 class FiffSparseMatrix;
108 typedef QSharedPointer<MNECovMatrix>
SPtr;
137 std::unique_ptr<MNECovMatrix>
dup()
const;
152 const QStringList&
names,
153 const Eigen::VectorXd&
cov)
171 const QStringList&
names,
190 const QStringList&
names,
210 const QStringList&
names,
211 const Eigen::VectorXd&
cov,
226 static std::unique_ptr<MNECovMatrix> read(
const QString& name,
int kind);
255 int condition(
float rank_threshold,
int use_rank);
268 int decompose_eigen_small(
float p_small,
int use_rank);
277 int decompose_eigen();
289 static int lt_packed_index(
int j,
int k);
301 int classify_channels(
const QList<FIFFLIB::FiffChInfo>& chs,
int nchan);
314 int whiten_vector(Eigen::Ref<Eigen::VectorXf> data, Eigen::Ref<Eigen::VectorXf> whitened_data,
int nchan)
const;
323 void regularize(
const Eigen::Vector3f& regs);
330 void revert_to_diag();
344 std::unique_ptr<MNECovMatrix> pick_chs_omit(
const QStringList& new_names,
347 const QList<FIFFLIB::FiffChInfo>& chs)
const;
360 Eigen::Matrix<float, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor>
eigen;
361 std::unique_ptr<MNEProjOp>
proj;
362 std::unique_ptr<MNESssData>
sss;
mne library export/import macros.
Core MNE data structures (source spaces, source estimates, hemispheres).
FIFF file I/O and data structures (raw, epochs, evoked, covariance, forward).
FIFF sparse matrix storage.
Eigen::VectorXd inv_lambda
std::unique_ptr< FIFFLIB::FiffSparseMatrix > cov_sparse
static std::unique_ptr< MNECovMatrix > create_sparse(int kind, int ncov, const QStringList &names, FIFFLIB::FiffSparseMatrix *cov_sparse)
std::unique_ptr< MNEProjOp > proj
static std::unique_ptr< MNECovMatrix > create_diag(int kind, int ncov, const QStringList &names, const Eigen::VectorXd &cov_diag)
static std::unique_ptr< MNECovMatrix > create_dense(int kind, int ncov, const QStringList &names, const Eigen::VectorXd &cov)
QSharedPointer< const MNECovMatrix > ConstSPtr
std::unique_ptr< MNECovMatrix > dup() const
MNECovMatrix(int p_kind, int p_ncov, const QStringList &p_names, const Eigen::VectorXd &p_cov, const Eigen::VectorXd &p_cov_diag, FIFFLIB::FiffSparseMatrix *p_cov_sparse)
std::unique_ptr< MNESssData > sss
static std::unique_ptr< MNECovMatrix > create(int kind, int ncov, const QStringList &names, const Eigen::VectorXd &cov, const Eigen::VectorXd &cov_diag)
Eigen::Matrix< float, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > eigen
QSharedPointer< MNECovMatrix > SPtr
Projection operator managing a set of linear projection items and the final compiled projector matrix...
Container for Signal Space Separation (SSS/Maxwell filtering) expansion coefficients and metadata.