MATLAB ヘルプ センター
多項式の根のスケーリング
b = polyscale(a,alpha)
b = polyscale(a,alpha) は、z 平面で多項式の根をスケーリングします。ここで、a は多項式の係数を格納し、alpha はスケーリング ファクターです。polyscale 関数は、スケーリングされた多項式係数 b を返します。
b
a
alpha
polyscale
例
すべて折りたたむ
方程式 x7=1 の解を多項式の根として表します。複素平面に根をプロットします。
pp = [1 0 0 0 0 0 0 -1]; zplane(pp,1)
p の根を単位円の内外にスケーリングします。結果をプロットします。
p
hold on for sc = [1:-0.2:0.2 1.2 1.4] b = polyscale(pp,sc); plot(roots(b),"o") end axis([-1 1 -1 1]*1.5) hold off
Fs=7418Hz でサンプリングされた音声信号を読み込みます。ファイルには、"MATLAB®" という単語を発声している女性の録音音声が含まれています。
load mtlb
12 次の自己回帰多項式を使用して、この信号の 100 サンプルのセクションをモデル化します。自己回帰多項式の根を 0.85 でスケーリングすることによって、信号の帯域幅拡張を実行します。
Ao = lpc(mtlb(1000:1100),12); Ax = polyscale(Ao,0.85);
モデルの零点、極および周波数応答をプロットします。
tiledlayout(2,2) nexttile(1) zplane(1,Ao) title("Original") nexttile(3) zplane(1,Ax) title("Flattened") nexttile([2 1]) [ho,w] = freqz(1,Ao); [hx,w] = freqz(1,Ax); plot(w/pi,abs([ho hx])) legend("Original","Flattened")
入力多項式係数。行ベクトルまたは行列として指定します。a を行列として指定した場合、polyscale は各行を入力多項式係数から成る独立したベクトルとして扱います。
データ型: single | double 複素数のサポート: あり
single
double
スケーリング係数。スカラーまたはベクトルとして指定します。alpha を行ベクトルとして指定した場合、alpha には a の行と同じ数の要素が含まれていなければなりません。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 複素数のサポート: あり
int8
int16
int32
int64
uint8
uint16
uint32
uint64
スケーリングされた多項式係数。行ベクトルとして返されるか、サイズとデータ型が a と同じ行列として返されます。
自己回帰多項式の根の半径を小さくすると、周波数応答のスペクトル ピークの帯域幅が拡大 (平坦化) されます。この演算は、多くの場合帯域幅拡張と呼ばれます。
R2006a より前に導入
polystab | roots
polystab
roots
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 のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ