资源简介
算法主要针对桥梁拉索索力频谱法测试应用
1、调用FFT进行快速傅里叶变换;
2、获取变换后峰值;
3、通过峰值和设计基频比较,取得最接近这几基频的结果

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace CableSlover.BasisClass
{
public class CSuoliSlover
{
///
/// 快速傅立叶变换
///
/// 当l=0时,存放n个采样输入的实部,返回离散傅里叶变换的模;当l=1时,存放傅里叶变换的n个实部,返回逆傅里叶变换的模
/// 当l=0时,存放n个采样输入的虚部,返回离散傅里叶变换的幅角;当l=1时,存放傅里叶变换的n个虚部,返回逆傅里叶变换的幅角;幅角的单位为度
/// 采样点数
/// 满足n=2的k次方
/// 当l=0时返回傅里叶变换的n个实部;当l=1时返回逆傅里叶变换的n个实部
/// 当l=0时返回傅里叶变换的n个虚部;当l=1时返回逆傅里叶变换的n个虚部
/// 当l=0表示要求本函数进行傅里叶变换计算;当l=1表示要求本函数进行逆傅里叶变换计算
/// 当il=0时表示不要求本函数计算傅里叶变换或者逆傅里叶变换的模与幅角;当il=1时表示要求本函数计算傅里叶变换或者逆傅里叶变换的模与幅角
[DllImport(“FFT.dll“ EntryPoint = “kfft“ CharSet = CharSet.Auto CallingConvention = CallingConvention.Cdecl SetLastError = true)]
public static extern void kfft(double[] pr double[] pi int n int k double[] fr double[] fi int l int il);
///
/// 归一化
///
/// 原始数据
public static void Normalized(double[] DatOri)
{
int n = DatOri.Length;
int i;
double t = 0.0;
for (i = 0; i < n; i++)
{
t += DatOri[i] * DatOri[i];
}
t = Math.Sqrt(t);
for (i = 0; i < n; i++)
{
DatOri[i] = DatOri[i] / t;
}
}
///
/// 获取峰值假设峰值个数PN>n
///
/// 为待分析的数组
/// 峰值所在位置数组
/// 峰值数组
/// Data数组大小
/// peak数组的大小
public static void PeakValue(double[] Data double[] peak double[] Out int m int n)
{
int PN = 0;
double m_Min = Data[0];
double[] In = new double[m + 2];
int[] Flag = new int[m];
In[0] = Data[0] - 1;
for (int k = 0; k < m; k++)
{
In[k + 1] = Data[k];
Flag[k] = 0;
}
In[m + 1] = Data[m - 1] - 1;
for (int i = 1; i < m + 1; i++)
{
if (In[i] < m_Min)
{
m_Min = In[i];
}
if ((In[i] > In[i - 1]) && (In[i] > In[i + 1]))//判断中间点是否比两边点的值大
{
Flag[PN] = i;
PN++;
}
}
for (int j = 0; j < n; j++)
{
Out[j] = m_Min;
peak[j] = 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11733 2014-08-31 14:08 傅里叶变换基频获取算法\CSuoliSlover.cs
文件 229425 2009-05-25 16:37 傅里叶变换基频获取算法\FFT.dll
文件 144 2014-08-31 14:13 傅里叶变换基频获取算法\算法使用说明.txt
目录 0 2014-08-31 14:11 傅里叶变换基频获取算法
----------- --------- ---------- ----- ----
241302 4
- 上一篇:陈纪修《数学分析第二版》上下册pdf.txt
- 下一篇:人机交互网上银行设计
相关资源
- 离散傅里叶变换DFT的数学-音频应用
- 分数阶傅里叶变换不同阶数下的应用
- 二维傅里叶变换函数的使用
- halcon极坐标变换傅里叶变换
- 基于Altera MegaCore实现FFT的方法
- FFT(快速傅里叶变换)的FPGA实现
- 傅里叶变换及其应用斯坦福大学.pdf
- 傅里叶变换讲义完整版
- 小波变换与分数傅里叶变换理论与应
- 数字信号处理-快速傅里叶变换FFT实验
- 傅里叶变换程序
- 音频频谱分析,快速傅里叶变换
- 时域抽取法快速傅里叶变换FFT(以R
- 数字图像处理实验——滤波,皮肤毛
- 快速傅里叶变换(蝶形运算)
- 加窗傅里叶变换和小波变换的原理与
- 傅里叶变换及其应用斯坦福
- 第四章_快速傅里叶变换(FFT).ppt
- 如果看了此文你还不懂傅里叶变换,
- 傅里叶变换 冷建华版 2004 pdf
- 基于傅里叶变换和鬼成像算法的多图
- 快速傅里叶变换FFT算法及其应用
- 小波变换与分数傅里叶变换理论及应
- 数字图像处理 傅里叶变换 第三章 课
- stm32F30x的ADC采样的傅里叶变换
- 傅里叶变换红外光谱分析 第二版
- 傅里叶变换与反傅里叶变换
- The Fourier Transform and Its Applications
- 傅里叶变换及其应用(第3版)
- stm32F429的ADC采样的傅里叶变换
评论
共有 条评论