個別要素法

**個別要素法**（こべつようそほう、、DEM）または離散要素法（、DEM）は、解析の対象を自由に運動できる多角形や円形・球の要素の集合体としてモデル化し、要素間の接触・滑動を考慮して、各時刻におけるそれぞれの要素の運動を逐次追跡して解析する手法である。もとは岩盤工学に適用するためにPeter A. Cundall (1971)およびCundall and Strack (1979)により発表された論文に端を発しており、現在は液状化や土石流など地盤の挙動解析やコンクリート構造物、粉体（粉末冶金、化学工学、リチウムイオン電池、薬学、農学など）、 粉末冶金におけるシミュレーションや磁気相互作用力を有する電子写真システムのトナーの挙動解析などに用いられている。

## 概略
以下に、円形要素を用いた際の運動方程式を示す。

質量m_i、慣性モーメントI_iのある円形要素iについて、次の運動方程式が成り立つ。
:m_i \ddot{\mathbf{x}}+C_i \dot{\mathbf{x}}+F_i =0 
:I_i \ddot{ \theta }+D_i \dot{ \theta }+M_i =0 

ここにF_i：要素に働く合力、M_i：要素に働く合モーメント、C_i、D_i：減衰定数、\mathbf{x}：要素の変位ベクトル、\theta：要素の回転変位である。

要素同士が接触しているときはF_i = K \mathbf{x}（Kは弾性定数）及びM_i = K r^2 \theta（rは円の半径）、離れているときは、F_i = M_i = 0で表される。ただし、重力を考える場合は合力の項で考慮する。

上式を数値積分することで、逐次変位ベクトルと回転変位を得ることができる。

## 特徴
* 計算コストは\mathcal{O}(N) もしくは\mathcal{O}(N log N) で線形に近くスケールする。  
* 明示的時間積分のため安定性条件は \Delta t などにより制限される。  
* 接触履歴を保持することで摩擦・転がり抵抗を自然に扱える。  

## ソフトウェア
### オープンソース

* LIGGGHTS — 汎用分子動力学コード LAMMPS を基盤に開発された 粉粒体 シミュレーション用のオープンソース 離散要素法 (DEM) コードで、粒子の熱挙動（熱伝導・熱伝達 など）にも対応する。

* YADE — C++ と Python で実装された拡張性の高い DEM フレームワークであり、数値流体力学 (CFD) コードとの連成による CFD–DEM 解析にも利用される。

* LAMMPS（granular パッケージ） — 汎用分子動力学コード LAMMPS に同梱される 粉粒体 シミュレーション用サブパッケージで、軟球モデルによる粒子間接触力や 周期境界条件 などの境界条件が実装されている。

* DL_POLY2改変のDEMコード
* ESyS-Particle
* MechSys
* Kratos
* Woo
* MFIX-DEM
* GranOO
* Blaze-DEM
* cemfDEM
* ParaEllip3d
* OpenFPM
* MUSEN
* 
* MercuryDPM
* SudoDEM
* Lethe-DEM
* DEMBody
* PhasicFlow
* CP3d
* MechSysベースのJKR DEM
* DEM-Engine

### 商用ソフト
* Granuleworks
* EDEM
* Rocky DEM

## 関連する記事とソフトウェア群
個別要素法（離散要素法）に関連して、本項の内容を補完する周辺記事として以下のようなものが整備されている。

### 歴史
* 日本における離散要素法の歴史 - 日本における離散要素法（DEM）の導入と発展、国内の研究動向や応用分野の変遷を概説する。

### 研究者
* 日本の離散要素法の研究者 - 日本国内の大学・研究機関・公的研究所などに所属し、離散要素法およびその拡張手法の研究・開発・応用に携わる研究者の一覧。
* 離散要素法の非日本人研究者一覧 - 離散要素法の提案・高度化・応用展開に顕著な貢献を行った日本国外の研究者をまとめた一覧。

### 手法の拡張
* 拡張離散要素法 - 粒子群の並進・回転運動に加えて、粒子内部の温度場、化学種濃度、応力・ひずみ場、電磁場などの内部状態量を同時に解く離散要素法の拡張手法。

### DEMの力学モデル
* 離散要素法の付着力モデル
* DEMの弾塑性接触モデル
* ボンデッドパーティクルモデル
* DEM-MDRモデル

### DEMの物理量
* 応力鎖

### オープンソースソフトウェア
* 「オープンソース離散要素法ソフトウェアの一覧」 — LIGGGHTS や YADE、LAMMPS の granular パッケージなど、DEM を実装したオープンソースのソルバーやライブラリを年代順に整理した一覧記事である。公開年、ライセンス、実装言語、実装されている接触モデル・摩擦モデルなどの情報がまとめられており、本節で挙げた代表的なソフトウェアを含む多様な DEM 実装を比較することができる。美少女 Vtuber 粉体 粒子によって精力的にDEM OSSの解説がなされている
* 「オープンソースの離散要素法可視化ソフトウェア」 — DEM ソルバーが出力した粒子データの可視化やポスト処理に特化したオープンソースの可視化ツールを扱う記事である。ParaView などの汎用可視化ソフトウェアや、分子動力学法にも用いられる可視化ツールとの連携が述べられており、DEM ソルバー本体の記事と合わせて、前処理・計算・後処理から成るワークフローを俯瞰できる構成となっている。また、美少女 Vtuber 粉体 粒子によって精力的にdumpファイルをvtkファイルに変換する後処理ソフトD2Vの配布がなされている.

## 離散要素法モデル
個別要素法（離散要素法）では、粒子間や粒子–壁間に働く接触力をどのようにモデル化するかによって、再現できる材料挙動の範囲が大きく変化する。基本的な線形ばね–ダッシュポットモデルや Hertz–Mindlin 接触則に加えて、塑性変形、付着・凝集力、粒子間結合、粉末のバルク変形などを表現するために、さまざまな拡張接触モデルが提案されてきた。本節では、代表的な離散要素法モデルとして、DEMの弾塑性接触モデル、離散要素法の付着力モデル、ボンデッドパーティクルモデル（bonded particle model; BPM）、DEM-MDRモデルの概要を示す。

### DEMの弾塑性接触モデル
DEMの弾塑性接触モデルは、法線方向の力–変位関係に塑性変形と履歴依存性を導入した接触則であり、高い圧縮や繰り返し荷重を受ける顆粒材料のシミュレーションに用いられる。弾性のみを仮定する線形ばね–ダッシュポットや Hertz–Mindlin モデルでは、接触点での永久変形や接触剛性の変化を表現できないため、これを拡張したDEMの弾塑性接触モデルが開発された。代表的なものとして、Walton–Braunモデル、Luding 接触モデル、Thornton–Ning モデル、Edinburgh Elasto-Plastic Adhesion (EEPA) モデルなどがあり、これらの系譜や詳細な数式は専用項目「DEMの弾塑性接触モデル」で整理されている。

Walton–Braun モデルは、荷重時と除荷時で異なる剛性を持つ線形ヒステリシスばねを仮定し、接触履歴に応じた残留オーバーラップとエネルギー散逸を表現する。副次的パラメータが少なく実装が容易なことから、多くの DEM コードにおける「ヒステリシスばね」モデルの原型となっている。Luding 接触モデルは Walton–Braun モデルを拡張し、除荷剛性を履歴最大重なりの関数とすることで塑性硬化を取り入れるとともに、法線力が引張側にまで達する粘着分枝を導入している。この結果、非凝集粒状体から微粉体まで、弾塑性履歴と付着力を同時に扱うことができる。

Thornton–Ning モデルは、弾完全塑性材料の接触力学に基づいて、接触半径・オーバーラップ・法線力の関係を理論的に導出した非線形弾塑性・粘着モデルである。弾性域では Hertz 解に一致し、降伏後は有限要素解析に基づく近似式を用いて弾塑性域と完全塑性域の応答を連続的に表現する。EEPA モデルは、Luding 型の線形ヒステリシス接触則に JKR 理論と表面エネルギーの概念を組み合わせたものであり、履歴依存の付着力と塑性変形を同一枠組みで扱える。粉体の圧縮・せん断・混合など、実験キャリブレーションが重要な工業応用で用いられる。

### 離散要素法の付着力モデル
付着力モデル（凝集力モデル）は、粒子間に働く静電力、ファンデルワールス力、液架橋による毛管力などの短距離引力を、離散要素法の接触則に組み込むためのモデル群を指す。非凝集性の乾燥砂などでは、接触力は主として弾性反発力と摩擦力で記述されるが、湿潤砂、粉体、微粒子などの凝集性材料では、付着成分を導入しないと安息角の増加、ブリッジング、アーチング、付着性堆積といった特徴的なマクロ挙動を再現できない。付着力の起源やモデルの体系的な整理については「離散要素法の付着力モデル」に詳しい。

離散要素法の付着力モデルは、多くの場合、法線方向接触力 F_n を「弾性成分」と「付着成分」に分解し、Hertz 型あるいは線形弾性モデルに付着分枝を重ね合わせる形で定式化される。Hertz–JKR 型の理論モデルでは、表面エネルギーからプルオフ力と接触半径を評価し、弾性接触と付着を連成させる。一方、商用コードなどで広く利用される簡易 JKR（SJKR）モデルや線形付着モデルでは、最大引張力と作用距離をパラメータとする線形バネとして付着力を近似し、数値安定性と計算効率を優先する。液架橋接触モデルは、粒子間の液体メニスカスによる毛管力を直接扱うもので、液量に依存する破断距離や表面張力に比例する最大引張力を用いて、ペンデュラー域の湿潤粒状体を対象とする。

凝集性材料では、付着力は法線方向だけでなく、接線方向のせん断強度や転がり抵抗にも影響を及ぼす。そのため、多くのモデルではクーロン摩擦則のしきい値に付着成分を加える形で、見かけの内部摩擦角や付着強度を増加させる拡張が導入される。付着パラメータの同定には、安息角試験、ホッパー排出試験、引張試験などの室内実験と DEM シミュレーションを組み合わせたキャリブレーション手法が用いられている。

### ボンデッドパーティクルモデル（BPM）
ボンデッドパーティクルモデル（bonded particle model, BPM）は、粒子間にばね–ダッシュポットからなる質量のない結合（ボンド）を導入することにより、岩石やコンクリートなどの脆性材料の破壊を表現する離散要素法の一種である。通常の DEM が粒子間接触面での局所力を記述するのに対し、BPM では粒子間に仮想的な接合断面を設定し、その断面を通じて法線力・せん断力に加えて、曲げモーメントやねじりモーメントを伝達できるようにする。ボンドの断面積や断面二次モーメント、長さに基づいて、法線・接線・曲げ・ねじりの各方向のばね定数とダンピング係数が定義される。詳細な定式化は「ボンデッドパーティクルモデル」にまとめられている。

BPM では、各ボンドに対して法線応力およびせん断応力の破壊基準を導入し、応力が許容値を超えたときにボンドを削除することで亀裂の発生と進展を記述する。多数のボンドが連鎖的に破壊することで、マクロには脆性破壊、準脆性破壊、延性破壊など多様な挙動を再現できる。ボンド剛性や強度を材料試験に基づきキャリブレーションすることで、岩盤の一軸圧縮試験、三軸試験、割裂引張試験などを模擬し、き裂パターンや強度特性を再現する応用が一般的である。

### DEM-MDRモデル
DEM-MDRモデルは、接着弾性–完全塑性粒子の接触挙動と粉末の大変形圧縮を扱うために提案された機械的導出接触モデルであり、次元削減法（method of dimensionality reduction, MDR）に基づく局所接触応答と、粒子内部のバルク弾性応答を組み合わせる点に特徴がある。MDR により三次元接触問題を一次元のばね–ダッシュポット列に写像し、その応答を粒子半径の変化（見掛け半径）の更新則と結合させることで、広いひずみ範囲にわたる粉末の力学挙動を記述する。モデルは、ヤング率、ポアソン比、降伏応力、有効表面エネルギー、バルク応答の開始を制御する無次元パラメータ、反発係数といった少数の物理パラメータで特性づけられる。

DEM-MDRモデルは、単一粒子上の複数接触からの寄与と粒子全体の体積ひずみを整合的に扱えるため、高い圧縮比を伴う粉末成形やタブレット圧縮などで、実験に近い圧縮曲線やスプリングバック挙動を再現できると報告されている。数値実装としては、分子動力学コード LAMMPS の granular パッケージに基づく公開実装が知られており、大規模粉末系のシミュレーションに利用されている。

## アルゴリズム
### 1. 初期化
* 粒子属性（径・質量・慣性モーメントなど）を読み込む。
* 計算領域をボックス、周期境界、固定壁などとして定義する。
* セル分割法を用いて「衝突探索ボックス」を生成し、全粒子を登録する。

### 2. 時間積分ループ
以下ではステップ番号を n、タイムステップを \Delta t とする。

; (a) 接触判定
: 近接セル内の候補ペアに対し、半径差 \delta_n = r_i + r_j - |\mathbf{x}_i-\mathbf{x}_j| を評価し、\delta_n > 0 なら接触とみなす。

; (b) 接触履歴
:クーロン摩擦や粘弾性モデルでは接触履歴が必要となる。前ステップで既接触なら  
:\delta_t^{\,n}= \delta_t^{\,n-1}+v_t^{\,n}\,\Delta t  
:未接触なら  
:\delta_t^{\,n}= v_t^{\,n}\,\Delta t

; (c) 接触力計算
:Hertz-Mindlin 式などを用い、法線力 \mathbf{F}_n と接線力 \mathbf{F}_t を評価する。

; (d) 外力計算
:重力 m\mathbf{g}、流体抵抗、磁気力などシミュレーション対象に応じた外力を加算する。

; (e) 運動方程式の陽積分
:例として単純並進のみを示す。  
:\mathbf{v}^{\,n+1} = \mathbf{v}^{\,n} + \mathbf{a}^{\,n}\,\Delta t  
:\mathbf{x}^{\,n+1} = \mathbf{x}^{\,n} + \mathbf{v}^{\,n+1}\,\Delta t  
:角運動は陽オイラーや四元数を用いるのが一般的である。

; (f) 粒子情報更新
:位置・速度が確定したら、衝突探索ボックスのセルインデックスを更新する。

; (g) 時間終了判定
: t_{\text{current}}\ge t_{\text{end}} なら計算終了。それ以外は (a) に戻る。

## 疑似コード

```
initialize_particles()
initialize_search_grid()

for t = 0; t < t_end; t += Δt
    build_neighbor_list()
    for each particle i
        Fi, Mi ← 0
    for each contact pair (i, j)
        δn ← overlap(i, j)
        if δn > 0 then
            update_tangential_history(i, j)
            Fij, Mij ← contact_force(δn, history)
            Fi  += Fij
            Fj  -= Fij
            Mi  += Mij
            Mj  -= Mij
    for each particle i
        Fi += external_forces(i)
        vi ← vi + (Fi/mi) Δt
        ωi ← ωi + (Mi/Ii) Δt
        xi ← xi + vi Δt
        update_search_grid_cell(i)
end for
```


## 計算の詳細
### セル分割法
**セル分割法**（英: *cell-linked list method*、*link-cell method*）は、短距離カットオフをもつ相互作用を扱う離散要素法（DEM）や分子動力学 (MD) シミュレーションで、近傍粒子対を線形時間で検索する空間分割アルゴリズムである。計算領域をカットオフ半径以上の立方体セルに区切り、各セル内に存在する粒子番号をリンクリストとして保持することで、粒子 N 個に対するペア探索の計算量を \mathcal{O}(N) に削減できる。

主な手順は以下のとおり。  

# **セル分割** — シミュレーションボックスを辺長 \ell \ge r_c の格子セルに分割し、セル番号 (i_x,i_y,i_z) を割り当てる。  
# **リンクリスト構築** — 各粒子の座標から所属セルを計算し、セル毎に先頭ポインタ `head` と粒子間リンク `lscl` の単方向リストを更新する。  
# **近傍探索／力計算** — 各粒子について自身が属するセルと 26 個の隣接セル内の粒子だけを走査し、距離がカットオフ半径 r_c 未満のペアに対して力を評価する（ニュートン第三法則を用いて重複計算を排除）。  
# **セル更新** — 各タイムステップで粒子がセル境界を越えた場合、対応するリンクリストを再構築する。  

アルゴリズムの平均計算量は  
:\mathcal{O}(N\,\rho\,\ell^{\,3}) \simeq \mathcal{O}(N)  
であり、セル体積 \ell^{3} と平均粒子密度 \rho が一定なら粒子数に対して線形にスケールする。セル長 \ell は密度、カットオフ半径、キャッシュライン長などの実装パラメータによって最適値が異なる。

### 物理量計算
#### 球粒子の慣性モーメント
 I_i=\frac{2}{5}\,m_i R_i^{2} 

##### Hertz–Mindlin 接触
 F^{C_n}_{ij}= -\frac{4}{3}\,E^{\ast}_{ij}\,\sqrt{R^{\ast}_{ij}}\;\delta_{n}^{\,3/2} 

 k_t = \frac{8}{2-\nu}\,G^{\ast}_{ij}\,\sqrt{R^{\ast}_{ij}\,\delta_{n}} 

（E^{\ast}_{ij}, G^{\ast}_{ij}, R^{\ast}_{ij} は有効ヤング率・有効せん断弾性率・有効半径）

#### 粘性減衰と反発係数
 \eta=-2\ln e\, \sqrt{\frac{m^{\ast}_{ij}\,k}{\pi^{2}+(\ln e)^{2}}} 

#### 数値積分の安定条件
 \Delta t \;\lesssim\; 2\sqrt{\frac{m}{k_n}} 

### 法線・接線成分の計算
;単位法線ベクトル  
:\mathbf n_{ij}= \frac{\mathbf x_i-\mathbf x_j}
;相対並進速度  
:\mathbf v_{ij}= \mathbf v_i-\mathbf v_j
;法線速度  
:\mathbf v_{n,ij}= (\mathbf v_{ij}\cdot\mathbf n_{ij})\,\mathbf n_{ij}
;接線速度  
:\mathbf v_{t,ij}= \mathbf v_{ij}-\mathbf v_{n,ij} + (R_i\mathbf\omega_i + R_j\mathbf\omega_j)\times\mathbf n_{ij}
;法線方向オーバーラップ  
:\delta_{n,ij}= R_i + R_j - |\mathbf x_i-\mathbf x_j|  
:\boldsymbol\delta_{n,ij}= \delta_{n,ij}\,\mathbf n_{ij}
;接線方向オーバーラップ（連続表現）  
:\boldsymbol\delta_{t,ij}(t)=\int_{t_0}^{t}\mathbf v_{t,ij}(\tau)\,\mathrm d\tau
;接線方向オーバーラップ（離散更新）  
:\boldsymbol\delta_{t,ij}^{(n+1)} = |\boldsymbol\delta_{t,ij}^{(n)}|\,
\mathbf t_{ij}^{(n+1)} + \mathbf v_{t,ij}^{(n+1)}\Delta t
:ここで \mathbf t_{ij}^{(n+1)} は接線方向の単位ベクトルであり、  
::* \mathbf v_{t,ij}^{(n+1)} \neq \mathbf 0 の場合  
:::\mathbf t_{ij}^{(n+1)} = \frac{\mathbf v_{t,ij}^{(n+1)}}  
::* \mathbf v_{t,ij}^{(n+1)} = \mathbf 0 の場合  
:::\mathbf t_{ij}^{(n+1)} = \frac{\boldsymbol\delta_{t,ij}^{(n)}}
;角速度の分解（粒子 *i*）  
:{\boldsymbol\omega}_{n,i}= ({\boldsymbol\omega}_i\cdot\mathbf n_{ij})\,\mathbf n_{ij}  
:{\boldsymbol\omega}_{t,i}= {\boldsymbol\omega}_i-{\boldsymbol\omega}_{n,i}

### 接触モデル
#### 線形ばね–ダッシュポット（Voigtモデル）
 \mathbf F^{\rm C}_{ij}= \mathbf F^{C_n}_{ij}+ \mathbf F^{C_t}_{ij} 

 \mathbf F^{C_n}_{ij}= -k_n\,\boldsymbol\delta_{n}-\eta_n\,\mathbf v_{n} 

 \mathbf F^{C_t}_{ij}= -k_t\,\boldsymbol\delta_{t}-\eta_t\,\mathbf v_{t} 

#### 摩擦モデル
 \bigl| \mathbf F^{C_t}_{ij} \bigr| \;\le\;\mu \,\bigl| \mathbf F^{C_n}_{ij} \bigr| 
条件を超えた場合は

 \mathbf F^{C_t}_{ij}= -\mu \,\bigl| \mathbf F^{C_n}_{ij} \bigr|\, \frac{\mathbf v_{t}} 

#### 転がり抵抗
 \mathbf M_{ij}= -\mu_r\,R^{\ast}_{ij}\,\bigl| \mathbf F^{C_n}_{ij} \bigr|\, \frac{\boldsymbol\omega_i-\boldsymbol\omega_j} 

### 運動方程式
 m_i \,\frac{{\rm d}\mathbf v_i}{{\rm d}t}= \sum_j \mathbf F^{\rm C}_{ij}+m_i\mathbf g  

 I_i\,\frac{{\rm d}\boldsymbol\omega_i}{2\Delta t}
:* 角運動量更新 \displaystyle 
\vec{L}_i^{\,n+1}=2\vec{L}_i^{\,n}-\vec{L}_i^{\,n-1}+(\Delta t)^{2}\vec{\tau}_i^{\,n}

; シンプレクティック・オイラー法（Semi-implicit Euler）
:* 速度更新 \displaystyle \vec{v}_i^{n+1}= \vec{v}_i^{n}+\Delta t\,\vec{a}_i^{n}
:* 位置更新 \displaystyle \vec{x}_i^{n+1}= \vec{x}_i^{n}+\Delta t\,\vec{v}_i^{n+1}
:* 角運動量更新 \displaystyle \vec{L}_i^{n+1}= \vec{L}_i^{n}+\Delta t\,\vec{\tau}_i^{n}

; リープフロッグ法（Velocity Verlet 型）
:* 速度半ステップ \displaystyle 
\vec{v}_i^{\,n+\tfrac12}=\vec{v}_i^{\,n-\tfrac12}+\Delta t\,\vec{a}_i^{\,n}
:* 位置更新 \displaystyle 
\vec{x}_i^{\,n+1}= \vec{x}_i^{\,n}+\Delta t\,\vec{v}_i^{\,n+\tfrac12}
:* 角運動量半ステップ \displaystyle 
\vec{L}_i^{\,n+\tfrac12}= \vec{L}_i^{\,n-\tfrac12}+\Delta t\,\vec{\tau}_i^{\,n}

; 4 次 Runge–Kutta 法（RK4）
:内部ステージ  

\begin{aligned}
k_1^{v} &= \vec{a}_i^{\,n}, &
k_1^{x} &= \vec{v}_i^{\,n}, &
k_1^{L} &= \vec{\tau}_i^{\,n},\\[2pt]
k_2^{v} &= \vec{a}_i\!\left(\vec{x}_i^{n}+\tfrac{\Delta t}{2}k_1^{x},\;
                               \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_1^{v}\right),\\
k_2^{x} &= \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_1^{v},\\
k_2^{L} &= \vec{\tau}_i\!\left(\vec{x}_i^{n}+\tfrac{\Delta t}{2}k_1^{x},\;
                                \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_1^{v}\right),\\[2pt]
k_3^{v} &= \vec{a}_i\!\left(\vec{x}_i^{n}+\tfrac{\Delta t}{2}k_2^{x},\;
                               \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_2^{v}\right),\\
k_3^{x} &= \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_2^{v},\\
k_3^{L} &= \vec{\tau}_i\!\left(\vec{x}_i^{n}+\tfrac{\Delta t}{2}k_2^{x},\;
                                \vec{v}_i^{n}+\tfrac{\Delta t}{2}k_2^{v}\right),\\[2pt]
k_4^{v} &= \vec{a}_i\!\left(\vec{x}_i^{n}+\Delta t\,k_3^{x},\;
                               \vec{v}_i^{n}+\Delta t\,k_3^{v}\right),\\
k_4^{x} &= \vec{v}_i^{n}+\Delta t\,k_3^{v},\\
k_4^{L} &= \vec{\tau}_i\!\left(\vec{x}_i^{n}+\Delta t\,k_3^{x},\;
                                \vec{v}_i^{n}+\Delta t\,k_3^{v}\right).
\end{aligned}


:更新式  

\begin{aligned}
\vec{v}_i^{\,n+1}&=\vec{v}_i^{\,n}+
\frac{\Delta t}{6}\!\left(k_1^{v}+2k_2^{v}+2k_3^{v}+k_4^{v}\right),\\[4pt]
\vec{x}_i^{\,n+1}&=\vec{x}_i^{\,n}+
\frac{\Delta t}{6}\!\left(k_1^{x}+2k_2^{x}+2k_3^{x}+k_4^{x}\right),\\[4pt]
\vec{L}_i^{\,n+1}&=\vec{L}_i^{\,n}+
\frac{\Delta t}{6}\!\left(k_1^{L}+2k_2^{L}+2k_3^{L}+k_4^{L}\right).
\end{aligned}


## 脚注

## 参考文献
* T. Pöschel &amp; T. Schwager, *Computational Granular Dynamics*, Springer, 2005.  
* C. Thornton, “Numerical simulations of deviatoric shear deformation of granular media,” *Géotechnique*, 2000.  
* 
* 
* Catherine O'Sullivan, 鈴木 輝一 (訳):「粒子個別要素法」、森北出版、ISBN:978-4627915817、（2014年5月27日発売）

## 関連項目
* 粒子法
* 分子動力学法
* 数値衝突検出
* 粉末冶金におけるシミュレーション
* オープンソース離散要素法ソフトウェアの一覧
* オープンソースの離散要素法可視化ソフトウェア
* 応力鎖
* DEMの弾塑性接触モデル
* 離散要素法の付着力モデル
* ボンデッドパーティクルモデル
* 拡張離散要素法
* 離散要素法の非日本人研究者一覧
* 日本の離散要素法の研究者