| 開発者 | ウォータールー メープル(Maplesoft) |
|---|---|
| 初回リリース | 1982 |
| 安定版リリース | 2024年(2024年3月6日)[±] [1]
|
| 書かれた | C、Java、Maple |
| プラットフォーム | Windows (7、8、10)、macOS、Linux |
| 利用可能 | 英語、日本語、その他の言語でも限定的にサポートされています[2] |
| タイプ | 数式処理システム、数値計算 |
| ライセンス | 独自の 商用ソフトウェア |
| Webサイト | www.maplesoft.com/products/Maple/ |
Maple は、記号および数値コンピューティング環境であり、マルチパラダイム プログラミング言語でもあります。記号数学、数値解析、データ処理、視覚化など、技術コンピューティングのさまざまな分野をカバーしています。ツールボックスのMapleSimは、マルチドメイン物理モデリングとコード生成の機能を追加します。
Maple の記号計算機能には、汎用コンピュータ代数システムの機能も含まれています。たとえば、数式を操作して、常微分方程式や偏微分方程式から生じる問題などの特定の問題に対する記号解を求めることができます。
Maple は、カナダのソフトウェア会社Maplesoftによって商業的に開発されています。「Maple」という名前は、このソフトウェアのカナダでの伝統を表しています。
概要
コア機能
ユーザーは、従来の数学表記法で数式を入力できます。カスタム ユーザー インターフェイスを作成することもできます。任意の精度の数値計算、記号計算、視覚化がサポートされています。記号計算の例を以下に示します。
Mapleには動的型付け命令型プログラミング言語(Pascalに似ている)が組み込まれており、レキシカルスコープの変数が許可されています。[3]また、他の言語( C、C#、Fortran、Java、MATLAB、Visual Basic)やMicrosoft Excelへのインターフェースもあります。
MapleはMathML 2.0をサポートしています。これは、Webページでの表示を含む数式を表現および解釈するためのW3C形式です。 [4]また、従来の数学表記法からLaTeX組版システムに適したマークアップに変換する機能もあります。
建築
Maple は、 Maple 言語を提供するCで記述された小さなカーネルに基づいています。ほとんどの機能は、さまざまなソースから提供されるライブラリによって提供されます。ほとんどのライブラリは Maple 言語で記述されており、ソース コードを表示できます。多くの数値計算は、 NAG Numerical Libraries、ATLASライブラリ、またはGMPライブラリによって実行されます。
Maple のさまざまな機能には、さまざまな形式の数値データが必要です。記号式は、有向非巡回グラフとしてメモリに保存されます。標準インターフェースと計算機インターフェースはJavaで記述されています。
歴史
Maple の最初の構想は、1980 年後半にウォータールー大学で行われた会議で生まれました。[5]大学の研究者たちは、Lisp ベースのコンピュータ代数システムMacsymaを実行できるほど強力なコンピュータを購入したいと考えていました。代わりに、彼らはより安価なコンピュータで実行できる独自のコンピュータ代数システムを開発することを選択しました。移植性を目指して、彼らはBCPLファミリーのプログラミング言語で Maple を書き始めました (最初はBとCのサブセットを使用し、後に C のみを使用)。[5]最初の限定バージョンは 3 週間後に登場し、より完全なバージョンは 1982 年から主流になりました。[6] 1983 年末までに、50 を超える大学のマシンに Maple がインストールされていました。[要出典]
1984年、研究グループはWatcom Products Incと契約を結び、最初の商用バージョンであるMaple 3.3のライセンス供与と配布を行いました。[6] 1988年にWaterloo Maple Inc. (Maplesoft)が設立されました。同社の当初の目標はソフトウェアの配布を管理することでしたが、最終的には独自のR&D部門を持つまでに成長し、現在ではMapleの開発のほとんどがそこで行われています(残りはさまざまな大学の研究室で行われています[7])。
1989年、Mapleの最初のグラフィカルユーザーインターフェイスが開発され、Macintosh版のバージョン4.3に含まれました。新しいインターフェイスのX11およびWindows版は、1990年のMaple Vで続きました。1992年、Maple Vリリース2では、テキスト、グラフィックス、入力、タイプセット出力を組み合わせたMaple「ワークシート」が導入されました。[8] 1994年には、Maple開発者が作成したニュースレターの特別号であるMapleTechが発行されました。[9]
1999年にMaple 6がリリースされ、MapleにはNAG Numerical Librariesの一部が組み込まれました。[10] 2003年に、現在の「標準」インターフェースがMaple 9で導入されました。このインターフェースは主にJava で書かれています(ただし、数式の組版ルールなどの部分はMaple言語で書かれています)。Javaインターフェースは遅いと批判されました。[11]その後のバージョンでは改善されましたが、Maple 11のドキュメント[12]では、物理メモリが500MB未満のユーザーには以前の(「クラシック」)インターフェースを推奨しています。
1995年から2005年にかけて、Mapleはユーザーインターフェースの弱さから競合他社にかなりの市場シェアを奪われました。[13] 2005年のMaple 10では、Mapleは新しい「ドキュメントモード」インターフェースを導入し、その後も数回のリリースでさらに開発が進められました。
2009年9月、MapleとMaplesoftは日本のソフトウェア小売業者であるサイバネットシステムによって買収されました。[14]
バージョン履歴
- Maple 1.0: 1982 年 1 月
- Maple 1.1: 1982 年 1 月
- メイプル 2.0: 1982 年 5 月
- Maple 2.1: 1982 年 6 月
- Maple 2.15: 1982 年 8 月
- Maple 2.2: 1982 年 12 月
- Maple 3.0: 1983 年 5 月
- Maple 3.1: 1983 年 10 月
- Maple 3.2: 1984 年 4 月
- Maple 3.3: 1985 年 3 月 (最初の公開バージョン)
- Maple 4.0: 1986 年 4 月
- Maple 4.1: 1987 年 5 月
- Maple 4.2: 1987 年 12 月
- Maple 4.3: 1989 年 3 月
- メイプル V: 1990 年 8 月
- メイプル V R2: 1992 年 11 月
- メイプルV R3: 1994年3月15日
- Maple V R4: 1996年1月
- メイプルV R5: 1997年11月1日
- メイプル6: 1999年12月6日
- メープル7: 2001年7月1日
- メープル8: 2002年4月16日
- メイプル9: 2003年6月30日
- Maple 9.5: 2004 年 4 月 15 日
- メイプル10: 2005年5月10日
- メイプル11: 2007年2月21日
- Maple 11.01: 2007 年 7 月
- Maple 11.02: 2007 年 11 月
- メイプル12: 2008年5月
- Maple 12.01: 2008 年 10 月
- Maple 12.02: 2008 年 12 月
- メイプル13:2009年4月28日[15]
- Maple 13.01: 2009 年 7 月
- Maple 13.02: 2009 年 10 月
- メイプル14:2010年4月29日[16]
- Maple 14.01: 2010 年 10 月 28 日
- メイプル15:2011年4月13日[17]
- Maple 15.01: 2011年6月21日
- メイプル16:2012年3月28日[18]
- Maple 16.01: 2012年5月16日
- メイプル17:2013年3月13日[19]
- Maple 17.01: 2013 年 7 月
- メイプル18: 2014年3月5日[20]
- Maple 18.01: 2014 年 5 月
- Maple 18.01a: 2014 年 7 月
- Maple 18.02: 2014年11月
- メイプル2015.0: 2015年3月4日[21]
- Maple 2015.1: 2015年11月
- メイプル2016.0: 2016年3月2日[22]
- Maple 2016.1: 2016年4月20日
- Maple 2016.1a: 2016年4月27日
- メイプル2017.0: 2017年5月25日[23]
- Maple 2017.1: 2017年6月28日
- Maple 2017.2: 2017年8月2日
- メイプル 2017.3: 2017年10月3日
- メイプル2018.0: 2018年3月21日[24]
- メイプル2019.0: 2019年3月14日[25]
- メイプル2020.0: 2020年3月12日[26]
- メイプル2021.0:2021年3月10日[27]
- メイプル2022.0:2022年3月15日[28]
- メイプル2023.0:2023年3月9日[29]
特徴
メープルの特徴は次のとおりです。[30]
- 任意の精度での記号計算と数値計算のサポート
- 初等および特殊数学関数ライブラリ
- 複素数と区間演算
- 有理数体、有限体、代数体、代数関数体上の多変数多項式の算術、最大公約数、因数分解
- 極限、級数、漸近展開
- グレブナー基底
- 微分代数
- 疎な配列のサポートを含む行列操作ツール
- 数学関数のグラフ作成とアニメーションツール
- 連立方程式、ディオファントス方程式、常微分方程式、偏微分方程式、微分代数方程式、漸化式、漸化式を解くソルバー
- 定積分および不定積分、定和および不定和、自動微分、連続および離散積分変換を含む離散および連続微積分のための数値および記号ツール
- 制約付きおよび制約なしの局所的および全体的最適化
- モデルフィッティング、仮説検定、確率分布などの統計
- データの操作、視覚化、分析のためのツール
- 確率と組み合わせ問題のためのツール
- 時系列および単位ベースのデータのサポート
- 金融・経済データのオンライン収集への接続
- 債券、年金、デリバティブ、オプションなどの財務計算のためのツール。
- ランダムプロセスの計算とシミュレーション
- 正規表現を含むテキストマイニングツール
- 信号処理および線形および非線形制御システム用のツール
- 数論を含む離散数学ツール
- 有向グラフと無向グラフを視覚化および分析するためのツール
- 置換と有限提示群を含む群論
- 記号テンソル関数
- データ、画像、サウンド、CAD、ドキュメント形式のインポートおよびエクスポートフィルター
- 数式編集を含むテクニカルワードプロセッシング
- 手続き型、関数型、オブジェクト指向構造をサポートするプログラミング言語
- 計算やアプリケーションにユーザーインターフェイスを追加するためのツール
- SQL、Java、.NET、C++、Fortran、httpに接続するためのツール
- C、C#、Fortran、Java、JavaScript、Julia、Matlab、Perl、Python、R、Visual Basicのコードを生成するツール
- 並列プログラミングのためのツール
Mapleコードの例
非負整数の階乗を計算する次のコードは、Maple 内の 命令型プログラミング構造の例です。
myfac := proc ( n::nonnegint ) local out , i ; out := 1 ; for i from 2 to n do out := out * i end do ; out end proc ;
単純な関数は、「maps to」矢印表記を使用して定義することもできます。
myfac := n -> product ( i 、i = 1. . n ) ;
統合
探す
- 。
整数( cos ( x / a ) , x ) ;
出力:
決定要因
行列の行列式を計算します。
M := Matrix ([[ 1 , 2 , 3 ] , [ a , b , c ] , [ x , y , z ]]) ; #例Matrix
線形代数:-行列式(M);
シリーズ拡大
シリーズ( tanh ( x ) 、x = 0 、15 )
方程式を数値的に解く
次のコードは、高次多項式の根を数値的に計算します。
f := x ^ 53 - 88 * x ^ 5 - 3 * x - 5 = 0
fを解く
- 1.097486315 、-。5226535640、1.099074017
同じコマンドで連立方程式を解くこともできます。
f := ( cos ( x + y )) ^ 2 + exp ( x ) * y + cot ( x - y ) + cosh ( z + x ) = 0 :
g := x ^ 5 - 8 * y = 2 :
h := x + 3 * y - 77 * z = 55 ; fsolve ( { f , g , h } ) ;
{ x = - 2.080507182 、y = - 5.122547821 、z = - 0.9408850733 }
単一変数関数のプロット
-10 から 10 までの範囲でプロットします。
プロット( x * sin ( x ) 、x = - 10. . 10 ) ;
2変数関数のプロット
-1 から 1 までの範囲でプロットします。
Lot3d ( x ^ 2 + y ^ 2 , x = - 1. . 1 , y = - 1. . 1 ) ;

関数のアニメーション
- 2変数関数のアニメーション
プロット:- animate ( subs ( k = 0.5 , f ) , x =- 30. . 30 , t =- 10. . 10 , numpoints = 200 , frames = 50 , color = red , thickness = 3 ) ;

- 3変数関数のアニメーション
プロット:- animate3d ( cos ( t * x ) * sin ( 3 * t * y ) , x =- Pi .. Pi , y =- Pi .. Pi , t = 1. . 2 ) ;

- 3Dプロットのフライスルーアニメーション。[31]
M := Matrix ([[ 400 , 400 , 200 ] , [ 100 , 100 ,- 400 ] , [ 1 , 1 , 1 ]] , datatype = float [ 8 ]) : plot3d ( 1 , x = 0. . 2 * Pi , y = 0. . Pi , axes = none , coords = spherical , viewpoint = [ path = M ]) ;

ラプラス変換
f := ( 1 + A * t + B * t ^ 2 ) * exp ( c * t ) ;
inttrans :- laplace ( f , t , s ) ;
- 逆ラプラス変換
inttrans :- invlaplace ( 1 / ( s - a ) , s , x ) ;
フーリエ変換
inttrans :-フーリエ( sin ( x ) , x , w )
積分方程式
積分方程式を満たす関数を見つける
- 。
eqn := f ( x ) - 3 * Int (( x * y + x ^ 2 * y ^ 2 ) * f ( y ) , y =- 1. . 1 ) = h ( x ) : intsolve ( eqn , f ( x )) ;
Mapleエンジンの使用
Maple エンジンは、Maplesoftの他のいくつかの製品でも使用されています。
- MapleNet を使用すると、ユーザーはJSPページとJava アプレットを作成できます。MapleNet 12 以降では、インタラクティブなコンポーネントを含むMaple ワークシートをアップロードして操作することもできます。
- MapleSim、エンジニアリングシミュレーションツール。[32]
- RDMChemのMaple Quantum Chemistry Packageは分子の電子エネルギーと特性を計算し視覚化します。[33]
以下に、Maple エンジンを使用しなくなったサードパーティの商用製品を示します。
- 1994 年から 2006 年にかけてリリースされたMathcadのバージョンには、Maple 由来の代数エンジン (MKM、別名Mathsoft Kernel Maple) が含まれていましたが、それ以降のバージョンではMuPADが使用されています。
- MATLABのSymbolic Math ToolboxにはMaple 10エンジンの一部が含まれていましたが、現在はMuPADを使用しています(MATLAB R2007b+リリース以降)。[34]
- 数学エディタScientific Workplaceの古いバージョンには計算エンジンとして Maple が含まれていましたが、現在のバージョンにはMuPADが含まれています。
参照
参考文献
- ^ 「Maplesoft メディアリリース」www.maplesoft.com . 2024 年 5 月 12 日閲覧。
- ^ 「Maple の国際言語サポート」。Maplesoft。2016年6 月 2 日閲覧。
- ^ Power of two 2010-07-06ウェイバックマシンにアーカイブされたBitwise Magazine
- ^ 「Maplesoft MathML ホームページへようこそ」www.maplesoft.com。
- ^ ab MacCallum, Malcolm AH (2018). 「重力研究におけるコンピュータ代数」Living Reviews in Relativity . 21 (1): 6. Bibcode :2018LRR....21....6M. doi : 10.1007/s41114-018-0015-6 . ISSN 2367-3613. PMC 6105178 . PMID 30174551.
- ^ ab “Mapleの歴史”。1998年12月15日。 2020年4月6日閲覧。
- ^そのような大学の研究室としては、 ウォータールー大学のシンボリック計算グループと西オンタリオ大学のオンタリオコンピュータ代数研究センターの2つがある。
- ^ Maple V リリース 2 ノート Maplesoft
- ^ 「MTN特別号1994」web.mit.edu。
- ^ Maple 6.0 2008-06-18 に Wayback MachineでアーカイブMacworld、2001 年 2 月
- ^ 純粋数学による知識の獲得、Scientific Computing World。
- ^ Maple 11 インストール ガイド Maplesoft
- ^ Maple の共同作成者である Gaston Gonnet 氏へのインタビュー、Wayback Machineに 2007-12-29 にアーカイブ、SIAM History of Numerical Analysis and Computing、2005 年 3 月 16 日
- ^ 「Maplesoft メディアリリース」www.maplesoft.com。
- ^ 「MaplePrimes ブログ - Maple 13 および MapleSim 2 が利用可能になりました」 。2009年4 月 28 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 14 および MapleSim 4 の発表」 。2010年4 月 29 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 15 の紹介」 。2011年4 月 11 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 16 が登場」 。2012年3 月 28 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 17 の紹介」 。2013年3 月 13 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 18 の発表」 。2014年3 月 5 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2015 が利用可能になりました!」2015 年3 月 4 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2016 の発表」 。2016年3 月 2 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2017 の発表」 。2017年5 月 25 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2018 が登場!」2018 年3 月 21 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2019 の発表」 。2019年3 月 14 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2020 がリリースされました!」 . 2020 年3 月 20 日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2021 を発表」 。2024年3 月 2 日閲覧。
- ^ 「MaplePrimes Blog - Unboxing Maple 2022」。2024年3月2日閲覧。
- ^ 「MaplePrimes ブログ - Maple 2023 が登場!」 . 2024 年3 月 2 日閲覧。
- ^ 「Maple とは: 製品の特徴 - 数学およびエンジニアリング ソフトウェア - Maplesoft」。www.maplesoft.com。
- ^ Maple 13 の新しいフライスルー機能の使用 Maplesoft
- ^ Mahmud, Khizir; Town, Graham E. (2016 年 6 月)。「電気自動車のエネルギー要件をモデル化するコンピュータ ツールのレビューと、それが電力供給ネットワークに与える影響」。応用エネルギー。172 : 337–359。Bibcode :2016ApEn..172..337M。doi : 10.1016/j.apenergy.2016.03.100。
- ^ 「MaplePrimes ブログ - Maple Quantum Chemistry Toolbox の紹介」 。2019年5 月 6 日閲覧。
- ^ 「Symbolic Math Toolbox のリリース ノート」。MathWorks。2014年7 月 10 日閲覧。
外部リンク
- Maplesoft、Waterloo Maple, Inc. の部門 – 公式ウェブサイト
