Release 12.1 リリースノート    

メジャーバグフィックス

MATLAB 6.1 では、MATLAB 6.0 以降のいくつかのバグフィックスを含みます。本節は特に重要なバグフィックスについて説明します。

また、MATLAB 6.1 は重要な MATLAB 6.0 バグフィックス も含みます。

開発環境

ヘルプブラウザはマウスホイールをサポートします

Windows プラットフォームでは、マウスのホイールがヘルプブラウザで作動します。

UNIX Help Browser の検索結果がハイライトされるようになりました

UNIX システムでHelp browserを使って完全テキスト検索を実行すると、ページを表示した時に検索した用語がハイライトされます。

UNIX の貼り付け問題のフィックス

UNIX システム上で、切り取りやコピーの後に貼り付けを行うと、システムがハングすることがあります。この問題はフィックスされました。しかし、UNIX 自身の問題から、貼り付けがうまくできないこともあり、繰り返して行う必要があります。

数学

行列乗算のメモリリークのフィックス

状況によっては、行列乗算(行列-ベクトルの乗算、ベクトル-行列の乗算、ベクトルの内積を含めて)がメモリのリークを引き起こしていました。たとえば、Linux または Windows を Pentium III で使った場合、15,000 を越える長さのベクトルの内積は、メモリリークを引き起こしました。これは、出力されないシステムリソースの使用量が増加すると見受けられました。MATLAB 6.1 は、メモリをリークしない新規 ATLAS BLAS ライブラリを使用しています。

eigs(A,k,'sm') と eigs(A,k,0) の収束の改善

MATLAB 6.0 では、eigs は、ARPACK ライブラリのルーチンを使用するように再導入されました。最小固有値の場合、sigma = 'sm'sigma = 0 は誤ったアルゴリズムを選択していました。MATLAB 6.1 では、正しい ARPACK アルゴリズムが使用されており、収束も格段に速くなっています。

このバグフィックスは、旧バージョンとの互換性がありません。A が関数 Afun で、sigma = 'sm'の場合、AfunY = A\x を出力しなければなりません。MATLAB 6.1 以前は、この場合には y = A*x を出力するには eigsAfun を必要としていました。

quad サンプリングの改善

MATLAB 6.0 では、quad('cos(4*n*x)',-pi,pi)0 ではなく 2*pi を出力していました。quad が最初に関数のサンプリングしたときには、関数は [-pi,pi] 上の定数 1 であると誤ってみなしていたため、2*pi を出力していました。現バージョンでは、より注意深くサンプリングするようになり、0 を出力します。

griddata3 の内部行列エラーメッセージ

MATLAB 6.0 では、内部エラーによって griddata3 がエラーメッセージ Inner matrix dimensions must agree を表示することがあります。このエラーは修正されました。

縮退三角形分割の取り扱いの改善

MATLAB 6.0 では、縮退三角形分割に関連した問題が見受けられました。例えば、convhull は、元のデータすべてを含まない凸包を生成していました。MATLAB 6.1 では、ユーティリティ関数 delaunayc を Qhull で置き換えることにより、この問題を解消しています。

Qhull関連の関数のエラーメッセージ表示

MATLAB 6.0 では、Qhull関連の関数(例.delaunayn)は標準エラーとしてエラーメッセージを表示していました。UNIX プラットフォームでは、標準エラーはコマンドウィンドウとは異なります。MATLAB 6.1 では、エラーメッセージはコマンドウィンドウに表示されます。

histc は最初の2つのビンを正しく計算します

MATLAB 6.0 以前は、histc は最初の2つのビンに対して極端に不均一なエッジの場合は、誤った結果を生成していました。この問題は、MATLAB 6.0 で修正されました。


グラフィカルユーザインタフェースの作成 -- GUIDE プラットフォームの制限