CompanionMatrix[cvec]
係数ベクトル cvec に対応する同伴行列を返す.
CompanionMatrix[poly,x]
x の多項式 poly に対応する同伴行列を返す.
CompanionMatrix[…,dir]
指定 dir の向きの同伴行列を返す.
CompanionMatrix
CompanionMatrix[cvec]
係数ベクトル cvec に対応する同伴行列を返す.
CompanionMatrix[poly,x]
x の多項式 poly に対応する同伴行列を返す.
CompanionMatrix[…,dir]
指定 dir の向きの同伴行列を返す.
詳細とオプション
- 同伴行列は,行列のフロベニウス分解の構成要素を与える
- CompanionMatrix[c]は,デフォルトで,下対角成分が1に等しく最終列がモニック特性多項式の係数の符号を反転したものからなる行列を返す.
-
C=
- CharacteristicPolynomial[CompanionMatrix[C],x]は,符号まで,
である.MatrixMinimalPolynomial[CompanionMatrix[C],x]は厳密にその多項式である. » - 同伴行列
は,以下のような巡回部分空間に自然に発生する. »
, …,
, 
- ここで,
はUnitVector[n,i]である.FrobeniusDecompositionはこの形式のブロック同伴行列を返す. - 転置された同伴行列は,単一の微分方程式
を状態
を使って状態空間形式に変換する際に自然に発生する.
のとき
で
⟹
. - StateSpaceModel[TransferFunctionModel[…]]は.この形式の系を返す.
- CompanionMatrix[cvec]は,リストの長さと等しい次数の陰的モニック項を仮定する,具体的には,リストcvec={c0,c1,…cn}を多項式
の係数として扱う. » - CompanionMatrix[{poly,x}]は,陰的最高次数項を仮定しない.これは,poly が明示的に x の(正の次数の)多項式であることを要求する.
- CompanionMatrix[c,dir]は dir を使って結果の行列の配置を決定する.これは,Right(デフォルト),Bottom,Left,Topのいずれかでなければならない.c の係数はこの指示子を使って置かれる.
- RightまたはLeftについては,それぞれ係数は最後または最初の列に沿って並ぶことになる.一方,BottomまたはTopについては,それぞれ係数は最後または最初の行に沿って配置されることになる.さらに,RightおよびBottomの場合には,定数項の係数が最初に位置するが,LeftおよびTopの場合には,最高次数項が最初に配置される.1の並ぶ帯については,RightおよびTopでは下側対角線(サブ対角線)に,BottomおよびLeftでは上側対角線(スーパー対角線)に位置する.
- 最もよく使われる方向のTopとBottomは互いに互いの転置である.同様に,TopとLeftは互いに互いの転置である. »
- 同伴行列の固有値は,方向の選択とは無関係に,poly の根である. »
- 次は,使用可能なオプションである.
-
TargetStructure Automatic 返される行列の構造 - 次は,TargetStructureの可能な設定である.
-
Automatic 返される表現を自動的に選択する "Dense" 行列を密行列として表現する "Sparse" 行列を疎配列として表現する
例題
すべて開く すべて閉じる例 (1)
スコープ (3)
CompanionMatrixは明示的な多項式を取る:
CompanionMatrix[3 + x - 2x ^ 2 + 4x ^ 3, x]CompanionMatrixは記号入力を取る:
CompanionMatrix[{a, b, c}]coeffs = {1, 3, 5, 7};
CompanionMatrix[coeffs]CompanionMatrixは,デフォルトで,Right指定を使う:
cr = CompanionMatrix[coeffs, Right]cb = CompanionMatrix[coeffs, Bottom]cb == Transpose[cr]ct = CompanionMatrix[coeffs, Top]cl = CompanionMatrix[coeffs, Left]cl == Transpose[ct]Table[Labeled[MatrixForm[CompanionMatrix[coeffs, pl]], pl], {pl, {Right, Left, Bottom, Top}}]オプション (1)
TargetStructure (1)
デフォルトで,CompanionMatrixは密な行列を返す:
coeffs = {1.5, 3.8, -4.2, 5.1, -2.3};
dm = CompanionMatrix[coeffs]代りにSparseArrayを返す:
sa = CompanionMatrix[coeffs, TargetStructure -> "Sparse"]dm == sa特性と関係 (6)
CompanionMatrix[a0+a1x+…+an-1 xn-1+xn,x]とCompanionMatrix[{a0,…,an-1}]は同じものである:
CompanionMatrix[2 + 3x + 4x ^ 2 + x ^ 3, x] == CompanionMatrix[{2, 3, 4}]
のときのMatrixMinimalPolynomial[CompanionMatrix[c],x]の
の同伴多項式
:
c = CompanionMatrix[{c0, c1, c2}];
μ = MatrixMinimalPolynomial[c, x]このとき,CharacteristicPolynomial[c,x]は,
倍の最小多項式となる:
CharacteristicPolynomial[c, x] == (-1)^Length[c]μpoly = 1 + 2 x + 3 x^2 + x^3;Eigenvalues[CompanionMatrix[poly, x]]Roots[poly == 0, x, Cubics -> False]Eigenvalues[CompanionMatrix[poly, x, #]]& /@ {Right, Bottom, Left, Top}CompanionMatrix[{c0,c1,…}]の行列式は c0である:
Det[CompanionMatrix[{c0, c1, c2, c3}]]Det[CompanionMatrix[c0 + c1 x + c2 x ^ 2 + c3 x ^ 3 + x ^ 4, x]]Inverse[CompanionMatrix[{c0, c1, c2, c3}]]m = {{1, -3, 4}, {3, -7, 6}, {-2, -2, 19}};
cp = CharacteristicPolynomial[m, x]CompanionMatrix[cp, x]FrobeniusDecomposition[m][[2]]c==CompanionMatrix[{c0,c1,…}]のとき,ベクトル
,
,
,
は
の標準基底である:
c = CompanionMatrix[{c0, c1, c2, c3}];Table[MatrixPower[c, i - 1].UnitVector[4, 1] == UnitVector[4, i], {i, 4}]c.UnitVector[4, 4]関連するガイド
-
▪
- 行列分解
テキスト
Wolfram Research (2025), CompanionMatrix, Wolfram言語関数, https://reference.wolfram.com/language/ref/CompanionMatrix.html (2026年に更新).
CMS
Wolfram Language. 2025. "CompanionMatrix." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2026. https://reference.wolfram.com/language/ref/CompanionMatrix.html.
APA
Wolfram Language. (2025). CompanionMatrix. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CompanionMatrix.html
BibTeX
@misc{reference.wolfram_2026_companionmatrix, author="Wolfram Research", title="{CompanionMatrix}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/CompanionMatrix.html}", note=[Accessed: 04-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_companionmatrix, organization={Wolfram Research}, title={CompanionMatrix}, year={2026}, url={https://reference.wolfram.com/language/ref/CompanionMatrix.html}, note=[Accessed: 04-September-2026]}