This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Cast coefficients of digital filter to double precision


f2 = double(f1)



f2 = double(f1) casts coefficients in a digital filter, f1, to double precision and returns a new digital filter, f2, that contains these coefficients.


collapse all

Use designfilt to design a 5th-order FIR lowpass filter. Specify a normalized passband frequency of 0.2π rad/sample and a normalized stopband frequency of 0.55π rad/sample.

Cast the filter to single precision and cast it back to double precision. Display the first coefficient of each filter.

format long
d = designfilt('lowpassfir','FilterOrder',5, ...
               'PassbandFrequency',0.2,'StopbandFrequency', 0.55);
e = single(d);
f = double(e);

coed = d.Coefficients(1)
coed = 

coee = e.Coefficients(1)
coee = single

coef = f.Coefficients(1)
coef = 

Use double to analyze, in double precision, the effects of single-precision quantization of filter coefficients.

Input Arguments

collapse all

Single-precision digital filter, specified as a digitalFilter object. Use designfilt to generate a digital filter based on frequency-response specifications and single to cast it to single precision.

Example: f1= single(designfilt('lowpassfir','FilterOrder',3,'HalfPowerFrequency',0.5)) specifies a third-order Butterworth filter with normalized 3-dB frequency 0.5π rad/sample cast in single precision.

Output Arguments

collapse all

Double-precision digital filter, returned as a digitalFilter object.

Introduced in R2014a