オープンソース離散要素法ソフトウェアの一覧(オープンソースりさんようそほうソフトウェアのいちらん)は、粉体や粒状体、土砂などのシミュレーションに用いられる離散要素法(DEM: Discrete Element Method)ソルバーのうち、ソースコードが公開されているものをまとめた一覧である。

本記事では、主として学術・産業分野で利用されている汎用的な三次元 DEM ソルバーやライブラリを対象とし、公開年、ライセンス、実装言語、実装されている接触モデルや摩擦モデルなどの概要を示す。記載内容は公開年時点の情報に基づくため、最新のライセンス形態や機能については各プロジェクトの公式情報を確認する必要がある。

概要 離散要素法は、多数の剛体または変形可能な粒子の接触・衝突・摩擦を時系列的に追跡する数値解析手法であり、粉体工学、地盤工学、鉱業、プロセス工学、土石流・斜面崩壊解析などの分野で広く用いられている。

オープンソースの DEM ソフトウェアは、研究成果の再現性向上や新たな接触モデル・数値スキームの検証を目的として開発されることが多い。 また、GPU や大規模並列計算機を利用する高性能計算(HPC)環境への対応や、有限要素法(FEM)・計算流体力学(CFD)コードとの連成解析機能を備えるものも存在する。

なお、「オープンソース」は一般に OSI(Open Source Initiative)が公表する「Open Source Definition」を満たすライセンス形態を指す。

主なオープンソースDEMソフトウェア 年代順一覧 以下の表は、公開年順に並べた主なオープンソース DEM ソフトウェアの一覧である。ライセンスや機能は代表的なバージョンの情報であり、詳細は各ソフトウェアの公式情報を参照のこと。整理の基本情報は主として Vetter (2026) に基づく。

名称 公開年 主なライセンス 主な実装言語 主な特徴 DL POLY2改変のDEMコード 2005年 不明 Fortran 90、MPI MD コード「DL POLY 2」を改変して実装された DEM コード。フック型、Hertz–Mindlin (HM)、Hertz–Kuwabara–Kono (HKK) 接触モデルと静的・動的クーロンすべり摩擦を実装している。正式名称は不明。 YADE 2008年 GPL 2 C++、Python オープンソースの DEM フレームワーク。Hertz–Mindlin 接触モデルおよび静的・動的モール–クーロンすべり摩擦モデルを備える。 ESyS-Particle 2009年 Apache License 2.0 C++、Python 2009年に公開された DEM ソフトウェア。複数の接触モデルを実装するが、用途や利用分野などの詳細は不明。 MechSys 2009年 GPL 3 C++ 約71,000行の C++ で実装された力学シミュレーション用ライブラリ。OpenMP や CUDA を利用し、外部ライブラリ(Boost、GSL、LAPACK など)に依存する。具体的な用途や対象分野は不明。 Kratos 2010年 BSD-3 C++、Python 2010年に公開されたオープンソースソフトウェア。各種接触モデルと静的・動的クーロンすべり摩擦および動的転がり摩擦に対応する。 Woo 2010年 不明 C++、Python YADE のフォークとして実装された DEM ソフトウェア。各種接触モデルおよび静的・動的クーロン摩擦(すべり・転がり・ねじり)に対応し、約13万行のコードから構成される。ソフトウェアの具体的な用途や対象分野などは不明。 MFIX-DEM 2012年 不明 Fortran 90、Python 2012年に公開されたソフトウェア。Fortran 90 および Python(Conda)で実装され、OpenMP に対応する。対象分野や用途、開発主体などの詳細は不明。 GranOO 2014年 GPL 3 C++、Python 2014年に公開されたオープンソースの DEM フレームワーク。GPL 第3版の下で配布される。用途や対象分野などの詳細は不明。 Blaze-DEM 2016年 BSD-3 C++、CUDA 2016年に公開された GPU 向け DEM ソフトウェア。BSD 3-Clause License の下で配布される。詳細な用途や対象分野は不明。 cemfDEM 2016年 GPL 3 Fortran 90 2016年に公開された Fortran 90 実装の DEM ソフトウェア。ライセンスは GPL 3。用途や開発者などの詳細は不明。 ParaEllip3d 2018年 MIT License、Apache License 2.0 C++ 2018年に公開された C++ 製ソフトウェア。MIT License と Apache License 2.0 のデュアルライセンスで提供される。用途や対象分野などの詳細は不明。 OpenFPM 2019年 BSD-3 C++ 2019年に公開されたオープンソースソフトウェア。CPU および GPU による並列化に対応する。ヘルツ型接触モデルと静的・動的クーロンすべり摩擦を実装している。 MUSEN 2020年 BSD-3 不明 2020年に公開されたオープンソースソフトウェア。各種接触モデルに対応し、静的・動的クーロンすべり摩擦および動的転がり摩擦を扱う。具体的な用途や適用分野は不明。 Chrono::Granular 2020年 BSD-3 C++、CUDA 2020年に公開されたオープンソースソフトウェア。C++ および CUDA で実装され、約 86 万行のコードから構成される。静的・動的クーロンすべり摩擦および動的転がり摩擦を含む各種接触モデルを備える。 MercuryDPM 2020年 BSD-3 C++14、Fortran、Python、MPI 2020年に公開されたオープンソースソフトウェア。C++14、Fortran、Python および MPI で実装され、約 37 万行のソースコードから構成される。複数の接触モデルと静的・動的クーロン摩擦(すべり・転がり・ねじり)を扱う。 SudoDEM 2021年 GPL 3 不明 2021年公開のオープンソースソフトウェア。YADE を基盤とした派生実装であり、主な接触モデルとして Hertz–Mindlin モデルとモール–クーロンすべり摩擦モデルを採用する。その他の用途や対象分野は不明。 Lethe-DEM 2022年 Apache License 2.0、LGPL 2.1 C++、Python 2022年に公開されたオープンソースソフトウェア。C++ および Python により実装され、複数の接触モデルを備える。主な用途や対象とする現象の詳細は不明。 DEMBody 2022年 非商用ライセンス Fortran 90 2022年に公開された Fortran 90 実装の DEM プログラム。Hertz–Mindlin (HM) 接触モデルと静的・動的クーロン摩擦(すべり・転がり・ねじり)を用い、OpenMP を利用する。non-commercial agreement(非商用契約)に基づき、利用には登録および承認が必要とされる。 PhasicFlow 2023年 GPL 3 C++ 2023年に公開されたオープンソースソフトウェア。約 9.3 万行の C++ で実装され、フック型、Hertz–Mindlin (HM)、Hertz–Kuwabara–Kono (HKK) などの接触モデルと静的・動的クーロンすべり摩擦および動的転がり摩擦を扱う。OpenMP、CUDA、Kokkos、tbb などの並列化ライブラリを利用する。 CP3d 2023年 MIT Fortran 95 2023年に公開されたオープンソースソフトウェア。約 5 万行の Fortran 95 コードから構成される。用途や対象分野、開発主体などの詳細は不明。 MechSysベースのJKR DEM 2023年 GPL 3 不明 MechSys を基盤として構築された DEM 実装であり、JKR 接触モデルを用いる。2023年に公開された。正式名称は確認されておらず、資料によっては「MechSys-based JKR」などと記載される。 DEM-Engine 2024年 BSD-3 不明 2024年に公開されたオープンソースの DEM エンジン。Chrono を基盤として実装され、Hertz–Mindlin (HM) 接触モデルおよび静的・動的クーロンすべり摩擦、動的転がり摩擦を扱う。 TinyDEM 2025年 BSD-3 C++ 2025年に公開されたオープンソースソフトウェア。わずか600行のC++で実装され、ヘルツ・マインドリン(HM)接触モデルに加え、滑り・転がり・ねじれに対する静的・動的クーロン摩擦を扱う。OpenMPによる並列化が施されている。

用途と特徴 上記のソフトウェアはいずれも離散要素法に基づくが、対象とする問題設定や設計思想には違いがある。

YADE、GranOO、Woo などは、スクリプト言語(主として Python)を通じた柔軟な前処理・後処理機能を備えた汎用フレームワークとして位置付けられる。 Chrono::Granular、Blaze-DEM、OpenFPM、PhasicFlow などは、CUDA や MPI などを用いた並列化により、大規模粒状体系の高性能計算を重視している。 DEMBody、cemfDEM、CP3d など Fortran 系実装は、既存の数値計算コードとの親和性や HPC 環境での利用を念頭に置いた設計とみなされる。 MechSys や MechSysベースのJKR DEM、Kratos、DEM-Engine などは、他の数値解析モジュール(有限要素法、マルチフィジックス解析など)と同一基盤上で DEM を扱うことを特徴とする。

複数のオープンソース DEM フレームワークを同一問題で比較・検証するベンチマーク研究も報告されている。

接触モデルとしては、Hertz–Mindlin (HM) や Hertz–Kuwabara–Kono (HKK) などの弾性接触モデルに加え、静的・動的クーロン摩擦(すべり・転がり・ねじり)やモール–クーロンすべり摩擦モデルが広く採用されている。

留意点 ライセンスの種類やバージョンは、リリース時期や配布元により変更される場合がある。特に商用利用を行う場合は、公式リポジトリや配布元で最新のライセンス条件を確認する必要がある。 一部のソフトウェア(例: DEMBody)は非商用ライセンスであり、利用にあたって事前の登録・承認が求められる。 ここに挙げたソフトウェアは網羅的な一覧ではなく、公開年・ライセンス・接触モデルなどの情報が明らかなものを中心に記載している。

関連項目 離散要素法 粉体工学 数値解析 オープンソースソフトウェア 高性能計算

脚注

参考文献