このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
root
多項式の根の表現
説明
例
高次多項式の根の表現
多項式 の根を root
を使用して表します。関数 root
は列ベクトルを返します。このベクトルの要素は、多項式の 3 つの根を表します。
syms x
p = x^3 + 1;
root(p,x)
ans =
は p
の 1 番目の根を表し、 は 2 番目の根を表します。以下同様に続きます。この構文を使用して、高次多項式の根を表します。
高次多項式の根の計算
高次多項式を解く場合、solve
は root
を使用して根を表します。あるいは、MaxDegree
オプションを使用して明示的な解を返したり、vpa
を使用して数値結果を返したりもできます。
x^3 + 3*x - 16
の根を求めます。
syms x
p = x^3 + 3*x - 16;
R = solve(p,x)
R =
MaxDegree
オプションに多項式の次数を設定して、明示的に根を求めます。4
より大きい次数の多項式は明示的な解をもちません。
Rexplicit = solve(p,x,"MaxDegree",3)
Rexplicit =
vpa
を使用して R
を高精度浮動小数点に変換し、根を数値的に求めます。
Rnumeric = vpa(R)
Rnumeric =
root
の呼び出しにパラメーターが含まれる場合は、subs
を使用してパラメーターに数値を代入してから vpa
を呼び出します。
シンボリック計算における root
の使用
関数 root
は、simplify
、subs
、diff
などの Symbolic Math Toolbox 関数への入力として使用できます。
root
を含む式を関数 simplify
を使用して単純化します。
syms x
r = root(x^6 + x, x, 1);
simplify(sin(r)^2 + cos(r)^2)
ans =
subs
を使用して root
内のパラメーターに数値を代入します。
syms b
subs(root(x^2 + b*x, x, 1), b, 5)
ans =
vpa
を使用して root
を数値形式に変換する前に、subs
を使用したパラメーターへの代入が必要です。
diff
を使用して root
を含む式をパラメーターについて微分します。
diff(root(x^2 + b*x, x, 1), b)
ans =
多項式の比率の逆ラプラス変換の計算
ilaplace
を使用して 2 つの多項式の比率の逆ラプラス変換を求めます。逆ラプラス変換は root
に関して返されます。
syms s
G = (s^3 + 1)/(s^6 + s^5 + s^2);
H = ilaplace(G)
H =
関数 root
が出力で得られる場合、この後のシンボリック計算で関数 root
を入力として使用できます。しかし、数値結果が求められる場合は、vpa
を使用して、関数 root
を高精度の数値結果に変換します。
vpa
を使用して逆ラプラス変換を数値形式に変換します。
H_vpa = simplify(vpa(H))
H_vpa =
入力引数
p
— シンボリック多項式
シンボリック式
シンボリック多項式。シンボリック式として指定します。
x
— 変数
シンボリック変数
変数。シンボリック変数として指定します。
k
— 多項式の根の番号
数値 | ベクトル | 行列 | 多次元配列 | シンボリック数 | シンボリック ベクトル | シンボリック行列 | シンボリック多次元配列
多項式の根の番号。数値、ベクトル、行列、多次元配列、あるいはシンボリック数、ベクトル、行列、関数または多次元配列として指定します。k
が非スカラーの場合、root
は k
の要素単位で動作します。
例: root(f,x,3)
は、f
の 3 番目の根を表します。
ヒント
vpa
を使用して可変精度のシンボリック数を返すことにより、関数root
を含むシンボリック式を数値的に近似することができます。R2023a 以降では、matlabFunction
を使用することで、式を Symbolic Math Toolbox なしで使用できる MATLAB® 関数に変換できます。生成されたファイルは、数値double
データ型で演算を行う関数roots
を使用します。
バージョン履歴
R2015b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)