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

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)函数同参数计算结果曲线对比
在这里插入图片描述

2.计算结果部分数值对比
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44011863/article/details/135792146
w3c