designs a lowpass Bessel filter of order n and cutoff frequency 1.
BesselFilterModel[{n,ωc}]
uses the cutoff frequency ωc.
BesselFilterModel[{n,ωc},var]
expresses the model in terms of the variable var.
BesselFilterModel
designs a lowpass Bessel filter of order n and cutoff frequency 1.
BesselFilterModel[{n,ωc}]
uses the cutoff frequency ωc.
BesselFilterModel[{n,ωc},var]
expresses the model in terms of the variable var.
Details
- BesselFilterModel returns the designed filter as a TransferFunctionModel.
- BesselFilterModel[n] uses machine precision to return a filter with attenuation of
at frequency 1.
Examples
open all close allBasic Examples (2)
A third-order Bessel filter model with cutoff frequency at
:
tf = BesselFilterModel[3]Bode plot of the modeled filter:
BodePlot[tf, GridLines -> Automatic]A sixth-order lowpass Bessel filter with cutoff frequency at
:
tf = BesselFilterModel[{6, 1.5}];Magnitude response of the filter showing the ideal filter characteristics:
Plot[Abs[tf[I * ω]], {ω, 0, 6}, PlotRange -> All, Epilog -> {Pink, Dashed, Line[{{0, 0.707}, {1.5, 0.707}, {1.5, 0.}}]}]Scope (1)
Applications (1)
Create a lowpass Bessel filter:
tf = BesselFilterModel[3]Filter out high-frequency noise from a sinusoidal signal:
input = (Sin[t / 5] + 1 / 2 Sin[5t]) UnitStep[t];
response1 = OutputResponse[tf, input, {t, 0, 60}];Plot[{input, response1}, {t, 0, 50}]Create a highpass Bessel filter from the lowpass prototype:
tf2 = TransferFunctionTransform[1 / #&, tf];Filter out low-frequency sinusoid from the input:
response2 = OutputResponse[tf2, input, {t, 0, 60}];
Plot[{input, response2}, {t, 0, 50}]Properties & Relations (4)
Show the denominator of the transfer function as a Bessel polynomial:
tf = TransferFunctionExpand[BesselFilterModel[3]]//ChopFind the poles of a Bessel filter by solving for the roots of the denominator:
tf = BesselFilterModel[3];Solve[Denominator@tf[s][[1, 1]] == 0, s]Extract poles using TransferFunctionPoles:
TransferFunctionPoles[tf]Implement a lowpass digital Bessel filter:
dtf = ToDiscreteTimeModel[BesselFilterModel[{5, .5}, s], 1, z]Convert a lowpass filter to high pass:
lo = BesselFilterModel[3];
hi = TransferFunctionTransform[1 / #&, lo]Plot[{Abs[lo[I w]], Abs[hi[I w]]}, {w, 0, 6}, PlotRange -> All]Related Guides
History
Text
Wolfram Research (2012), BesselFilterModel, Wolfram Language function, https://reference.wolfram.com/language/ref/BesselFilterModel.html.
CMS
Wolfram Language. 2012. "BesselFilterModel." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/BesselFilterModel.html.
APA
Wolfram Language. (2012). BesselFilterModel. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BesselFilterModel.html
BibTeX
@misc{reference.wolfram_2026_besselfiltermodel, author="Wolfram Research", title="{BesselFilterModel}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/BesselFilterModel.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_besselfiltermodel, organization={Wolfram Research}, title={BesselFilterModel}, year={2012}, url={https://reference.wolfram.com/language/ref/BesselFilterModel.html}, note=[Accessed: 13-June-2026]}