TMV

C ++用のテンプレートマトリックス/ベクトルライブラリ
今すぐダウンロード

TMV ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • GPL
  • 価格:
  • FREE
  • 出版社名:
  • Mike Jarvis
  • 出版社のWebサイト:
  • オペレーティングシステム:
  • Mac OS X
  • ファイルサイズ:
  • 1.7 MB

TMV タグ


TMV 説明

Cのテンプレート行列/ベクトルライブラリ++ TMVは、C ++での簡素化、ベクトルや行列の表現に代数ライブラリその用途演算子のオーバーロード、ビュー、および遅延評価リニアフリーでオープンソースです。 TMVは十分に文書化され、必要に応じてより高速な実行時間のために最適化されたBLAS / LAPACKを呼び出すことができます。ここで「TMV」のいくつかの主要な機能は次のとおりです。 ・演算子オーバーロード:V2 = X * Mのような式は、* v1が正しいと高速なコードを生成する必要があります。 (ありません一時) ・複合型:算術文に複雑かつリアルタイプを混在することは法的にする必要があります。 ・分解について:部門は自動的にそうするLU、QR、コレスキー、または特異値分解を行い、行列方程式を解くことを意味する必要があります。 ・スピード:コードは、大きな行列のために高速である必要があります。一般的に、この手段は舞台裏BLASとLAPACKルーチンを呼び出します。 (別名遅延評価)直接実際の計算を行いMultMV(X、M、V1、V2)に例えばインラインのための発現V2 = X * M * V1程度の読みやすさからのパフォーマンス・ヒットが存在しない、:・評価が遅れます演算子。 ・テンプレート:TMVが示す名称として、ベクトルまたは行列の要素のタイプがテンプレートです。だから、マトリックス、マトリックス、マトリックスを持つことができ、あるいは(一部16バイト4倍精度クラス用など。クワッド)一部のユーザー定義型マトリックスを使用しています。 ・再生回数:定数とベクトルまたは行列に変更可能なビューの両方があります。 m.rowのような式(3)だから、+ = 4 * m.row(0)とm2 * = m.Transpose()明白なことを行います。 ・マトリックス分割:式x = B / Aは、行列方程式Ax = bのを解決するために使用することができます。 Aのための制御方法は、解決策を見つけるために使用する分解、それを伝えるために使用することができます。後で繰り返し使用のための分解を保存するために、さらにはストレージに保存する場所に分解を行うためのコントロールもあります。 ・柔軟なストレージ:マトリックスは行優先または列優先のいずれか宣言することができます。バンド行列も対角線、主要なストレージを可能にします。 ・柔軟なインデックス:あなたは、通常のC規則(0ベースのインデックス)またはFortran大会(1ベースのインデックス)のいずれかを使用して行列にアクセスするように指定することができます。 ・エイリアスチェック:多くの行列パッケージ計算メートル* =メートル間違って。 TMVは自動的にチェック計算の2つのオブジェクトが同一のストレージを使用し、必要に応じて一時変数を作成する場合。それでも台無しにすることができますので、それだけで、最初の要素のアドレスをチェック。しかし、ほとんどの時間、これは良い十分です。 ・BLAS / LAPACK:ライブラリは、BLASおよび/またはLAPACKルーチンを呼び出すようにコンパイルすることができます。あなたがそれらを持っていない場合でも、内部のコードも動作します。内部アルゴリズムのほとんどは、LAPACKの速さです。しかし、最適化されたBLASルーチンは大幅に高速化されている一般的。少なくともBLASライブラリでコンパイルするので、スピードがあなたのために重要である場合に推奨されます。 このリリースの新機能: ・m.DivIsSet()との誤差を修正。 ・Sはむしろベクトルよりも、今DiagMatrixで特にこと、m.SVD()のアクセスに関するドキュメントを修正しました。 ・)m.SVD(のようなメソッドの動作を変更しました。 SVが既に設定されていない場合さて、それはそれを設定するのではなく、エラーになります。 ・ベクトルまたは行列を初期化するための追加ListInit方法。 ・SmallMatrixクラス改善しました。今では、このように仮想テーブルを除去し、GenMatrix(あるいはBaseMatrix)に由来するものではありません。これは、大幅に計算の多くをスピードアップします。私はまた、デットと逆のような2×2や3×3行列のいくつかのルーチンを、専門。注意点はSmallMatrixを可能にするために使用いくつかのものが、今ではないということです。最も重要なのは、算術演算の結果は、自動的に任意のより多くのインスタンス化することはできません。彼らは、場所に割り当てられSmallMatrixまたはMatrixのいずれかする必要があります。私はまた、通常の行列の除算ルーチンを呼び出すのではなく、すべての除算ルーチンをインライン化。 ・異なる表記法で明確にされているいくつかのViewOfコマンドを削除しました。 LAPACK機能付き・固定の問題はDSTEGRとsstegr。今、TMVはstegrが失敗したときを検出し、代わりに代替stedcを実行することができます。 ・追加sconsのインストールオプション。 ・BLASとLAPACKのFortranのバージョンを使用する機能を追加しました。 ・cmakeのインストール用のCMakeLists.txtファイルをインクルードします。 ・.vcprojおよびVisual C ++インストール用.vcslnファイルをインクルードします。


TMV 関連ソフトウェア

has

フリーおよびオープンソースプロセスベースの離散イベントシミュレーションライブラリ ...

169 12 KB

ダウンロード