FVTool
(削除予定) フィルターの可視化ツール
FVTool は将来のリリースで削除される予定です。代わりにフィルター アナライザーを使用してください。詳細については、バージョン履歴を参照してください。
説明
フィルターの可視化ツールは、フィルターの応答や係数などの情報を表示して解析することができる対話型アプリです。また、FVTool とフィルター デザイナーを同期すれば、フィルター設計に加えた変更を即時に可視化できます。
このアプリでは、以下を表示できます。
振幅応答
位相応答
群遅延
位相遅延
インパルス応答
ステップ応答
極-零点プロット
フィルター係数
フィルター情報
詳細については、解析タイプを参照してください。

FVTool を開く
FVTool は、プログラムでの使用で説明されているいずれかの方法を使用して、プログラムによって開くことができます。
例
通過帯域リップル 3 dB、阻止帯域の減衰量 50 dB、サンプル レート 1 kHz、正規化された通過帯域エッジ 300 Hz の 6 次の楕円フィルターを考えます。フィルターの振幅応答を表示します。
[b,a] = ellip(6,3,50,300/500); fvtool(b,a)
関連する例
プログラムでの使用
fvtool(
では、FVTool が開き、分子 b
,a
)b
と分母 a
で定義されるデジタル フィルターの振幅応答が表示されます。係数 b
と a
をべき乗 z-1 の昇順で指定します。
fvtool(
では、FVTool が開き、2 次セクションの L 行 6 列の行列で定義されるデジタル フィルターの振幅応答が表示されます。sos
)
sos
の行には、2 次セクション H(z) のカスケードの分子と分母の係数 bik および aik が含まれます。
セクション数 L は 2 以上でなければなりません。セクション数が 2 未満の場合は、fvtool
は入力を分子ベクトルと見なします。
fvtool(
では、FVTool が開き、デジタル フィルター d
)d
の振幅応答が表示されます。d
を周波数応答仕様に基づいて生成するには、関数 designfilt
を使用します。
fvtool(b1,a1,b2,a2,...,bN,aN)
では、FVTool が開き、分子 b1
、…、bN
と分母 a1
、...、aN
で定義される複数のフィルターの振幅応答が表示されます。
fvtool(
では、FVTool が開き、2 次セクション行列 sos1
,sos2
,...,sosN
)sos1
、sos2
、...、sosN
で定義される複数のフィルターの振幅応答が表示されます。
fvtool(
では、FVTool が開き、Hd
)dfilt
フィルター オブジェクト Hd
または dfilt
フィルター オブジェクトの配列に対する振幅応答が表示されます。
fvtool(
では、FVTool が開き、Hd1
,Hd2
,...,HdN
)dfilt
オブジェクト Hd1
、Hd2
、...、HdN
のフィルターの振幅応答が表示されます。
では、Figure ハンドル h
= fvtool(___)h
が返されます。このハンドルを使用して、コマンド ラインから FVTool を操作することができます。詳細については、MATLAB コマンド ラインからの FVTool の制御を参照してください。
詳細
ツールストリップ上のコントロールを使用して 1 つ以上のフィルターの応答を表示し、解析します。
既定では、1 つのフィルターの振幅応答が表示されます。表示を変更するには、ツールストリップの [解析] セクションで、[解析] リストからオプションを選択します。
プロットに 2 つ目の応答を重ね合わせるには、ツールストリップの [解析] セクションで、[解析の重ね合わせ] リストから使用できる応答を選択します。2 つ目の y 軸が応答プロットの右側に追加されます。[解析パラメーター] ダイアログ ボックスには、x 軸と両方の y 軸のパラメーターが表示されます。
ビュー設定と解析パラメーターの調整、またはサンプリング周波数の指定を行うには、ツールストリップ上の該当するボタンを使用します。プロットの凡例とグリッドの表示を切り替えることもできます。
プロットを編集するには、最初に [Figure に送信] をクリックします。新しい Figure ウィンドウで、プロット編集ツール バーを使用します。
FVTool には、以下の解析タイプがあります。
解析 | 説明 |
---|---|
振幅応答 | |
位相応答 |
|
振幅応答と位相応答 |
|
群遅延 |
|
位相遅延 |
|
インパルス応答 |
|
ステップ応答 |
|
極-零点プロット |
|
フィルター係数 |
|
フィルター情報 |
|
フィルター デザイナー アプリでフィルターの解析を表示しているときに、アプリ内で、[ビュー] 、 [フィルターの可視化ツール] を選択するか、[フルビュー解析] ツール バー ボタン を選択して、フィルターの FVTool を開きます。FVTool で、[リンク] ボタンを使ってフィルター デザイナーにリンクします。FVTool の現在の表示は、フィルター デザイナーでフィルターに変更が加えられると更新されます。既定で、現在のフィルターはそのまま維持され、新しいフィルターが表示に追加されます。現在のフィルターを削除して新しいフィルターを挿入するには、ツールストリップの [フィルター デザイナー] セクションで [置き換え] チェック ボックスを選択します。
バージョン履歴
R2006a より前に導入FVTool は将来のリリースで削除される予定です。代わりにフィルター アナライザーを使用してください。これらの間には相違点があるため、コードを更新する必要があります。
次のフィルターを検討してください。
[b,a] = ellip(5,5,60,[0.2 0.45]); dFd = designfilt("bandpassfir", ... SampleRate=2e3,PassbandRipple=5, ... StopbandFrequency1=500,PassbandFrequency1=600, ... StopbandAttenuation1=80, ... PassbandFrequency2=750,StopbandFrequency2=900, ... StopbandAttenuation2=40);
フィルターの分子係数 b
、分母係数 a
、および digitalFilter
オブジェクト dFd
が指定されている場合は、コードを次のように更新しなければなりません。
R2024a 以前の元のコード | R2024b で更新されたコード |
---|---|
fvtool(b,a,dFd) | filterAnalyzer(b,a,dFd) |
fvtool(b,a,dFd,Analysis="freq") | filterAnalyzer(b,a,dFd, ... Analysis="magnitude",Overlay="phase") |
fvtool(b,a,Fs=1000) | filterAnalyzer(b,a,SampleRates=1000) |
fvtool(b,a,dFd,NumberofPoints=512, ... FrequencyRange="[0, 2pi)",FrequencyScale="Log") | filterAnalyzer(b,a,dFd,NFFT=512, ... FrequencyRange="twosided",FrequencyScale="log") |
hfvt = fvtool(dFd); addfilter(hfvt,dfilt.df1(b,a)) | fa = filterAnalyzer(dFd); addFilters(fa,b,a) |
hfvt = fvtool(dFd); setfilter(hfvt,dfilt.df1(b,a)) | fa = filterAnalyzer(dFd,FilterNames="df"); replaceFilters(fa,b,a,FilterNames="df") |
hfvt = fvtool(b,a,dFd); deletefilter(hfvt,2) | fa = filterAnalyzer(b,a,dFd,FilterNames=["ba" "dFd"]); deleteFilters(fa,FilterNames="dFd") |
hfvt = fvtool(b,a,dFd); legend(hfvt,"ba","dFd") | filterAnalyzer(b,a,dFd,FilterNames=["ba" "dFd"]) |
hfvt = fvtool(b,a,dFd); zoom(hfvt,[0.4 0.7 -30 0]) | fa = filterAnalyzer(b,a,dFd); zoom(fa,"xy",[0.4 0.7 -30 0]) |
fvtool(b,a,dFd,Analysis="noisepower") | filterAnalyzer(b,a,dFd,Analysis="noisepsd") |
フィルター アナライザーでは、2 次セクション (SOS) 形式はサポートされていません。代わりにカスケード伝達関数の形式を使用してください。フィルターが SOS 行列 sos
として指定されている場合は、コードを次のように更新しなければなりません。
R2024a 以前の元のコード | R2024b で更新されたコード |
---|---|
fvtool(sos) | filterAnalyzer(sos(:,1:3),sos(:,4:6)) または [ctfNum,ctfDen] = sos2ctf(sos); filterAnalyzer(ctfNum,ctfDen) |
hfvt = fvtool(sos); set(hfvt.SOSViewSettings,View="cumulative") | [ctfNum,ctfDen] = sos2ctf(sos); fa = filterAnalyzer(ctfNum,ctfDen,CTFAnalysisMode="cumulative"); |
hfvt = fvtool(sos); set(hfvt.SOSViewSettings,View="userdefined",UserDefined={3,1}) | [ctfNum,ctfDen] = sos2ctf(sos); fa = filterAnalyzer(ctfNum,ctfDen, ... CTFAnalysisMode="specify",CTFAnalysisSections={3,1}); |
FVTool の動作が変更されました。以前のリリースには、プロット編集と解析のツール バーがありました。今回のリリースからは、ツールストリップ上のフィルター可視化コントロールを使用してください。プロットを編集するには、最初にプロットを Figure にエクスポートし、その後で Figure コントロールを使用します。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)