|
|
|
MATFOR in VB and C# の紹介
|
再度、AnCAD 社は、MATFOR in VB and C# のリリースにより、新しいマイルストーンへ踏み出します。 VB と C# 環境でのグラフィックと数値計算テクニックの需要の増加に伴い、AnCAD 社の開発チームは、VB と C# 環境で、視覚的なプレゼンテーションと数値計算を可能とする MATFOR パッケージを開発しました。 幅広い開発言語のサポートで、AnCAD 社は、金融および科学産業のさまざまな開発者の要望に適することを願っています。 |
|
|
Visual Studio の欠点
|
.NET framework の登場以来、一つの開発言語にとらわれなくなったので、アプリケーションのビルドは、より柔軟になりまし。 Visual Studio は、ソフトウェア開発市場を占める優れたツールではあるが、Visual Studio は、膨大なデータ セットを処理し、グラフィックや数値計算機能を必要とする一部のユーザーを無視してきました。 その結果、大学では、大学院生が研究よりもむしろコードプロシージャを勉強することになることがあります。 ただし、スモール ビジネスに当てはめると、同じ戦略は経済的ではあり得ません。
|
MATFOR は、この欠点を克服します |
Microsoft 社が Visual Studio 2005 をリリースした一年後、MATFOR in VB and C# が、データ シュミレーションを容易にする高度な機能とシンプルなコーリング方法を提供し、Visual Basic と Visual C# の欠点を克服します。 これは、パーフェクトな add-in で、ユーザー自身がコードを記述する時間と労力を節約します。 さらに、MATFOR widget コンポーネントを使用して、シュミレーション結果を簡単にアプリケーションに表示できます。
|
|
|
MATFOR Widget |
|
MATFOR Widget は、特別な widget コンポーネントで、さまざまな統合された開発環境で、MATFOR の開発が可能です。 ユーザーは、MATFOR widget コンポーネントを Visual Studio に埋め込み、Visual Studio design surface でコントロールを作成します。 以下の図は、MicrosoftR Visual Studio 2005 でのプログラミング例を示してます。 MATFOR Widget を Toolbox リストの下に配置します。
 |
MATFOR Widget |
可視化の理想は、計算データを双方向にコミュニケートできるフォーマットに変換できることです。 MATFOR Graphics Library には、データ可視化、アニメーション、グラフィック デバッグおよびプレゼンテーション用の高レベルな可視化機能のセットが含まれます。 以下、グラフィック コンポーネントの例です :

MATFOR を使用して、2D 線形グラフと 3D Surface グラフをアプリケーションを作成

|
MATFOR Numerical Library
|
行列の演算は、エンジニアリングと科学の問題を解くのに幅広く使われています。 数値計算の目的では、 これらの問題を通常、行列を使用して線形代数のフォームで表します。 MATFOR Numerical Library は、ユーザーに行列の方程式を直感的にかつ効果的に解くための線形代数のセットを提供します。 ユーザーは、使用するアルゴリズムの詳細を知る必要はありません。 以下は、MATFOR の行列を使用して、線形代数のシステムを解く例です。
Ar = b として matrix-vector フォームでシステム方程式を表します、
MATFOR では、, 1 行のコードで r を取得できます: r = mf.LDiv(A,b) |
|
|
パフォーマンス テスト |
|
以下のベンチマークは、MATFOR 使用した場合と VB で直接実装した行列の掛け算 (最大行列サイズ 2100x2100) です。 The performance gained using MATFOR を使用した場合は、100 倍近いパフォーマンスが得られます。
OS: Windows XP SP2
CPU: Intel Pentium 4 CPU 3.00GHz
RAM: 1.00GB
VGA: NVIDIA GeForce FX Go5200(32 MB RAM)
Matrices Size: 2100 by 2100 |
Benchmark Target
| MATFOR |
Visual Baisc |
Time Elapsed |
3.9688 sec |
300.7656 sec |
|
|
|