Introduction

This section provides an overview of what Aspherix® can do and acknowledges the funding and people who have contributed to Aspherix® and its predecessors over the years.

What is Aspherix®

Aspherix® is a Discrete Element Method simulation engine distributed by DCS Computing GmbH, Linz, Austria. Its main aim is to support industrial engineers in the design, analysis and optimization of industrial machinery as well as enable researchers to study granular flow processes with high accuracy and state-of-the-art models.

Aspherix® is based on two predecessors, LIGGGHTS ® and LAMMPS. The former is an open-source Discrete Element simulation engine that was initially developed by Christoph Kloss and then further matured by DCS Computing GmbH. LIGGGHTS ® stands for LAMMPS improved for general granular and granular heat transfer simulations. LAMMPS is a classical molecular dynamics simulator. It is widely used in the field of Molecular Dynamics and was initially developed under a US Department of Energy CRADA (Cooperative Research and Development Agreement) between two DOE laboratories and three companies. Thanks to physical and algorithmic analogies, LAMMPS offers basic functionalities for DEM simulations.

Aspherix ® aims to improve those capabilities with the goal of applying it to industrial applications. Aspherix® is currently used by a variety of research institutions world-wide. A number of Blue Chip companies in the fields of chemical, consumer goods, pharmaceutical, agricultural engineering, food production, steel production, mining, plastics production use Aspherix ® for improvement of production processes. Aspherix® runs efficiently on single-processor desktop or laptop machines, but is designed for parallel computers. It will run on any parallel machine that supports the MPI message-passing library. This includes distributed- or shared-memory parallel machines. Aspherix® can model systems with only a few particles up to millions or billions. Aspherix® is designed to be easy to use with human-readable input scripts and it also aims for easy extension with new capabilities, using the provided API. See Section_api for more details.


Aspherix® run modes

Aspherix® offers different operational modes to leverage available computing hardware, ensuring optimal performance for your simulations. Based on your available hardware you can select between two modes:

  • CPU Mode: When you select CPU Mode, you access the full-featured set of Aspherix®. This mode runs on the Central Processing Unit (CPU) and places no restriction on the number of cores used for a single simulation (MPI), limited only by your available computational capacity.

  • GPU Mode: When you select GPU Mode, you utilize the capabilities of a Graphics Processing Unit (GPU). This mode offers a highly accelerated, selected feature set for high-performance tasks. Upon selection, the software will automatically detect the available GPU hardware and load the appropriate library for execution.

o begin using the GPU Mode, please refer to the :doc:brief tutorial for GPU usage <tutorial_gpu> or the setup guide within the Aspherix® GUI :doc:here <gui:tutorial_rotating_drum_gpu>.


Aspherix® features

In the most general sense, Aspherix® integrates Newton’s equations of motion for collections of macroscopic particles, molecules or atoms that interact via short- or long-range forces with a variety of initial and/or boundary conditions. For computational efficiency Aspherix® uses neighbor lists to keep track of nearby particles. The lists are optimized for systems with particles that are repulsive at short distances, so that the local density of particles never becomes too large. On parallel machines, Aspherix® uses spatial-decomposition techniques to partition the simulation domain into small 3d sub-domains, one of which is assigned to each processor. Processors communicate and store “ghost” atom information for atoms that border their sub-domain.

Aspherix® feature list

  • runs on a single processor or in parallel

  • distributed-memory message-passing parallelism (MPI)

  • spatial-decomposition of simulation domain for parallelism

  • easily extendable via C++ Programming API

  • highly portable C++

  • runs from an input script or graphical user interface

  • syntax for defining and using variables and formulas

  • syntax for looping over runs and breaking out of loops

  • run one or multiple simulations simultaneously (in parallel) from one script

  • output to the widely used, open source VTK data format

  • coupling with other codes using a socket communication library

  • Aspherix® can be coupled to CFDEM®coupling for CFD-DEM simulations and Lagrange-Euler coupling in general

  • import and handling of complex geometries: STL walls and VTK tetrahedral volume meshes

  • moving mesh feature with a variety of motion schemes and a model for conveyor belts

  • force and wear analysis on meshes as well as stress-controlled walls

  • a variety of particle-particle contact implementations, including models for tangential history, non-sphericity and cohesion

  • interface to easily extend contact implementations

  • heat conduction between particles

  • particle insertion based on pre-defined volumes, meshes and particle streams from faces as well as particle growth and shrinkage

  • flexible definition of particle distributions

  • Smoothed Particle Hydrodynamics (SPH) fluid models


Licensing

Aspherix® comes with no warranty of any kind. The major part of Aspherix® is under commercial license and a minor part coming from LAMMPS is under the GNU Lesser General Public License (LGPL). The exact license texts can be found in the Licenses folder of your Aspherix® installation. The LGPL part of the code is compiled into the aspherix_lgpl_components library (.dll for Windows, .so for Linux).

Here is a summary of what the LGPL means for Aspherix® users:

(1) Anyone is free to use, modify, or extend the LGPL library of Aspherix® in any way they choose, including for commercial purposes.

(2) If you distribute a modified version of the Aspherix® LGPL library, it must remain open-source, meaning you distribute it under the terms of the LGPL. You must clearly annotate such a code as a derivative version of Aspherix®.

(3) If you release any code that includes Aspherix® source code, then it must also be open-sourced, meaning you distribute it under the terms of the LGPL.

(4) If you give Aspherix® files to someone else, the LGPL LICENSE file and source file headers (including the copyright and LGPL notices) must remain part of the code.

In the spirit of an open-source code, there are various ways you can contribute to making Aspherix® better. If you find an error, omission or bug in this manual or in the software, please see the section about reporting errors.

The Aspherix® documentation (this document) is (c) DCS Computing, all rights reserved. Parts of the documentation are based on the LAMMPS documentation, these parts are under the LGPL.


Acknowledgments and citations

Aspherix® development has been funded by a variety of sources:

  • The by far largest part of funding has been contributed by a variety of companies in bi-laterial projects with DCS Computing

  • The EU FP7 programmes NanoSim and T-MAPPP

  • The Austrial funding agency FWF, www.fwf.at

  • The Austrial funding agency FFG, www.ffg.at

The early days of LIGGGHTS ® development have been funded by: * Christian Doppler Forschungsgesellschaft, www.cdg.at * Industrial partner of the CD Lab of Particulate Flow Modelling, JKU Linz

As Aspherix® is based on LAMMPS, we also acknowledge the funding that helped create LAMMPS. LAMMPS development has been funded by the US Department of Energy (DOE), through its CRADA, LDRD, ASCI, and Genomes-to-Life programs and its OASCR and OBER offices. Also there was funding by the US Department of Energy’s Genomics:GTL program (www.doegenomestolife.org) under the project, “Carbon Sequestration in Synechococcus Sp.: From Molecular Machines to Hierarchical Modeling”.

The following paper describes the basic parallel algorithms used in Aspherix®. If you use Aspherix® results in your published work, please cite this paper and include a pointer to the http://www.aspherix-dem.com site.


Aspherix ® Solver Version info

To obtain the current version of your Aspherix® installation run the command aspherix -version which should return the version string as seen below.

aspherix -version
Aspherix (Version Aspherix 7.1.0, compiled 2026-03-12-13:20:23 by vagrant, git commit 3efa378ae0fe305d4e235e2e5c66d2244884a712)

The actual Aspherix® Solver version is seen immediately after the Version Aspherix string and is in this case equal to 7.1.0. The information about compilation and git commit can be useful for the developers.