Bild vom Institut
home uni uni suche search sitemap sitemap kontakt contact
unilogo University of Stuttgart
Institute of Engineering and Computational Mechanics

Particle Simulation Package PASIMODO

deutschicon
hochResearch
 







Pasimodo Showroom
Pasimodo Showroom

What is PASIMODO?

PASIMODO is a program package for particle-based simulation methods. The main field of application is the simulation of granular media, such as sand, gravel, granulates in chemical engineering and others. Moreover it can be used for the simulation of many other Lagrangian methods, e.g. fluid simulation with Smoothed-Particle-Hydrodynamics.

What does PASIMODO stand for?

In the early stages PASIMODO was hunchbacked and peculiar, just like its famous namesake from Paris. Although this changed in the meantime, the name, which originally stood for "PAckage for the SImulation of MOlecular Dynamics in an Object oriented fashion", remains. As the possible range of applications broadend during development, it now makes more sense to interpret the name as "PArticle SImulation and MOlecular Dynamics in an Object oriented fashion".

What are PASIMODO's skills?

PASIMODO can do almost anything, except cook. What it hasn't mastered yet, it can be taught, provided the user has some knowledge of C++. The main focus of PASIMODO is the dynamic simulation of granular matter; an additional feature that will enable PASIMODO to be used in conjunction with a fluid simulation is just in the works. Due to the modular structure of the program it is possible to incorporate plug-ins that have been created by the user to accommodate his or her own needs. Particle-interactions that feature a history, as well as the possibility to add and remove particles during the simulation are only some features of special interest. Due to these and many other features PASIMODO is especially suitable for research applications.

The following gives an overview of further talents of PASIMODO:
  • XML-based input and output data interface
  • parallel simulation with MPI
  • designed/optimized for:
  • application on heterogenous university-clusters
  • many concurrent processes
  • dynamically changing processor loads
  • dynamic controler-based load-balancing
  • good scaling behavior
  • various integrators available:
  • explicit schemes
  • implicit schemes with time step controling
  • various particle-/object-types:
  • balls
  • surface triangles
  • polyhedral bodies (work in progress)
  • macro objects
  • block (regular setup of arbitrary object types)
  • image (using bitmaps for object setup)
  • mesh (simplifies reading triangle surface-meshes)
  • various interactions/potentials:
  • normal forces
  • Coulomb friction
  • slip friction with tanh-approach
  • efficient cache-optimized nearest-neighbor search
  • graphical user interface
  • postprocessing
  • color coding of object states
  • easy generation of images or video
  • allows for arbitrary camera flights
  • allows for choosing specific objects via mouse in order to analyze their state data
  • based on Gtk++ (gtkmm) and VTK
  • thread-based
  • virtual-reality interface
  • all program components fully serializable
  • freeze the simulator state with all its components
  • suspend/resume simulation processes
  • migration of simulation processes between processors
  • data transfer between processors of the parallel program
  • equation-based state input for objects/particles, coordinate systems...
  • object-oriented implementation in C++ using expression templates
  • runs under Linux and Windows/cygwin
  • simulation in 3D (2D)
  • quaternion-based description of rotations
  • allows for the addition/removal of objects (particles) during the simulation
  • plug-in interface to incorporate new objects/particles, integrators and interactions (potentials)
  • program-integrated documentation, thus always up to date
  • Why isn't PASIMODO available for download?

    Due to a lack of time we are not able to offer support for PASIMODO. But as support is indispensable for a rapidly growing program package such as PASIMODO, which is constantly being developed further, we have decided not to offer PASIMODO for download for the moment. We are, however, always interested in an application of PASIMODO within the framework of cooperations and projects.

    Projects with PASIMODO

  • Development of a Simulation Tool to Predict and Override the Dynamic Interactions of Metal Cutting, DFG SPP 1180, Timo Gaugele, Institute of Engineering and Computational Mechanics, University of Stuttgart, Germany

  • Simulation of Sieving Processes, diploma thesis, Christian Ergenzinger, Institute of Engineering and Computational Mechanics, University of Stuttgart, Germany

  • Dynamic Simluation of Sloshing Fluids in Tank Trucks, diploma thesis, Vincenzo D'Alessandro, Politecnico di Milano, Italy

  • Particle Mixing Processes with Free Flowing and Cohesive Powders, Eva Kalvoda, Institute for Resource Efficient and Sustainable Systems, Technical University, Graz, Austria

  • Implementation of a Smoothed Particle Hydrodynamics Module in Pasimodo, diploma thesis, Alexandra Lehnart, Institute of Engineering and Computational Mechanics, University of Stuttgart, Germany

  • Investigation of Granular Processes Considering Particle Breakage, German Research Society, Special Research Program 716/B4, Christian Ergenzinger, Institute of Engineering and Computational Mechanics, University of Stuttgart, Germany
  • Software-projects PASIMODO cannot do without (alphabetical order)

  • Blitz++
  • Boost
  • GTK+
  • CImg
  • muParser
  • TCLAP
  • VTK
  • Xerces-C++
  • ...
  • Contact