ESPResSo can perform simulations of various physical systems in different ensembles. It is optimized for coarse-grained models and has the following characteristics:
- ESPResSo is alive! It is actively maintained and refined by members of the Institute for Computational Physics, Stuttgart and contributors from all around the globe.
- ESPResSo is controlled by python scripts, which gives it great flexibility.
- ESPResSo is extensible, which allows users to add new methods and algorithms.
- ESPResSo is open-source and free, released under the GNU GPL v3.
- ESPResSo is parallelized, i.e. it can run on many processors in parallel, some features can also run on a GPU.
- ESPResSo is portable, i.e. it runs on a wide variety of hardware platforms, like desktop workstations, convenience clusters as well as high performance supercomputers based on POSIX operating systems (e.g. Unix or Linux, macOS, WSL).
Methods and Algorithms
ESPResSo contains a number of advanced algorithms for coarse-grained simulations:
- Statistical ensembles: NVE, NVT, NpT, μVT.
- Non-bonded potentials: Lennard-Jones, Buckingham, Morse, generic tabulated potentials, anisotropic Gay-Berne particles, etc.
- Bonded potentials: harmonic spring, FENE, generic tabulated bonded potentials, etc.
- Fast methods for electro- and magnetostatics: e.g. P3M, dipolar P3M, ELC, DLC, ICC, MMM1D, LB-EK, ScaFaCoS library.
- Constraints: all or some of the coordinates of particles can be fixed, various spatial constraints (walls, spheres, pores, …) can interact with the particles.
- Rigid bodies: arbitrary extended objects can be constructed from several particles.
- Field coupling: various particle coupling methods to external scalar and vector fields.
- Dynamic binding: when particles collide, new bonds can be generated between them to study agglomeration. These bonds can be automatically removed when stretched beyond a cutoff distance.
- Hydrodynamics: lattice-Boltzmann fluid (optionally on a GPU), DPD (Dissipative Particle Dynamics).
- Analysis: numerous physical observables can be measured during the simulation and stored in memory either as a time series or as a statistic (auto-correlation function, mean and variance accumulators, etc.)
- Real-time visualization: with the built-in OpenGL visualizer. File format support for trajectory visualization with external tools (e.g. VMD or paraview).
- Advanced simulation methods for swimmers, immersed boundaries, electrokinetics, particle polarizability, reaction methods.
What ESPResSo is not
- ESPResSo is not Quantum Espresso, which is an integrated suite of computer codes for electronic-structure calculations and materials modeling on the nanoscale.
- ESPResSo is not a simulation program for all-atom simulations as they are used e.g. for protein simulations! There are many other programs which are more suitable for this kind of simulation, for example GROMACS, NAMD or GROMOS.
- ESPResSo is not ESPResSo++. ESPResSo and ESPResSo++ have common roots and share parts of the developer/user community. However their development is independent and they are different software packages with somewhat different target communities. Please look at the respective website for spotting the differences.