数学辅助工具类,提供信号处理和数值计算所需的基础函数
MathUtils
01 Syntax
Microsoft.VisualBasic.Math.SignalProcessing.MathUtils
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| Gaussian | 1 | 高斯函数 |
| MexicanHatWavelet | 1 | 墨西哥帽小波(Ricker Wavelet)函数 这是高斯函数的二阶导数,用于CentWave算法 |
| MovingAverageSmooth | 1 | 移动平均平滑 |
| SavitzkyGolaySmooth | 1 | Savitzky-Golay平滑(二次多项式,5点窗口的简化实现) 相比移动平均,能更好地保留峰形特征 |
| Convolve | 1 | 一维卷积运算 |
| FirstDerivative | 1 | 计算一阶导数(中心差分法) |
| SecondDerivative | 1 | 计算二阶导数(中心差分法) |
| LinearInterpolation | 1 | 线性插值 |
03 Members
Gaussian(
Double, Double, Double, Double)高斯函数
Parameters
| Name | Type | Description |
|---|---|---|
x | Double | 自变量 |
center | Double | 中心位置 |
sigma | Double | 标准差 |
height | Double | 峰高 |
Returns
高斯函数值
MexicanHatWavelet(
Double, Double, Double)墨西哥帽小波(Ricker Wavelet)函数 这是高斯函数的二阶导数,用于CentWave算法
Parameters
| Name | Type | Description |
|---|---|---|
x | Double | 自变量 |
center | Double | 中心位置 |
sigma | Double | 尺度参数 |
Returns
小波函数值
MovingAverageSmooth(
Double(), Int32)移动平均平滑
Parameters
| Name | Type | Description |
|---|---|---|
data | Double() | 输入数据 |
windowSize | Int32 | 窗口大小(必须为奇数) |
Returns
平滑后的数据
SavitzkyGolaySmooth(
Double())Savitzky-Golay平滑(二次多项式,5点窗口的简化实现) 相比移动平均,能更好地保留峰形特征
Parameters
| Name | Type | Description |
|---|---|---|
data | Double() | 输入数据 |
Returns
平滑后的数据
Convolve(
Double(), Double())一维卷积运算
Parameters
| Name | Type | Description |
|---|---|---|
signal | Double() | 输入信号 |
kernel | Double() | 卷积核 |
Returns
卷积结果
FirstDerivative(
Double(), Double)计算一阶导数(中心差分法)
Parameters
| Name | Type | Description |
|---|---|---|
data | Double() | 输入数据 |
dt | Double | 采样间隔 |
Returns
一阶导数
SecondDerivative(
Double(), Double)计算二阶导数(中心差分法)
LinearInterpolation(
Double, Double, Double, Double, Double)线性插值