Switch filter specification between normalized frequency and absolute frequency
normalizefreq(d) normalizes the frequency
specifications in filter specifications object
d. By default, the
NormalizedFrequency property is set to
when you create a design object. You provide the design specifications in normalized
normalizefreq does not affect filters that already
use normalized frequency.
If you use this syntax when
d does not use normalized frequency
specifications, all of the frequency specifications are normalized by
fs/2 so they lie between 0 and 1, where
specified in the object. Included in the normalization are the filter properties that
define the filter pass and stopband edge locations by frequency:
F3 dB— Used by IIR filter specifications objects to describe the passband cutoff frequency
Fcutoff— Used by FIR filter specifications objects to describe the passband cutoff frequency
Fpass— Describes the passband edges
Fstop— Describes the stopband edges
In this syntax,
normalizefreq(d) assumes you specified
fs when you created
d or changed
d to use absolute frequency specifications.
flag is either
false, specifies whether the
NormalizedFrequency property value is
false and therefore whether the filter normalizes the sampling
fs and other related frequency specifications.
fs defaults to 1 for this syntax.
When you do not provide the input argument
flag, it defaults to
true. If you set
false, affected frequency specifications are multiplied by
fs/2 to remove the normalization. Use this syntax to switch your
filter between using normalized frequency specifications and not using normalized
normalizefreq(d,false,fs) lets you specify a
new sampling frequency
fs when you set the
NormalizedFrequency property to
Normalize the Frequency Specifications of a Filter
These examples demonstrate using
normalizefreq in both of the major syntax applications-setting the design object frequency specifications to use absolute frequency (normalizefreq(hd,false,fs)) and resetting a design object to using normalized frequencies (normalizefreq(d)).
Construct a highpass filter specifications object by specifying the passband and stopband edges and the desired attenuations in the bands. By default, provide the frequency specifications in normalized values between 0 and 1.
d = fdesign.highpass(0.35, 0.45, 60, 40);
Fpass are in normalized form, and the property
NormalizedFrequency is true.
Now use normalizedfreq to convert to absolute frequency specifications, with a sampling frequency of 1000 Hz.
Both of the attenuation specifications remain the same. The passband and stopband edge definitions now appear in Hz, where the new value represents the normalized values multiplied by Fs/2, or 500 Hz.
Converting to using normalized frequencies consists of using
normalizefreq with the design object d.
For bandstop, bandpass, and multiple band filter specifications objects, normalizefreq works the same way for all band edge definitions. When you do not provide the sampling frequency Fs as an input argument and you are converting to absolute frequency specifications, normalizefreq sets Fs to 1, as shown in this example.
Introduced in R2011a