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'
の場合、Afun
は Y = A\x
を出力しなければなりません。MATLAB 6.1
以前は、この場合には y = A*x
を出力するには eigs
は Afun
を必要としていました。
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 | プラットフォームの制限 | ![]() |