文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络程序开发其他语言数值计算程序大放送-数学变换与滤波
精品推荐
特别推荐
·控制面板知多少
·给你十条学习Ruby语言的理由
·分页管理机制
·Perl 语言的重要价值体现
·经验技巧:分享两条Delphi开发经验
·Java编程思想:面向对象的逻辑思维方法
·Samba系统简介
热点TOP10
·EZ-USB 68013A开发指南
·MyEclipse JSF 快速入门中文版(上)
·图象处理中的边缘检测------canny算子
·简单架设Jabber 局域网即时通讯服务器
·visual studio 2005 简体中文团队开发版 SQL server 2005简体中文版下载
·ARM MPlayer移植过程
·Visual FoxPro 9.0 SP2正式版下载
·视频与图像RGB/YUV格式详解
·Visual C++ ADO数据库编程入门
·Microsoft Windows CE系统介绍

数值计算程序大放送-数学变换与滤波

日期:2008年6月18日 作者: 查看:[大字体 中字体 小字体]


//a-长度为n+1的数组,返回时存放傅里叶级数系数ak
//b-长度为n+1的数组,返回时存放傅里叶级数系数bk
void kfour(double f[],int n,double a[],double b[])
{ int i,j;
    double t,c,s,c1,s1,u1,u2,u0;
    t=6.283185306/(2.0*n+1.0);
    c=cos(t);
s=sin(t);
    t=2.0/(2.0*n+1.0);
c1=1.0;
s1=0.0;
    for (i=0; i<=n; i++)
{
  u1=0.0; u2=0.0;
        for (j=2*n; j>=1; j--)
  {
   u0=f[j]+2.0*c1*u1-u2;
            u2=u1; u1=u0;
  }
        a[i]=t*(f[0]+u1*c1-u2);
        b[i]=t*u1*s1;
        u0=c*c1-s*s1;
  s1=c*s1+s*c1;
  c1=u0;
}
    return;
}

 

//快速离散傅里叶变换(FFT)
//pr-长度为n的数组,当l=0时,存放n个采样输入的实部,返回时存放离散傅里叶变换的模;
//   当l=1时,存放傅里叶变换的n个实部,返回时存放逆傅里叶变换的模;
//pi-长度为n的数组,当l=0时,存放n个采样输入的虚部,返回时存放离散傅里叶变换的幅角(单位为度);
//   当l=1时,存放傅里叶变换的n个虚部,返回时存放逆傅里叶变换的幅角(单位为度);
//n-整型变量,输入的点数
//k-整型变量,满足n=2^k
//fr-长度为n的数组,当l=0时,返回时存放离散傅里叶变换的实部;
//   当l=1时,返回时存放逆傅里叶变换的实部
//fi-长度为n的数组,当l=0时,返回时存放离散傅里叶变换的虚部;
//   当l=1时,返回时存放逆傅里叶变换的虚部
//l-整型变量,l=1时,计算傅里叶变换,当l=0时,计算逆傅里叶变换
//il-整型变量,il=0时,表示不要求计算傅里叶变换或逆变换的模与幅角
//   il=1时,表示要求计算傅里叶变换或逆变换的模与幅角
void kkfft(double pr[],double pi[],int n,int k,double fr[],double fi[],int l,int il)
{
int it,m,is,i,j,nv,l0;
    double p,q,s,vr,vi,poddr,poddi;
    for (it=0; it<=n-1; it++)
{
  m=it; is=0;
        for (i=0; i<=k-1; i++)
  {
   j=m/2; is=2*is+(m-2*j);
   m=j;
  }
        fr[it]=pr[is];
  fi[it]=pi[is];
}
    pr[0]=1.0;
pi[0]=0.0;
    p=6.283185306/(1.0*n);
    pr[1]=cos(p);
pi[1]=-sin(p);
    if (l!=0) pi[1]=-pi[1];
    for (i=2; i<=n-1; i++)
{
  p=pr[i-1]*pr[1];
  q=pi[i-1]*pi[1];
        s=(pr[i-1]+pi[i-1])*(pr[1]+pi[1]);

上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页 




上一篇:在SPLUS中直接连接SQLSERVER 2005

下一篇:《雷神之锤III》里求平方根的函数

相关文章:
·“黑客”教你如何远程控制计算机
·电子书籍下载大放送
·计算机启动更快的十五大绝招
·我是怎么进入他人计算机的
·经典常见计算机密码破解实用手册
·计算机硬件常识
·计算机缩写术语完全介绍
·免费领养QQ空间五级花最新技巧及代码放送
·计算机短信DIY
·电脑使用记录清除技巧大放送
相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot