Maple für Professional
Maple für Akademiker
Maple für Studenten
Maple Personal Edition
Maple Player
Maple Player für iPad
MapleSim für Professional
MapleSim für Akademiker
Maple T.A. - Testen & beurteilen
Maple T.A. MAA Placement Test Suite
Möbius - Online-Courseware
Machine Design / Industrial Automation
Luft- und Raumfahrt
Fahrzeugtechnik
Robotics
Energiebranche
System Simulation and Analysis
Model development for HIL
Anlagenmodelle für den Regelungsentwurf
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematikausbildung
Technik
Allgemein- und berufsbildende Schulen
Testen und beurteilen
Studierende
Finanzmodelle
Betriebsforschung
Hochleistungsrechnen
Physik
Live-Webinare
Aufgezeichnete Webinare
Geplante Veranstaltungen
MaplePrimes
Maplesoft-Blog
Maplesoft-Mitgliedschaft
Maple Ambassador Program
MapleCloud
Technische Whitepapers
E-Mail Newsletters
Maple-Bücher
Math Matters
Anwendungs-Center
MapleSim Modell-Galerie
Anwenderberichte
Exploring Engineering Fundamentals
Lehrkonzepte mit Maple
Maplesoft Welcome-Center
Resource-Center für Lehrer
Help-Center für Studierende
add - 値の式列の足し合わせ
mul - 値の式列の掛け合わせ
使い方
add(f, i = m..n)
add(f, i = x)
add(f, i in x)
mul(f, i = m..n)
mul(f, i = x)
mul(f, i in x)
パラメータ
f
-
式
i
名前
m, n
数値
x
add コマンドは、明示された数値の式列を足し合わせるために用います。mul コマンドは、明示された式列の積を計算します。add コマンドの典型的な呼び出し方は add(f(i), i=1..n) です。これは を計算します。より一般に、add(f(i), i=m..n) は を計算します。同様に mul(f(i), i=m..n) は を計算します。
コール add(f(i), i=x) は x のそれぞれの被作用子もしくは入力に対して f を適用したものの和を計算します。ここで x は通常、集合またはリストですが、加算とか乗算といった、op が適用できる他のあらゆるデータ構造でも構いません。同様にして、コール mul(f(i), i=x) は x の被作用子に f を適用したものの積を計算します。x に tables や Arrays、rtables が入力されると x は被作用子として読み込まれません。
add および mul コマンドは for 文によるループ処理と関連する seq コマンドと関連づけられています。2 つのコマンド add および mul をより正確に理解するには、このコマンドが以下に示す for ループ処理と同じであることに注目するとよいでしょう。ここで、式 f は指標 i の関数を表します。
add(f, i=m..n) == S := 0;
old := i;
for i from m to n do S := S+f end do;
i := old;
S; # 計算結果
mul(f, i=x) == P := 1;
for i in x do P := P*f end do;
P; # 計算結果
どちらの場合でも、add および mul コマンドの方が一般に for ループよりも効率的です。これは for ループ処理においては、多くの中間的な和や積が作られるからです。
端点 m と n は、数値定数、すなわち、整数、分数または浮動小数点数に評価される必要があります。端点について記号的な和や積を与える式を計算したい場合には、sum または product コマンドを使います。特別な場合として、m は (無限大) に、n は (マイナス無限大) に評価されても構いません。m が n よりも大きい場合、add は 0、mul は 1 を返します。
インデックス変数 i に割り当てられた既存の値は、いずれも add または mul の呼び出しの中だけのものであることにも注意して下さい。add または mul が実行されているときに同時に現れる同じ名前の局所変数や大域変数は影響を受けません。
x がスパース Matrix、Vector または rtable である場合、0 でないエントリーだけが読み込まれます。そうでなければ、indexing function もしくは storage にかかわらず、オブジェクトの全インデックススペースは読み込まれます。
記号的な和や積の計算に関しては、sum や product も参照して下さい。これらのコマンドは、明示的な和や積ではなく、不定和 (または定和) あるいは積に対する式を返すためのものです。
add(f(i), i in x) は、add(f(i), i = x) と同様のものとして扱われます。"in" と "=" の表記は add と mul で同じ結果を生成します。
スレッド安全性
add および mul コマンドは、Maple 15 以後スレッドセーフです。ただし、式 f の評価がスレッドセーフである場合に限ります。さらに、インデックス変数 i が、スレッド間で共有されないことが必要です。ローカルのプロシージャの使用を推奨します。
スレッド安全性に関する詳細は、index/threadsafe を参照してください。
例
add や mul コマンドは、明示された数値の式列の和や積を計算するために使用します。
mul( i, i=1..5 );
add( i^2, i=1..5 );
add(a[i]*x^i, i=0..5);
add と mul コマンドは、行列に使用できます。
M:=Matrix([[1,2],[3,4]]);
add(M, k=1..2);
mul(M, k=1..3);
"in" と "=" の表記は add と mul で同じ結果を生成します。
L := [seq(i, i=1..5)];
add( i, i=L );
add( i, i in L);
mul( x-i, i=L );
mul( x-i, i in L);
add コマンドは数値で指定された範囲に関してのみ働きます。
add( i^2, i=0..n );
Error, unable to execute add
sum( i^2, i=0..n );
add( i, i=infinity..0 );
mul( i, i=0..-infinity );
product(i, i=1..infinity);
関連項目
for、op、product、seq、sum、Threads[Add]、Threads[Mul]
Download Help Document