基于C/C++语言实现高斯窗函数[结果与matlab w = gausswin(L,alpha)函数相同]

目录

  • 1.函数源码
  • 2.函数计算结果与matlab gausswin(64,8)函数结果对比

1.函数源码

基于VS和C/C++语言的高斯窗函数。

std::vector<double> gausswin(int n, double alpha)
{
    std::vector<double> win(n);
    double center = (n - 1) / 2.0;

    for (int i = 0; i < (n + 1) / 2; ++i)
    {
        double tmp = alpha * (i - center) / center;
        win[i] = exp(-0.5 * tmp * tmp);
        win[n - 1 - i] = win[i];
    }
    return win;
}

2.函数计算结果与matlab gausswin(64,8)函数结果对比

1.本功能函数测试用例计算结果与matlab gausswin(64,8)函数同参数计算结果曲线对比
基于C/C++语言实现高斯窗函数[结果与matlab w = gausswin(L,alpha)函数相同]_第1张图片

2.计算结果部分数值对比
基于C/C++语言实现高斯窗函数[结果与matlab w = gausswin(L,alpha)函数相同]_第2张图片

你可能感兴趣的:(滤波器,C/C++,matlab,c语言,c++,matlab)