27#ifndef SURFACE_LAPLACIAN_H
28#define SURFACE_LAPLACIAN_H
92 const Eigen::MatrixX3d& matPositions,
93 double dLambda2 = 1e-5,
95 int iNLegendreTerms = 50,
96 double dSphereRadius = -1.0);
109 static Eigen::MatrixXd
computeTransform(
const Eigen::MatrixX3d& matPositions,
110 double dLambda2 = 1e-5,
112 int iNLegendreTerms = 50,
113 double dSphereRadius = -1.0);
119 static Eigen::MatrixXd computeG(
const Eigen::MatrixXd& matCosAng,
121 int iNLegendreTerms);
126 static Eigen::MatrixXd computeH(
const Eigen::MatrixXd& matCosAng,
128 int iNLegendreTerms);
133 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)