filtery example.c
来自「自己编的数值计算方法的c语言实现源程序。」· C语言 代码 · 共 32 行
C
32 行
#include"stdio.h"
#include"filtery.c"
/*求4阶切比雪夫低通数字滤波器H(z)的单位冲激响应 */
void main()
{ int i,m,n,len;
/*H(z)=(0.001836+0.007344z^-1+0.011016z^-2+0.007344z^-3+0.001836z^-4)/(1.0-3.0544z^-1+3.8291z^-2-2.2925z^-3+0.55075z^-4)*/
double b[5]={0.001836,0.007344,0.011016,0.007344,0.001836};
double a[5]={1.0,-3.0544,3.8291,-2.2925,0.55075};
double px[5]={0.,0.,0.,0.,0.};
double py[5]={0.,0.,0.,0.,0.};
double x[100],y[100];
FILE *fp;
m=4;
n=4;
len=100;
/*x[n]为单位冲激响应;*/
for(i=0;i<len;i++)
{ x[i]=0.0;
y[i]=0.0;
}
x[0]=1.0;
filtery(b,a,m,n,x,y,len,px,py);
/*输出data;*/
if(( fp=fopen("filtery.txt","w"))==NULL)
{ printf("cannot open file 'filtery.txt'!\n");
exit(0);
}
for(i=0;i<100;i++)
{ fprintf(fp,"%lf ",y[i]);
}
fclose(fp);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?