27#ifndef SURFACE_LAPLACIAN_H
28#define SURFACE_LAPLACIAN_H
88 const Eigen::MatrixX3d& matPositions,
89 double dLambda2 = 1e-5,
91 int iNLegendreTerms = 50,
92 double dSphereRadius = -1.0);
105 static Eigen::MatrixXd
computeTransform(
const Eigen::MatrixX3d& matPositions,
106 double dLambda2 = 1e-5,
108 int iNLegendreTerms = 50,
109 double dSphereRadius = -1.0);
115 static Eigen::MatrixXd computeG(
const Eigen::MatrixXd& matCosAng,
117 int iNLegendreTerms);
122 static Eigen::MatrixXd computeH(
const Eigen::MatrixXd& matCosAng,
124 int iNLegendreTerms);
129 static Eigen::MatrixXd evaluateLegendre(
const Eigen::MatrixXd& matX,
int iMaxOrder);
Export/import macros and namespace declaration for the DSP library.
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Result of a surface Laplacian (CSD) computation.
Eigen::MatrixXd matData
Transformed data (n_eeg_channels × n_times).
Eigen::MatrixXd matTransform
CSD transformation matrix (n_eeg × n_eeg).
Surface Laplacian / Current Source Density (CSD) transformation.
static SurfaceLaplacianResult compute(const Eigen::MatrixXd &matData, const Eigen::MatrixX3d &matPositions, double dLambda2=1e-5, int iStiffness=4, int iNLegendreTerms=50, double dSphereRadius=-1.0)
static Eigen::MatrixXd computeTransform(const Eigen::MatrixX3d &matPositions, double dLambda2=1e-5, int iStiffness=4, int iNLegendreTerms=50, double dSphereRadius=-1.0)