オープンソース DEM プログラム一覧

この表は、Roman Vetter による論文 TinyDEM: Minimal open granular DEM code with sliding, rolling and twisting friction の Table 1 を参考に作成したものです。

表の読み方と注意

オープンソースの離散要素法(DEM)プログラムの概要を示す。 ここには、3 次元の柔らかい球状粒状体に対し、摩擦付き衝突を扱うモデルのみを掲載している。 コード行数(利用可能な場合)は、研究時点(2025 年 1 月)の最新バージョンに基づき、 コメントや空白、同梱されている依存ライブラリを含める一方で、 コードに同梱されていない依存ライブラリは除外した概算値である。 年の欄には、可能な場合は対応する論文の発表年を、それ以外の場合には DEM の中核機能が導入されたおおよその年を記載している。 OS はオープンソース、HM は Hertz–Mindlin、DMT は Derjaguin–Muller–Toporov、 JKR は Johnson–Kendall–Roberts、HKK は Hertz–Kuwabara–Kono を表す。

一覧

OS: partial (printed) · License: —
Contact model
フック型 / Hertz–Mindlin (HM) / Hertz–Kuwabara–Kono (HKK)、静的・動的クーロンすべり摩擦
Implementation
Modified MD code “DL POLY 2” in Fortran 90, MPI
Links

YADE

OS: yes · License: GPL 2
Contact model
Hertz–Mindlin (HM)、静的・動的モール–クーロンすべり摩擦
Implementation
190,000 lines of C++/Python, OpenMP, several dependencies (boost, eigen, Qt, freeglut3 etc.)
Links

ESyS-Particle

OS: yes · License: Apache 2.0
Contact model
フック型 / Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦
Implementation
170,000 lines of C++/Python, MPI, some dependencies (boost)
Links

LAMMPS

OS: yes · License: GPL 2
Contact model
フック型 / Hertz–Mindlin (HM) / DMT / JKR、静的・動的クーロン摩擦 (すべり・転がり・ねじり)
Implementation
1.8 mio. lines of C++, MPI
Links

MechSys

OS: yes · License: GPL 3
Contact model
フック型、静的・動的クーロン摩擦(すべり・転がり)
Implementation
71,000 lines of C++, OpenMP, CUDA, several dependencies (boost, GSL, LAPACK etc.)
Links

Woo

OS: yes · License: GPL 2
Contact model
各種接触モデル、静的・動的クーロン摩擦(すべり・転がり・ねじり)
Implementation
Fork of YADE, 130,000 lines of C++/Python, OpenMP, several dependencies (boost, eigen etc.)
Links

Kratos

OS: yes · License: BSD-3
Contact model
各種接触モデル、静的・動的クーロンすべり摩擦と動的転がり摩擦
Implementation
3.2 mio. lines of C++/Python, OpenMP, MPI, dependency on boost
Links

LIGGGHTS

OS: yes · License: GPL 2
Contact model
フック型 / Hertz–Mindlin (HM)、静的・動的クーロンすべり・転がり摩擦
Implementation
680,000 lines of C++, MPI
Links

MFIX-DEM

OS: registration & approval required · License: —
Contact model
フック型 / Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦
Implementation
320,000 lines of Fortran 90/Python (Conda), OpenMP; numerous dependencies
Links

ppohDEM

OS: yes · License: CPC nonprofit
Contact model
フック型、静的・動的クーロンすべり摩擦
Implementation
Single file, 1300 lines of Fortran 90, OpenMP, MPI
Links

GranOO

OS: yes · License: GPL 3
Contact model
フック型、動的クーロンすべり摩擦
Implementation
120,000 lines of C++/Python, several dependencies (boost, zlib, eigen etc.)
Links

Blaze-DEM (GPU)

OS: yes · License: BSD-3
Contact model
フック型、動的クーロンすべり摩擦
Implementation
5000 lines of C++, CUDA
Links

cemfDEM

OS: yes · License: GPL 3
Contact model
Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦と動的転がり摩擦
Implementation
18,000 lines of Fortran 90
Links

ParaEllip3d

OS: yes · License: MIT, Apache 2.0
Contact model
Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦
Implementation
38,000 lines of C++, MPI, dependency on boost, eigen, qhull
Links

OpenFPM

OS: yes · License: BSD-3
Contact model
ヘルツ型 (Hertz)、静的・動的クーロンすべり摩擦
Implementation
Reimplementation of [32] in 35,000 lines of C++, CPU & GPU parallelization, several dependencies (boost, OpenMPI, libhilbert etc.)
Links

MercuryDPM

OS: yes · License: BSD-3
Contact model
各種接触モデル、静的・動的クーロン摩擦(すべり・転がり・ねじり)
Implementation
370,000 lines of C++14, Fortran & Python, MPI
Links

MUSEN

OS: yes · License: BSD-3
Contact model
各種接触モデル、静的・動的クーロンすべり摩擦と動的転がり摩擦
Implementation
70,000 lines of C++, CUDA, dependency on Qt, protobuf, zlib
Links

Chrono::Granular

OS: yes · License: BSD-3
Contact model
各種接触モデル、静的・動的クーロンすべり摩擦と動的転がり摩擦
Implementation
860,000 lines of C++, CUDA
Links

SudoDEM

OS: yes · License: GPL 3
Contact model
YADE と同じ接触モデル(Hertz–Mindlin, モール–クーロンすべり摩擦)
Implementation
Derived from YADE (same dependencies), 300,000 lines of C++, Python
Links

Lethe-DEM

OS: yes · License: Apache 2.0, LGPL 2.1
Contact model
フック型 / Hertz–Mindlin (HM) / JKR / DMT、静的・動的クーロンすべり摩擦および動的転がり摩擦
Implementation
170,000 lines of C++/Python, MPI, several dependencies (deal.II, numdiff, p4est, trilinos, METIS)
Links

DEMBody

OS: registration & approval required · License: non-commercial agreement
Contact model
Hertz–Mindlin (HM)、静的・動的クーロン摩擦(すべり・転がり・ねじり)
Implementation
12,000 lines of Fortran 90, OpenMP
Links

PhasicFlow

OS: yes · License: GPL 3
Contact model
フック型 / Hertz–Mindlin (HM) / Hertz–Kuwabara–Kono (HKK)、静的・動的クーロンすべり摩擦および動的転がり摩擦
Implementation
93,000 lines of C++, OpenMP, CUDA, some dependencies (Kokkos, tbb)
Links

— (MechSys-based JKR)

OS: yes · License: GPL 3
Contact model
JKR モデル、静的・動的クーロン摩擦(すべり・転がり・ねじり)
Implementation
Builds on MechSys; 11,000 lines of C++, OpenMP
Links

CP3d

OS: yes · License: MIT
Contact model
フック型 / Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦
Implementation
50,000 lines of Fortran 95, MPI, dependency on FFTW
Links

DEM-Engine

OS: yes · License: BSD-3
Contact model
Hertz–Mindlin (HM)、静的・動的クーロンすべり摩擦と動的転がり摩擦
Implementation
Builds on Chrono; 30,000 lines of C++ (not counting Chrono), CUDA
Links