首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >测井中的尺度FFT结果频率

测井中的尺度FFT结果频率
EN

Stack Overflow用户
提问于 2018-06-03 22:04:49
回答 1查看 93关注 0票数 0

我准备编写一个效果很好的可视化程序。我有一个1500大小的阵列,里面有频率的大小。现在,我想把这个数组转换成一个有100个值的数组。例如,在第二个数组的第一个索引中,应该是第一个数组中前两个值的平均值。在第二个数组的第二个索引上,应该是索引3-6的值。但我不知道如何正确计算。那么,如何将第一个数组转换为第二个数组呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-08 20:13:57

我已经在雨量计源代码。中找到了一个答案,也许现在我想要做的更清楚的是c#代码:获得一个具有特定长度的数组,用min进行缩放。还有麦克斯。频率。

代码语言:javascript
运行
复制
private float[] getFrequencies(int min, int max, int nBands)
    {
        float[] returnVal = new float[nBands];
        double step = (Math.Log(max / min) / nBands) / Math.Log(2.0);
        returnVal[0] = (float)(min * Math.Pow(2.0, step / 2.0));

        for (int iBand = 1; iBand < nBands; ++iBand)
        {
            returnVal[iBand] = (float)(returnVal[iBand - 1] * Math.Pow(2.0, step));
        }
        return returnVal;
    }

并填充输出数组:

代码语言:javascript
运行
复制
private double[] getLogArray(double[] data, int nBands, int minFreq, int maxFreq)
    {
        float[] bandFreq = getFrequencies(minFreq, maxFreq, nBands);
        float df = (float)sampleRate / samples;
        float scalar = 1.0f / sampleRate;
        double[] bandOut = new double[nBands];
        int iBin = 0;
        int iBand = 0;
        float f0 = 0.0f;

        while (iBin <= (samples / 2) && iBand < nBands)
        {
            float fLin1 = ((float)iBin + 0.5f) * df;
            float fLog1 = bandFreq[iBand];
            float x = (float)data[iBin];

            if (fLin1 <= fLog1)
            {
                bandOut[iBand] += (fLin1 - f0) * x * scalar;
                f0 = fLin1;
                iBin += 1;
            }
            else
            {
                bandOut[iBand] += (fLog1 - f0) * x * scalar;
                f0 = fLog1;
                iBand += 1;
            }
        }
        return bandOut;
    }

祝你今天过得愉快,并为迟来的回复感到抱歉。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50671372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档