Contact Model and GPU Device Compatibility

The Multi-Sphere solver can run on three different engines, CPU, OpenCL and CUDA.  The choice of which engine to use will depend on hardware as well as the settings in the simulation. The GPU engines (OpenCL and CUDA) can only be used when all models in a simulation are supported, otherwise if only some of the physics models are supported on the GPU then the entire simulation will run on the CPU. In order to tell which models take full advantage of the GPU engine you can check the Solvers tab in the EDEM Physics Interaction section of the Creator.








Base Models

Hertz-Mindlin (no slip)

Hertz-Mindlin with JKR**

Hertz-Mindlin with JKR V2

Linear Spring

Hysteretic Spring

Edinburgh Elasto-Plastic Adhesion

No Base Model

Rolling Friction Models

Standard Rolling Friction

RVD Rolling Friction (Deprecated)

Type C Rolling Friction

No Rolling6 Friction Model

Additional Models

Bonding (Deprecated)

Bonding V2


Heat Conduction

Linear Cohesion V2




Relative Wear

Archard Wear*

Spray Coating

Oka Wear*

Particle Body Forces


Temperature Update

Saffman Lift

Magnus Lift

Schiller and Naumann Drag

Morsi and Alexander Drag

Haider and Levenspiel Drag

Ganser Drag



*These models support geometry deformation. Geometry deformation only compatible with CPU engine.


** An expermintal equivalent of this model is available in Options>Additional Components>Enable Experimental Contact models.


If an API model is written with the GPU API (API code includes the relevant openCL/CUDA file) the status of the GPU Solver Mode will change from "CPU Solver" to "GPU Solver". Contact Chaining for GPU API is supported however only 1 plug-in model is supported at the same time, if the API is a Base Contact Model no further in-built base contact model should be added to the simulation.


See the Simulator documentation for more information on the GPU Solver.




(c) 2022 Altair Engineering Inc. All Rights Reserved.

Intellectual Property Rights Notice | Technical Support