36
レビュー: Maple 12

数学ソフトウェアの「 M 」の称号を持つ企業を間違えると、宗教戦争とも言えるほどの争いに発展する可能性があります。MATLAB( )(Mathematica( )(Maple)のビッグ3は、20年以上にわたり、科学者、エンジニア、そして学生に幅広い技術計算ツールを提供してきました。その結果、この種のプログラムを必要とする私たちにとって、まさに「宝の山」のような存在となっています。

Photoshop並みの高品質な画像編集アプリケーションが6つも存在し、互いに絶えず改良を重ねていたと想像してみてください。こうした競争の結果、技術計算システムは目まぐるしいスピードで革新を遂げてきました。

最新の開発は Maple によるもので、現在はバージョン 12 となっています。このアップデートでは、Maple は教育ツールとしての強みを活かし、エンジニアリングおよび技術コンピューティングの分野との結びつきを強化することを選択しました。

最大のライバルであるMathematicaと同様に、Mapleの本来の強みは記号代数でした。長年にわたり、両プログラムは数値計算機能を大幅に強化し、MATLABとほぼ同等の性能を実現しました。

ほとんどの人にとって、このようなパッケージの選択は美観と実用性に基づいていますが、選択の多くは、自分がトレーニングを受けたシステムとも関係があります。これらすべてのシステムの学習曲線は非常に急峻であり、パッケージ間には多くの概念的類似点があるにもかかわらず、いつものように、細部にこそ問題が潜んでいます。

エンジニアリング面では、Maple 12はSolidWorksやAutodesk Inventorなど、幅広いCAD環境で動作するようにアップデートされました。残念ながら、どちらもMacintoshネイティブでは動作しないため、Macユーザーはこの機能をご利用いただけません。Maple 12はDXF形式での図のエクスポートをサポートしており、熟練したユーザーはMapleアプリケーションプログラミングインターフェース(API)を活用して独自の接続を記述できます。

バージョン12で特に注目すべきは、オプションのMATLABアドオンツールボックスです。これは、MATLAB(数値計算環境およびプログラミング言語)とMaple間の通信を可能にするだけでなく、既存のMATLABコードをネイティブMapleコードに変換して活用することを可能にします。これは、使いにくいX11ベースのMATLAB環境からの移行を検討している方や、既存のMATLABコードに多額の投資をしている方にとって、間違いなく大きなメリットとなるでしょう。また、新しい動的システムツールと組み合わせることで、制御システムや状態空間といった問題に日常的に直面するエンジニアや科学者にとって魅力的なツールとなるでしょう。

統計ソフトの主力製品であるSPSS (  )と同様に、MaplesoftはユーザーインターフェースをJavaで実装することを決定しました。これは、(ほぼ)一度書けばどこでも実行できるというメリットを享受するためです。ユーザーにとっての主なメリットは、AppleがJava仮想マシン(Java VM)のサポートとチューニングを継続的に行えば、Mapleと同等のクロスプラットフォームな互換性が今後も維持される可能性が高いことです。

新しいプロット ガイドでは、Maple の包括的なプロット スタイル セットにインタラクティブにアクセスできます。

このリビジョンのMapleは、他の多くのJavaベースプログラムよりも軽快でMacライクな動作をします。パレットは巧みに設計されており、数式の入力が格段に容易になります。一部のダイアログボックスはオプションが多すぎるように感じるかもしれませんが、全体的には使いやすさと複雑さのバランスが取れています。Mapleの計算を担う基盤エンジンは、C/Fortranからコンパイルされており、64ビットモードで動作します。これは、大規模な問題の処理に大量のメモリを必要とする人にとって大きなメリットです。

Mapleは、いわゆるスマートドキュメント環境によって、従来の実験ノート形式のインターフェースを改良しました。グラフィカルインターフェースの導入以来、Mapleは従来のコマンドラインやプログラミングスタイルのインターフェースではなく、数学計算のインタラクティブ性を重視してきました。競合他社と同様に、Mapleはダイヤル、ボタン、ゲージなどのインタラクティブなコンポーネントを追加し、ユーザーが計算の流れを制御および監視できるようにしています。

Mapleでは、Mac OS Xのコンテキストメニュー機能を使って問題を直接操作したり計算したりできます。方程式(または方程式の一部)をクリックすると、コンテキストに応じたコマンドがメニューに表示され、プログラミング構文を入力しなくても、よく使う操作を実行できます。これにより、点滅する入力カーソルに戸惑う学生や初心者ユーザーにとって、ストレスが軽減されます。

注目すべきインタラクティブツールが2つあります。プロットガイドと探索アシスタントです。コンテキストメニューと同様に、これらのツールを使用すると、コーディングなしでプロットとインタラクティブな機能を作成できます。探索ツールは、式内の変数を自動的に検出し、スライダーを作成します。これにより、変数によって結果がどのように変化するかをインタラクティブに確認できます。

新しい探索アシスタントを使用すると、式やグラフィックをインタラクティブに操作できます。

同様に、プロットツールは、データや数式からグラフを作成する際の負担を軽減します。このツールは変数を検出し、適切なグラフタイプを提案します。例えば、1つの関数を持つ変数から3Dグラフを作成する必要はないため、その場合は適切な2Dグラフタイプのみがプログラムから提供されます。

これらのアシスタントを使えば、簡単な操作だけでなく、複雑なタスクも簡単に実行できます。しかし、プログラムが提供するインタラクティブな機能を最大限に活用するには、コードを少し編集する必要があるかもしれません。そのため、Maple 12ではコードエディタが改良され、構文をより適切に認識できるようになりました。

大規模なデータセットを扱うユーザーは、Maple 12 に新たに搭載されたデータベース接続機能を利用して、MySQL、Oracle、Microsoft Access、SQL、IBM DB2、Sybase などの JDBC 準拠データベースにアクセスできます。Maple から直接データベースの作成、クエリの実行、更新を行うことができ、データ形式間の変換は自動的に行われます。

Macworldの購入アドバイス

Maple 12には、新しいインタラクティブ機能をはじめ、アップグレードする十分な理由がいくつもあります。さらに、このプログラムの新しいMATLABおよび動的システム機能は、他のシステムからの移行を促す可能性も十分にあります。幸いなことに、Macにおけるインタラクティブな数学解析の環境は健全で活況を呈しており、Maplesoftのような企業は今後もこの状況を維持していく意向のようです。

[フリップ・フィリップスはスキッドモア大学の心理学および神経科学の教授です。]