OrthogonalMatrixQ

OrthogonalMatrixQ[m]

m が明示的に直交行列の場合はTrueを,その他の場合はFalseを返す.

詳細とオプション

  • pqTranspose[m].mq×q 恒等行列であるか,pqm.Transpose[m]p×p 恒等行列なら,p×q 行列 m は直交行列である.
  • OrthogonalMatrixQは記号行列および数値行列に使うことができる.
  • 使用可能なオプション
  • Normalized True行列の列が正規化されているかどうかの検定を行う
    SameTest Automatic式の等価性検定のための関数
    Tolerance Automatic近似数の許容範囲
  • 厳密行列および記号行列については,オプションSameTest->f は,f[aij,bij]Trueを与えるなら2項 aijおよび bijは等しいと考えられることを示す.
  • 近似行列の場合は,オプションTolerance->t を使い,Inが恒等行列の場合は γt を満足するノルム γ=m.mT-Inがゼロとみなされることを示すことができる.

例題

すべて開くすべて閉じる

  (2)

2×2数値行列が直交行列かどうかの検定を行う:

3×3記号行列が直交行列かどうかの検定を行う:

条件 TemplateBox[{m}, Transpose].m=I を手動で確認する:

スコープ  (14)

基本的な用法  (6)

実行列が直交行列かどうかの検定を行う:

実直交行列はユニタリ行列でもある:

複素行列が直交行列かどうかの検定を行う:

この行列は TemplateBox[{m}, Transpose].m=I を満足する:

複素数値の直交行列はユニタリ行列ではない:

厳密行列が直交行列かどうかの検定を行う:

行列を直交行列にする:

OrthogonalMatrixQを任意精度の行列に使う:

ランダム行列は,通常は直交行列ではない:

OrthogonalMatrixQを記号行列に使う:

かつ のとき,行列は直交行列になる:

OrthogonalMatrixQは大きい数値行列に効率的に作用する:

特殊行列  (4)

OrthogonalMatrixQを疎な行列に使う:

OrthogonalMatrixQを構造化行列に使う:

恒等行列は直交行列である:

HilbertMatrixは直交行列ではない:

矩形半直交行列  (4)

矩形行列が半直交行列かどうかの検定を行う:

行より列の方が多いが,このことは列が正規直交であることを示している:

列は正規直交ではない:

列より行が多い行列について調べる:

行列の列は正規直交である:

行は正規直交ではない:

ランダムな直交行列を生成する:

行の任意の部分集合が矩形半直交行列を形成する:

列の任意の部分集合も同様である:

矩形恒等行列は半直交行列である:

オプション  (4)

Normalized  (2)

記号直交行列の列は1に正規化されないことがしばしばある:

列が正規化されたかどうかの検定は避ける:

直交行列の第2列に2を掛ける:

NormalizedFalseであってもOrthogonalMatrixQmに対してTrueを返す:

しかし,Transpose[m]にはTrueを返さない:

これは,TemplateBox[{m}, Transpose].m は対角行列だが m.TemplateBox[{m}, Transpose]はそうではないからである:

SameTest  (1)

この行列は,正の実数 については直交であるが,OrthogonalMatrixQFalseを返す:

オプションSameTestを使って正しい答が得られるようにする:

Tolerance  (1)

ランダムな摂動がある次数10-13の実直交行列を生成する:

q.qは,主対角線以外では厳密にゼロではない:

行列を直交行列として承認するために,オプションToleranceを調整する:

Toleranceは次の値に適用される:

アプリケーション  (10)

直交行列の起源  (5)

TemplateBox[{}, Reals]^nの任意の正規直交基底は直交行列を形成する:

基底は正規直交である:

行列の行に基底ベクトルを入れると直交行列になる:

基底ベクトルを列に入れても直交行列になる:

Orthogonalizeを線形独立ベクトルに適用すると直交行列が生成される:

行列が正方行列である必要はない.正方行列の場合は結果の行列が半直交行列になる:

しかし,開始行列は完全階数でなければならない:

任意の回転行列は直交行列である:

置換行列は直交行列である:

CircularRealMatrixDistributionから導かれた行列は直交行列である:

直交行列の用法  (5)

直交行列はTemplateBox[{}, Reals]^nの標準内積を保持する.換言すれば, が直交行列で がベクトルなら になるということである:

このことはベクトル間の角度が変わらないことを意味する:

ノルムは内積から導かれるので,ノルムもまた保持される:

任意の直交行列は回転および/または鏡映行列を表す.行列の行列式がなら純粋の回転である.行列式がなら行列には鏡映が含まれる.次の行列について考える:

この行列は直交行列で行列式はである:

したがって,これは純粋な回転である.デカルト単位ベクトルの は相対的な位置を保持している:

次の行列は直交行列だが行列式はである:

したがって,これは鏡映を含む.デカルト単位ベクトルの の位置は逆になっている:

直交行列は,多くの行列の分解に重要な役を演じる:

行列 は任意の非零実ベクトル について常に直交行列である:

はHouseholder鏡映と呼ばれる.鏡映としての行列式はである:

これは, に垂直な平面を介した鏡映を表し, に送る:

に垂直なベクトルは によっては変えられない:

は行列の計算では与えられた列ベクトル の成分を0に設定するために使われる:

次の微分方程式を満足する関数 を求める:

反対称行列 による乗算を使って で外積を表す:

指数行列 を計算し,これを使って方程式の解を定義する:

が微分方程式と初期条件を満足することを確認する:

行列 のすべての値について直交行列である:

したがって,解の軌跡は原点から一定の距離,この場合は円,である:

特性と関係  (14)

m.Transpose[m]IdentityMatrix[n]であれば,その行列は直交行列である:

近似行列の場合は,恒等式はほぼ正しい:

直交行列の逆行列はその転置である:

したがって,逆行列と転置行列もまた直交行列である:

実直交行列はTemplateBox[{}, Reals]^nにおけるベクトルの標準内積を保つ:

結果として,実直交行列はノルムも保つ:

任意の実直交行列はユニタリ行列である:

しかし,複素ユニタリ行列は,一般に直交行列ではない:

直交行列の積は直交行列である:

実数値の直交行列は正規行列である:

複素数値の直交行列が正規行列である必要はない:

実数値の直交行列は単位円上にある固有値を持つ:

Eigenvaluesを使って固有値を求める:

それらが単位円上にあることを確かめる:

このことは複素数値の直交行列には当てはまらない:

実直交行列は固有ベクトルの完全集合を持つ:

結果として,それらは対角化可能でなければならない:

Eigenvectorsを使って固有ベクトルを求める:

複素直交行列は対角化可能ではないことがある:

実直交行列の特異値はすべて1である:

このことは複素直交行列については当てはまらなくてもよい:

直交行列の行列式は1またはである:

実直交行列の2ノルムは常に1である:

このことは複素直交行列については当てはまらなくてもよい:

直交行列の整数乗は直交行列である:

実反対称行列 m iについてのMatrixExp[m]は直交かつユニタリである:

複素反対称行列 m については,指数行列は直交行列だが,一般に,ユニタリ行列ではない:

OrthogonalMatrixを使って直交行列を明示的に構築することができる:

これはOrthogonalMatrixQを満足する:

考えられる問題  (1)

OrthogonalMatrixQは実行列と複素行列の両方に定義 TemplateBox[{m}, Transpose].m=I_nを使う:

これらの複素行列は正規行列である必要も実直交行列の多くの特性を持つ必要もない:

UnitaryMatrixQは,複素行列が正規行列であることを保証する,より一般的な定義 TemplateBox[{m}, ConjugateTranspose].m=I_nについて検定する:

あるいは,実直交行列に制限するために成分が実数であるかどうかの検定を行う:

おもしろい例題  (1)

回転行列は直交行列である:

Wolfram Research (2014), OrthogonalMatrixQ, Wolfram言語関数, https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html.

テキスト

Wolfram Research (2014), OrthogonalMatrixQ, Wolfram言語関数, https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html.

CMS

Wolfram Language. 2014. "OrthogonalMatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html.

APA

Wolfram Language. (2014). OrthogonalMatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html

BibTeX

@misc{reference.wolfram_2024_orthogonalmatrixq, author="Wolfram Research", title="{OrthogonalMatrixQ}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_orthogonalmatrixq, organization={Wolfram Research}, title={OrthogonalMatrixQ}, year={2014}, url={https://reference.wolfram.com/language/ref/OrthogonalMatrixQ.html}, note=[Accessed: 22-November-2024 ]}