OpenFPM

OpenFPM は、BSD-3ライセンスで公開されているオープンソースソフトウェアである。

2019年に公開され、文献[32]を約35,000行のC++で再実装したものであり、CPUおよびGPUによる並列化に対応する。接触モデルとしてヘルツ型（Hertz）および静的・動的クーロンすべり摩擦を採用している。

 概要 
OpenFPM は、2019年に公開されたオープンソースソフトウェアであり、BSD-3ライセンスの下で配布されている。文献[32]を「Reimplementation of [32] in 35,000 lines of C++」として再実装したもので、CPUおよびGPU両方での並列計算に対応する実装を特徴とする。

対象とする応用分野や利用目的、想定ユーザ層などの詳細は不明である。

 歴史・開発 
 公開年は2019年である。
 文献[32]の再実装として開発されたことが示されている。

一方で、以下の事項は不明である。
 開発者・開発チームの名称
 所属機関や研究グループ名
 プロジェクト開始時期や開発の経緯
 バージョン履歴や長期的な開発ロードマップ

 特徴 
OpenFPM の特徴として、与えられた情報から以下の点が挙げられる。
 文献[32]の再実装（Reimplementation of [32] in 35,000 lines of C++）であること。
 約35,000行のC++で記述されていること。
 CPUおよびGPUの双方に対応した並列計算を行う実装であること。

これ以外の機能的特徴（対応プラットフォーム、入出力形式、サポートするアルゴリズムの詳細、可視化機能の有無など）は不明である。

 接触モデル 
OpenFPM は、接触モデルとして以下を採用している。
 ヘルツ型（Hertz）接触モデル
 静的クーロンすべり摩擦
 動的クーロンすべり摩擦

これらのモデルが具体的にどのような問題設定に対して用いられるか、またパラメータ設定や拡張モデルの有無などの詳細は不明である。

 実装 
実装に関して、次の点が明示されている。
 文献[32]の再実装として構成されている。
 コード規模は約35,000行のC++である。
 CPUおよびGPUに対する並列化を行う実装となっている。
 いくつかの外部ライブラリへの依存を持つ。具体的には、以下が依存関係として挙げられている。
 Boost
 OpenMPI
 libhilbert
 その他のライブラリ（名称不明）

サポートするコンパイラ、対応OS、ビルドシステム、テストフレームワーク、ドキュメント整備状況などについては不明である。

 ライセンス・入手性 
OpenFPM はオープンソースソフトウェア（OSS）であり、BSD-3ライセンスの下で公開されている。

入手方法について、「関連リンク」として以下のURLが示されている。
 https://openfpm.mpi-cbg.de/
 https://github.com/mosaic-group/openfpm

これら以外の入手経路（バイナリ配布の有無やパッケージマネージャでの提供状況など）は不明である。

 参考文献・リンク 
 [32] 再実装の元となった文献。[32] 自体の詳細（著者名、タイトル、出版年など）は不明。
 https://doi.org/10.1016/j.cpc.2019.03.007
 https://openfpm.mpi-cbg.de/
 https://github.com/mosaic-group/openfpm

Category:オープンソースソフトウェア
Category:2019年のソフトウェア
Category:C++でプログラムされたソフトウェア