BiquadraticFilterModel[{ω,q}]
特性周波数 ω とQ値 q を使ってローパス双二次フィルタを作る.
BiquadraticFilterModel[{"type",spec}]
指定された{"type",spec}のフィルタを作る.
BiquadraticFilterModel[{"type",spec},var]
モデルを変数 var によって表現する.
BiquadraticFilterModel
BiquadraticFilterModel[{ω,q}]
特性周波数 ω とQ値 q を使ってローパス双二次フィルタを作る.
BiquadraticFilterModel[{"type",spec}]
指定された{"type",spec}のフィルタを作る.
BiquadraticFilterModel[{"type",spec},var]
モデルを変数 var によって表現する.
詳細
- 双二次フィルタは2つの二次多項式の比によって定義される二次フィルタで,アナログ・デジタル双方の信号処理回路で最もよく使われているものの一つである.
- BiquadraticFilterModelはフィルタをTransferFunctionModelとして返す.
- フィルタ指定{"type",spec}は次の任意のものでよい.
-

{"Lowpass",{{ω,q}}} カットオフ周波数 ω,Q値 q 
{"Highpass",{{ω,q}}} カットオフ周波数 ω,Q値 q 
{"Allpass",{{ω,q}}} 周波数 ω,Q値 q 
{"Bandpass",{ω1,ω2}} コーナー周波数 ω1と ω2 
{"Bandpass",{{ω,q}}} 中心周波数 ω,Q値 q 
{"Bandstop",{ω1,ω2}} コーナー周波数 ω1と ω2 
{"Bandstop",{{ω,q}}} 中心周波数 ω,Q値 q - 次のフィルタ指定を与えてイコライザを作ることができる.
-

{"Peaking",{{ω,q}},g} ゲイン値 g を使ったピーキングイコライザ 
{"LowShelf",{{ω,q}},g} ゲイン値 g を使ったローパスシェルビングイコライザ 
{"HighShelf",{{ω,q}},g} ゲイン値 g を使ったハイパスシェルビングイコライザ - ゲイン値
のとき,減衰は
である.
例題
すべて開く すべて閉じる例 (3)
tf = BiquadraticFilterModel[{1, 1}]BodePlot[tf, GridLines -> Automatic, PlotLayout -> "Magnitude"]tf = BiquadraticFilterModel[{"Bandpass", {{1, 1}}}]BodePlot[tf, {0.1, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]in = Sin[ 1 / 5 t] + Sin[5t];
out = OutputResponse[BiquadraticFilterModel[{1, 1}], in, {t, 0, 60}];
Plot[{in, out}, {t, 0, 40}, PlotLegends -> {"Input", "Output"}]スコープ (8)
BiquadraticFilterModel[{ω, Q}]BiquadraticFilterModel[{"Lowpass", {{1, 1}}}, s]tf = BiquadraticFilterModel[{"Lowpass", {{10, 1}}}, s]BodePlot[tf, {1, 100}, GridLines -> Automatic, PlotLayout -> "Magnitude"]BiquadraticFilterModel[{"Highpass", {{ω, Q}}}]tf = BiquadraticFilterModel[{"Highpass", {{10, 1}}}, s]BodePlot[tf, {1, 100}, GridLines -> Automatic, PlotLayout -> "Magnitude"]BiquadraticFilterModel[{"Bandpass", {{ω, Q}}}]tf = BiquadraticFilterModel[{"Bandpass", {{1, 10}}}, s]BodePlot[tf, {0.1, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]BiquadraticFilterModel[{"Bandstop", {{ω, Q}}}]tf = BiquadraticFilterModel[{"Bandstop", {{1, 2}}}, s]BodePlot[tf, {0.1, 10}, PlotRange -> {0, -10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]BiquadraticFilterModel[{"Allpass", {{ω, Q}}}]tf = BiquadraticFilterModel[{"Allpass", {{1, 2}}}, s]BodePlot[tf, PlotRange -> {0.99, 1.01}, PlotLayout -> "Magnitude"]中心周波数
,Q値
,ゲイン値
の記号的な"Peaking"オールパスフィルタ:
BiquadraticFilterModel[{"Peaking", {{ω, Q}}, g}]tf = BiquadraticFilterModel[{"Peaking", {{1, 1}}, Quantity[10, "dB"]}, s]BodePlot[tf, {0.1, 10}, PlotRange -> {-5, 15}, GridLines -> Automatic, PlotLayout -> "Magnitude"]中心周波数
,Q値
,ゲイン値
の記号的な"LowShelf"フィルタ:
BiquadraticFilterModel[{"LowShelf", {{ω, Q}}, g}]tf = BiquadraticFilterModel[{"LowShelf", {{1, 1}}, Quantity[-5, "dB"]}, s]BodePlot[tf, {0.1, 10}, PlotRange -> {-10, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]中心周波数
,Q値
,ゲイン値
の記号的な"HighShelf"フィルタ:
BiquadraticFilterModel[{"HighShelf", {{ω, Q}}, g}]tf = BiquadraticFilterModel[{"HighShelf", {{1, 1}}, Quantity[-5, "dB"]}, s]BodePlot[tf, {0.1, 10}, PlotRange -> {-10, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]一般化と拡張 (1)
2つあるいはそれ以上のフィルタを直列に繋いでストップバンド減衰を改善する:
tf = BiquadraticFilterModel[{"Lowpass", {{1, 1}}}];
tfs = NestList[SystemsModelSeriesConnect[tf, #]&, tf, 2]BodePlot[tfs, {0.1, 10}, PlotRange -> {-120, 20}, GridLines -> Automatic, PlotLayout -> "Magnitude", FrameTicks -> {{Range[0, -120, -40], None}, {Automatic, Automatic}}, PlotLegends -> {"40 dB/decade", "80 dB/decade", "120 dB/decade"}]アプリケーション (1)
in = (Sin[ 1 / 5 t] + Sin[5t]) UnitStep[t];
Plot[in, {t, 20, 60}]tf = BiquadraticFilterModel[{"Lowpass", {{1, 1}}}];
out = OutputResponse[tf, in, {t, 0, 60}];
Plot[out, {t, 20, 60}]3つフィルタを組み合せて高次フィルタを作り,フィルタリングの質を改善する:
tf2 = Nest[SystemsModelSeriesConnect[tf, #]&, tf, 2]out = OutputResponse[tf2, in, {t, 0, 60}];
Plot[out, {t, 20, 60}]特性と関係 (7)
type = {"Lowpass", "Highpass", "Bandpass", "Bandstop"};
tfs = BiquadraticFilterModel[{#, {{1, 1}}}]& /@ type;
BodePlot[tfs, {0.1, 10.}, PlotLayout -> "Phase", GridLines -> Automatic, PlotLegends -> type]BiquadraticFilterModelの次数を抽出する:
SystemsModelOrder[StateSpaceModel[BiquadraticFilterModel[{"Lowpass", {{1., 1.}}}]]]tf = BiquadraticFilterModel[{"Lowpass", {{1, 1}}}];
BodePlot[tf, {0.1, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude"]tf = BiquadraticFilterModel[{"Lowpass", {{1, #}}}]& /@ {1 / 2, 1, 3, 9};
BodePlot[tf, {0.1, 10}, GridLines -> Automatic, PlotRange -> {-20, 20}, PlotLayout -> "Magnitude", PlotLegends -> {0.5, 1., 3., 9.}]tf = BiquadraticFilterModel[{"Bandpass", {{1., #}}}]& /@ {0.5, 1., 3.};
BodePlot[tf, {0.1, 10}, GridLines -> Automatic, PlotLayout -> "Magnitude", PlotRange -> {-40, 5}, PlotLegends -> {0.5, 1., 3.}]tfboost = BiquadraticFilterModel[{"Peaking", {{1, 1}}, #}, s]& /@ {4 / 3, 5 / 3, 6 / 3}BodePlot[tfboost, {0.1, 10}, PlotRange -> {-15, 15}, PlotLayout -> "Magnitude", GridLines -> Automatic, PlotLegends -> N@{4 / 3, 5 / 3, 6 / 3}]ゲイン値
はピーキングイコライザの振幅特性を「カット」する:
tfcut = BiquadraticFilterModel[{"Peaking", {{1, 1}}, #}, s]& /@ {3 / 6, 3 / 5, 3 / 4}BodePlot[tfcut, {0.1, 10}, PlotRange -> {-15, 15}, PlotLayout -> "Magnitude", GridLines -> Automatic, PlotLegends -> N@{3 / 6, 3 / 5, 3 / 4}]tfboost = BiquadraticFilterModel[{"LowShelf", {{1, 1}}, #}, s]& /@ {4 / 3, 5 / 3, 6 / 3}BodePlot[tfboost, {0.1, 10}, PlotRange -> {-15, 15}, PlotLayout -> "Magnitude", GridLines -> Automatic, PlotLegends -> N@{4 / 3, 5 / 3, 6 / 3}]ゲイン値
はローシェルフフィルタの振幅特性を「カット」する:
tfcut = BiquadraticFilterModel[{"LowShelf", {{1, 1}}, #}, s]& /@ {3 / 6, 3 / 5, 3 / 4}BodePlot[tfcut, {0.1, 10}, PlotRange -> {-15, 15}, PlotLayout -> "Magnitude", GridLines -> Automatic, PlotLegends -> N@{3 / 6, 3 / 5, 3 / 4}]関連するガイド
テキスト
Wolfram Research (2016), BiquadraticFilterModel, Wolfram言語関数, https://reference.wolfram.com/language/ref/BiquadraticFilterModel.html.
CMS
Wolfram Language. 2016. "BiquadraticFilterModel." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/BiquadraticFilterModel.html.
APA
Wolfram Language. (2016). BiquadraticFilterModel. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BiquadraticFilterModel.html
BibTeX
@misc{reference.wolfram_2026_biquadraticfiltermodel, author="Wolfram Research", title="{BiquadraticFilterModel}", year="2016", howpublished="\url{https://reference.wolfram.com/language/ref/BiquadraticFilterModel.html}", note=[Accessed: 12-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_biquadraticfiltermodel, organization={Wolfram Research}, title={BiquadraticFilterModel}, year={2016}, url={https://reference.wolfram.com/language/ref/BiquadraticFilterModel.html}, note=[Accessed: 12-August-2026]}