📄 filtfunc.h
字号:
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
// File = filtfunc.h
//
//
#ifndef _FILTFUNC_H_
#define _FILTFUNC_H_
#include <fstream.h>
#include "poly.h"
#include "typedefs.h"
class FilterTransFunc
{
public:
FilterTransFunc( int order);
void FilterFrequencyResponse(void);
double_complex* GetPrototypePoles( int *num_poles );
double_complex* GetPoles( int *num_poles );
double_complex GetPole(int pole_indx);
double_complex* GetPrototypeZeros( int *num_zeros );
double_complex* GetZeros( int *num_zeros );
double_complex GetZero(int zero_indx);
void LowpassDenorm(double cutoff_freq_hz);
int GetNumPoles(void);
int GetNumZeros(void);
float GetHSubZero( void );
void DumpBiquads( ofstream* output_stream);
Polynomial GetDenomPoly( void );
Polynomial GetNumerPoly( void );
void FrequencyPrewarp( double sampling_interval );
protected:
int Filter_Order;
int Num_Denorm_Poles;
int Num_Denorm_Zeros;
int Degree_Of_Denom;
int Degree_Of_Numer;
int Num_Prototype_Poles;
int Num_Prototype_Zeros;
int Num_Biquad_Sects;
logical Filter_Is_Denormalized;
//double Denorm_Cutoff_Freq_Hz;
double Denorm_Cutoff_Freq_Rad;
double *A_Biquad_Coef;
double *B_Biquad_Coef;
double *C_Biquad_Coef;
double H_Sub_Zero;
double_complex *Prototype_Pole_Locs;
double_complex *Prototype_Zero_Locs;
double_complex *Denorm_Pole_Locs;
double_complex *Denorm_Zero_Locs;
Polynomial Denom_Poly;
Polynomial Numer_Poly;
ofstream *Response_File;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -