Closed simonster closed 10 years ago
I like the proposed organization. Regarding the conversions, I would like having them in types.jl
as long as it does not make the file terribly long. I find it useful to have all types and conversions in the same file.
I want to flesh out the docs a little so that it's clearer how to actually design filters, but before I do that, I think it might make sense to reorganize the filter-related functions. Right now we have:
FFTFilt
fftfilt
andfirfilt
(should probably have mutating versions of these as well)FilterDesign
ZPKFilter
,TFFilter
,SOSFilter
, andBiquadFilter
types, conversions between types, andfilt
implementationsFilterResponse
freqz
andfreqs
ZeroPhaseFiltering
filtfilt
All of these modules but
FFTFilt
depend on theFilterDesign
module because it defines the filter types, which suggests that this should just be one module. I propose a singleDSP.Filter
module that would reside in a separate subdirectory and contain the following files:types.jl
-ZPKFilter
,TFFilter
,SOSFilter
, andBiquadFilter
type definitions. When we have FIR filter design we will probably want anFIRFilter
type as well. Not sure if the conversions should live here or in a separate file.filt.jl
-filt
,fftfilt
,firfilt
, andfiltfilt
implementations (eventuallyfirfilt
will probably just befilt(::FIRFilter, x)
)design.jl
- prototypes, transformations, and bilinear transformresponse.jl
-freqz
andfreqs
Does this sound good? Any objections?