58#include <QSharedPointer>
108 const Eigen::MatrixXd& matTaper,
123 const Eigen::MatrixXd& matTaper,
125 bool bUseThreads =
true);
144 static void reduce(QVector<Eigen::MatrixXcd>& finalData,
145 const Eigen::MatrixXcd& resultData);
159 const Eigen::VectorXd& vecTapWeights,
161 double dSampFreq = 1.0);
177 const Eigen::MatrixXcd& vecTapSpectrumTarget,
178 const Eigen::VectorXd& vecTapWeightsSeed,
179 const Eigen::VectorXd& vecTapWeightsTarget,
181 double dSampFreq = 1.0);
203 static QPair<Eigen::MatrixXd, Eigen::VectorXd>
generateTapers(
int iSignalLength,
204 const QString& sWindowType =
"hanning");
215 static std::pair<Eigen::MatrixXd, Eigen::VectorXd>
generateTapers(
int iSignalLength,
216 const std::string& sWindowType =
"hanning");
227 static Eigen::MatrixXd hanningWindow(
int iSignalLength);
Export/import macros and build-stamp accessors for MATHLIB.
#define MATHSHARED_EXPORT
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Per-row input bundle for parallel multi-taper spectral estimation (data row, taper matrix,...
Eigen::RowVectorXd vecData
static Eigen::RowVectorXcd csdFromTaperedSpectra(const Eigen::MatrixXcd &vecTapSpectrumSeed, const Eigen::MatrixXcd &vecTapSpectrumTarget, const Eigen::VectorXd &vecTapWeightsSeed, const Eigen::VectorXd &vecTapWeightsTarget, int iNfft, double dSampFreq=1.0)
static QVector< Eigen::MatrixXcd > computeTaperedSpectraMatrix(const Eigen::MatrixXd &matData, const Eigen::MatrixXd &matTaper, int iNfft, bool bUseThreads=true)
static Eigen::RowVectorXd psdFromTaperedSpectra(const Eigen::MatrixXcd &matTapSpectrum, const Eigen::VectorXd &vecTapWeights, int iNfft, double dSampFreq=1.0)
static QPair< Eigen::MatrixXd, Eigen::VectorXd > generateTapers(int iSignalLength, const QString &sWindowType="hanning")
static Eigen::MatrixXcd compute(const TaperedSpectraInputData &inputData)
static Eigen::MatrixXcd computeTaperedSpectraRow(const Eigen::RowVectorXd &vecData, const Eigen::MatrixXd &matTaper, int iNfft)
static Eigen::VectorXd calculateFFTFreqs(int iNfft, double dSampFreq)
static void reduce(QVector< Eigen::MatrixXcd > &finalData, const Eigen::MatrixXcd &resultData)