ButterworthFilterModel
✖
ButterworthFilterModel
creates a lowpass Butterworth filter of order n and cutoff frequency of 1.
creates a filter of a given "type" using the specified parameters spec.
Details



- ButterworthFilterModel returns the filter as a TransferFunctionModel.
- ButterworthFilterModel[{n,ω}] returns a lowpass filter with attenuation of
(approximately 3 dB) at frequency ω.
- ButterworthFilterModel[n] uses the cutoff frequency of 1.
- Lowpass filter specification {"type",spec} can be any of the following:
-
{"Lowpass",n} lowpass filter of order n and cutoff frequency 1 {"Lowpass",n,ωp} use cutoff frequency ωp {"Lowpass",{ωp,ωs},{ap,as}} use full filter specification giving passband and stopband frequencies and attenuations - Highpass filter specifications:
-
{"Highpass",n} highpass filter with cutoff frequency 1 {"Highpass",n,ωp} use cutoff frequency ωp {"Highpass",{ωs,ωp},{as,ap}} full filter specification - Bandpass filter specifications:
-
{"Bandpass",n,{ωp1,ωp2}} bandpass filter with passband frequencies ωp1 and ωp2 {"Bandpass",n,{{ω,q}}} use center frequency ω and quality factor q {"Bandpass",{ωs1,ωp1,ωp2,ωs2},{as,ap}} full filter specification - Bandstop filter specifications:
-
{"Bandstop",n,{ωp1,ωp2}} bandstop filter with passband frequencies ωp1 and ωp2 {"Bandstop",n,{{ω,q}}} use center frequency ω and quality factor q {"Bandstop",{ωp1,ωs1,ωs2,ωp2},{ap,as}} full filter specification - Values ap and as are, respectively, absolute values of passband and stopband attenuations.
- Given a gain fraction
, the attenuation is
.
- The quality factor q is defined as
, with
being the center frequency of a bandpass or bandstop filter. Higher values of q give narrower filters.
Examples
open allclose allBasic Examples (2)Summary of the most common use cases
A third-order Butterworth filter model with cutoff frequency at :

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-7pxsg8


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-4mhlea

A lowpass Butterworth filter using the full specification:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-j3twtf

Magnitude response of the filter showing the ideal filter characteristics:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-id9gho

Scope (6)Survey of the scope of standard use cases
A symbolic lowpass Butterworth filter of order 3 with a cutoff frequency ω:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-frejvo


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-kbcoac

Same filter using the full specification:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-b5ea69

Create a highpass Butterworth filter of order 3 with a cutoff frequency of 10:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-eynflz

Same filter using the full specification:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-7af73j

Create a "Bandpass" filter with passband frequencies and
and attenuation of order 3:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-jiywtz

Same filter using center frequency and quality factor specification {{ω,q}}:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-ixovrt

Same filter using the full specification:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-druaky

Create a bandstop Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-f7kgql

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-lzrfx3

Exact computation of the model:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-m1h6eu

Computation of the model with precision 24:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-p05e4

Create a filter model using the variable s:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-kvokb4

Applications (6)Sample problems that can be solved with this function
Create a lowpass Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-3wi1v
Filter out high-frequency noise from a sinusoidal signal:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-ifgc2o
Butterworth filter phase shifts the response by Arg[tf[ω ]], where ω is the frequency of the input sinusoid:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-2jrez2


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-0cddd

Create a highpass Butterworth filter from the lowpass prototype:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-n0gy7m
Filter out low-frequency sinusoid from the input:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-ztenhq

Design a digital FIR lowpass filter using the Butterworth approximation that satisfies the following passband and stopband frequencies and attenuations:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-u9bcxq
Obtain the equivalent analog frequencies assuming a sampling period of 1:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-l3l58

Compute the analog Butterworth transfer function:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-dg7zm

Convert to discrete-time model:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-ecvjhx


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-fld0kc

Create an FIR approximation of a discrete-time Butterworth IIR filter.
Implement a lowpass digital Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-buj3xd

Obtain the desired number of FIR samples from the impulse response of the discrete-time Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-carst7


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-obd08

Smooth financial data using an FIR approximation of a Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-detozt

Filter an image using a discrete-time lowpass Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-e9pkl

Filter an image using a highpass Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-nmld7q

Properties & Relations (9)Properties of the function, and connections to other functions
Stopband attenuation increases by a factor of per decade as order
increases:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-khcsbq

Passband width of "Bandpass" filter decreases with increasing quality factor q:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-ejl0fl

Phase response of a third-order lowpass Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-fqxb00

Compare phase responses for different filter orders:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-b58ugj

Phase response of a "Bandpass" filter for several quality factors:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-g3rv0t

Extract the order of the Butterworth polynomial:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-zlcb4j

The order of the Butterworth polynomial for lowpass and highpass is the same as the specified order:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-zl7hjb

The filter order for bandpass and bandstop is twice the given order:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-tocbb5

Show the Butterworth polynomial in the denominator of the transfer function:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-j8q3ad

Find the poles of a Butterworth filter by solving for the roots of the denominator:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-8mo9vy

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-bnp6ym

Extract poles using TransferFunctionPoles:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-b4cuq

Plot poles of the Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-cbtnsh

Implement a lowpass digital Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-kh9gwp

Plot poles of the digital Butterworth filter:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-bu0m6

Create a highpass filter using a lowpass prototype:

https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-jsttxk


https://wolfram.com/xid/08ejj3guu1kjvroxv79ul-cyslq6

Wolfram Research (2012), ButterworthFilterModel, Wolfram Language function, https://reference.wolfram.com/language/ref/ButterworthFilterModel.html (updated 2016).
Text
Wolfram Research (2012), ButterworthFilterModel, Wolfram Language function, https://reference.wolfram.com/language/ref/ButterworthFilterModel.html (updated 2016).
Wolfram Research (2012), ButterworthFilterModel, Wolfram Language function, https://reference.wolfram.com/language/ref/ButterworthFilterModel.html (updated 2016).
CMS
Wolfram Language. 2012. "ButterworthFilterModel." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2016. https://reference.wolfram.com/language/ref/ButterworthFilterModel.html.
Wolfram Language. 2012. "ButterworthFilterModel." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2016. https://reference.wolfram.com/language/ref/ButterworthFilterModel.html.
APA
Wolfram Language. (2012). ButterworthFilterModel. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ButterworthFilterModel.html
Wolfram Language. (2012). ButterworthFilterModel. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ButterworthFilterModel.html
BibTeX
@misc{reference.wolfram_2025_butterworthfiltermodel, author="Wolfram Research", title="{ButterworthFilterModel}", year="2016", howpublished="\url{https://reference.wolfram.com/language/ref/ButterworthFilterModel.html}", note=[Accessed: 31-May-2025
]}
BibLaTeX
@online{reference.wolfram_2025_butterworthfiltermodel, organization={Wolfram Research}, title={ButterworthFilterModel}, year={2016}, url={https://reference.wolfram.com/language/ref/ButterworthFilterModel.html}, note=[Accessed: 31-May-2025
]}