Maple Professionel
Maple Académique
Maple Edition Étudiant
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professionel
MapleSim Académique
Maple T.A. - Suite d'examens de classement
Maple T.A. MAA Placement Test Suite
Möbius - Didacticiels de mathématiques en ligne
Machine Design / Industrial Automation
Aéronautique
Ingénierie des véhicules
Robotics
Energie
System Simulation and Analysis
Model development for HIL
Modélisation du procédé pour la conception de systèmes de contrôle
Robotics/Motion Control/Mechatronics
Other Application Areas
Enseignement des mathématiques
Enseignement de l’ingénierie
Enseignement secondaire et supérieur (CPGE, BTS)
Tests et évaluations
Etudiants
Modélisation financière
Recherche opérationnelle
Calcul haute performance
Physique
Webinaires en direct
Webinaires enregistrés
Agenda des évènements
Forum MaplePrimes
Blog Maplesoft
Membres Maplesoft
Maple Ambassador Program
MapleCloud
Livres blancs techniques
Bulletin électronique
Livres Maple
Math Matters
Portail des applications
Galerie de modèles MapleSim
Cas d'Etudes Utilisateur
Exploring Engineering Fundamentals
Concepts d’enseignement avec Maple
Centre d’accueil utilisateur Maplesoft
Centre de ressources pour enseignants
Centre d’assistance aux étudiants
LinearAlgebra[Multiply] - 行列、ベクトルとスカラーの積の計算
使い方
Multiply(A, B, ip, outopt)
パラメータ
A - 行列、ベクトル、またはスカラー
B - 行列、ベクトル、またはスカラー
ip - (オプション) BooleanOpt(inplace); 出力が入力を上書きするかどうかを指定
outopts - (オプション) outputoptions=list の形をした等式; 結果として得られるオブジェクトのコンストラクタオプション
説明
Multiply(A, B) 関数は、積 A . B を計算します。返される結果の型は、A と B に依存しています。(プログラミングノート の下の表を参照)
inplace オプション (ip) は結果が返される場所を決めます。inplace=true が与えられれば、結果は最初の引数に上書きされます。 inplace=false が与えられるか、または呼び出し手順に含まれていないときは、結果は新しい行列(あるいはベクトル)として返されます。
第1引数がスカラーならば、計算は第2引数に対して行われます(可能ならば)。両方の引数がスカラーのときは、inplace と outputoptions パラメータは無視されます。
inplace=true という条件は、inplace と略記することができます。
inplace オプションは、注意して使わなければいけません。なぜなら、演算が失敗すれば元の行列(あるいはベクトル)の引数は改悪されてしまうからです。
outputoptions オプション (outopts) は、結果を作成する Matrix (あるいは Vector) コンストラクタに付加情報 (readonly, shape, storage, order, datatype, attributes) を与えます。
inplace と outputoptions オプションは両立しません。
この関数は LinearAlgebra パッケージの一部ですから、 with(LinearAlgebra) を実行した後にのみ Multiply(..) の形で使うことができます。ただし、長い形の名前 LinearAlgebra[Multiply](..) を使えばいつでもアクセスすることができます。
この関数は、同等のショートカット表記 A.B を持ちます。(LinearAlgebra[Multiply] は型 algebraic の任意の式を scalar として扱うが、型 rtable の式を scalar として扱わない、その一方で、 dot 演算は constant の型のオブジェクトだけをスカラーとして扱うという例外があります)。詳しくは、dot 演算を参照してください。
プログラミングノート
このルーチンは、 LinearAlgebra パッケージ内の対応するバイナリー乗法ルーチンを選ぶために A と B の型を用います。(LinearAlgebra パッケージによるプログラミング を参照してください。呼び出されたパラメータ型、対応する結果の型、呼び出される LinearAlgebra の乗法ルーチンを、次の表に示します。
B A qXn 1Xn qX1 行列 行ベクトル 列ベクトル スカラー mXq mXn 行列 エラー mX1 列ベクトル mXq 行列 行列 MatrixMatrixMultiply MatrixVectorMultiply MatrixScalarMultiply 1Xq 1Xn 行ベクトル エラー スカラー 1Xq ベクトル 行ベクトル VectorMatrixMultiply VectorScalarMultiply mX1 エラー mXn 行列 (外積) エラー mX1 ベクトル 列ベクトル OuterProductMatrix VectorScalarMultiply qXn 行列 1Xn 行ベクトル qX1 列ベクトル スカラー スカラー MatrixScalarMultiply VectorScalarMultiply VectorScalarMultiply 標準的な積
注意:
* A か B のどちらかが識別できない型 (Matrix, Vector, scalar でない)のときは、エラーが返されます。
* 外積の場合、結果は OuterProduct の shape を持つ行列として作られるのではなく、フルな長方行列として生成されます。
例
with(LinearAlgebra): A := <<n,0>|<0,n>>;
Multiply(A,A);
Multiply(A,-2,inplace);
A;
r1 := <3|2|1>;
c1 := <x,y,z>;
Multiply(r1,c1);
B := Multiply(c1,r1);
Multiply(B,<0,0,1>);
参照
Matrix, Vector, type[scalar], type[BooleanOpt], LinearAlgebra[MatrixMatrixMultiply], LinearAlgebra[MatrixVectorMultiply], LinearAlgebra[ScalarMultiply], dot
Download Help Document