LinearAlgebra パッケージでのデータ構造について
LinearAlgebra ルーチンは、3 つの主要なデータ構造 Matrix, Vector, scalar に作用します。 Matrix と Vector の実装は Maple の rtable データ構造に基づいています。 その結果、 table ベースの array , matrix , vector は LinearAlgebra パッケージの Matrix と Vector とは互換性がありません。
注意: LinearAlgebra パッケージに関する文章は "matrix" (小文字の "m" ) が linalg パッケージの中でルーチンによって使用される table ベースの行列を意味し、 "Matrix" (大文字の "M" )は LinearAlgebra パッケージの中でルーチンによって使われる rtable ベースの行列を意味するという約束を用います。 約束は vectors と Vectors に対しても同様です。
|
Matrices
|
|
•
|
Matrix はサブタイプオプション Matrix によって、 rtable として実装されています。
|
•
|
LinearAlgebra パッケージでは以下の数学的な行列の型がサポートされています。: rectangular (長方行列)、triangular (三角行列)、Hessenberg (ヘッセンベルグ行列)、band (帯行列)、diagonal (対角行列)。これらの行列の型の各々は密または疎な形式で作成することが出来ます、そして、始めの 3 つにもまたいくつかの種類があります。
|
対称, 歪対称, エルミート, 歪エルミート
上側, 上側ユニット,
下側, 下側ユニット
|
iii. ヘッセンベルグ行列 (三角行列に対角成分を加えたもの):
|
上側, 下側
|
上記の行列の型のブロック形式に対する特別な行列の型はありません。すなわち、その機能は様々の型 (例えば、ブロック対角行列、ブロック三角行列など) のブロック行列の構造に対して存在しますが、それらのブロックは作成過程中にならされ、その結果に生じる行列はブロック形式を保存しません。
|
•
|
多くの特別な行列が LinearAlgebra パッケージで提供されます (例えば、単位行列、零行列、定数行列)。それに加えて、LinearAlgebra パッケージは多くの行列の操作を含んでいます。詳細は LinearAlgebra パッケージの紹介 を参照して下さい。
|
•
|
A+B、A-B、A.B のような行列代数の式は直接評価されます。行列代数の実行と行列の乗算演算子についての詳細は、rtable_algebra と dot をそれぞれ参照して下さい。
|
•
|
コマンド map, Map, map2, Map2 は関数を Matrix のそれぞれの成分に適用するのに用いることができます。
|
|
|
ベクトル
|
|
•
|
ベクトルは subtype オプション Vector[column] または Vector[row] により rtable として実装されています。
|
•
|
多くの特別なベクトルが LinearAlgebra パッケージで提供されます (例えば、単位ベクトル、零ベクトル、定数ベクトル)。それに加えて、LinearAlgebra パッケージは 多くのベクトル操作を含みます。詳細は LinearAlgebra パッケージの紹介 を参照して下さい。
|
•
|
コマンド map, Map, map2, Map2 は関数を Vector のそれぞれの成分に適用するのに用いることができます。
|
|
|
スカラー
|
|
•
|
スカラー は行列やベクトルを含まない型 algebraic を持つ Maple オブジェクトです。
|
|
|
他のMapleオブジェクトとの互換性
|
|
以下のオブジェクトは Matrix, Vector, スカラーとは認められません。
•
|
rtable に基づく Arrays ( subtype オプション Array を持つ rtable)
|
|
|
Download Help Document
Was this information helpful?