Modules of the Month

Every month we feature an addition to our software library. What is a software module? answer here.

  • Dask-traj

    Dask-traj

      For analysis of molecular dynamics (MD) simulations MDTraj is a fast and commonly used analysis. However MDTraj has some restrictions such as (1) the whole trajectory needs to fit into memory, or gathering results becomes inconvenient; (2) the result of the computation also need to fit into memory, and (3) all …Read More »
  • CLstunfti: An extendable Python toolbox to compute scattering of electrons with a given kinetic energy in liquids and amorphous solids

    CLstunfti: An extendable Python toolbox to compute scattering of electrons with a given kinetic energy in liquids and amorphous solids

      Description CLstunfti is an extendable Python toolbox to compute scattering of electrons with a given kinetic energy in liquids and amorphous solids. It uses a continuum trajectory model with differential ionization and scattering cross sections as input to simulate the motion of the electrons through the medium. Originally, CLstunfti …Read More »
  • Minimal distance segment to segment with Karush-Kuhn-Tucker conditions

    Minimal distance segment to segment with Karush-Kuhn-Tucker conditions

      Description The module minDist2segments_KKT returns the minimal distance between two line segments. It uses the Karush-Kuhn-Tucker conditions (KKT) for the minimization under constraints. Practical application We use the present module to avoid topology violations in an entangled polymer system. To preserve the topology in a system of entangled polymers we need to …Read More »
  • E-CAM High Throughput Computing Library

    E-CAM High Throughput Computing Library

    This module is the first in a sequence that will form the overall capabilities of the E-CAM High Throughout Computing (HTC) library. In particular this module deals with creating a set of decorators to wrap around the Dask-Jobqueue Python library, which aspires to make the development time cost of leveraging it lower …Read More »
  • Automated high-throughput Wannierisation, a successful collaboration between E-CAM and the MaX Centre of Excellence

    Automated high-throughput Wannierisation, a successful collaboration between E-CAM and the MaX Centre of Excellence

    Maximally-localised Wannier functions (MLWFs) are routinely used to compute from first- principles advanced materials properties that require very dense Brillouin zone (BZ) integration and to build accurate tight-binding models for scale-bridging simulations. At the same time, high-thoughput (HT) computational materials design is an emergent field that promises to accelerate the …Read More »
  • QMCPack Interfaces for Electronic Structure Computations

    QMCPack Interfaces for Electronic Structure Computations

    Quantum Monte Carlo (QMC) methods are a class of ab initio, stochastic techniques for the study of quantum systems. While QMC simulations are computationally expensive, they have the advantage of being accurate, fully ab initio and scalable to a large number of cores with limited memory requirements. These features make …Read More »
  • PANNA: Properties from Artificial Neural Network Architectures

    PANNA: Properties from Artificial Neural Network Architectures

    PANNA is a package for training and validating neural networks to represent atomic potentials. It implements configurable all-to-all connected deep neural network architectures which allow for the exploration of training dynamics. Currently it includes tools to enable original[1] and modified[2] Behler-Parrinello input feature vectors, both for molecules and crystals, but …Read More »
  • Pyscal- A python module for structural analysis of atomic environments

    Pyscal- A python module for structural analysis of atomic environments

    Description pyscal is a python module for the calculation of local atomic structural environments including Steinhardt’s bond orientational order parameters[1] during post-processing of atomistic simulation data. The core functionality of pyscal is written in C++ with python wrappers using pybind11 which allows for fast calculations and easy extensions in python. Practical Applications Steinhardt’s order …Read More »
  • Multi-GPU version of DL_MESO_DPD

    Multi-GPU version of DL_MESO_DPD

    This module implements the first version of the DL_MESO_DPD Mesoscale Simulation Package, with multiple NVidia Graphical Processing Units (GPUs). In this module the main framework of a multi-GPU version of the DL_MESO_DPD code has been developed. The exchange of data between GPUs overlaps with the computation of the forces for …Read More »
  • Integrating LAMMPS with OpenPathSampling

    Integrating LAMMPS with OpenPathSampling

    This module shows how LAMMPS can be used as Molecular Dynamic (MD) engine in OpenPathSampling (OPS) and it also provide a benchmark for the impact of OPS overhead over the MD engine. Practical application and exploitation of the code OpenPathSampling uses OpenMM as default engine for calculating the sampled trajectories. …Read More »
  • FFTXlib, a rewrite and optimisation of earlier versions of FFT related routines inside QE pre-v6

    FFTXlib, a rewrite and optimisation of earlier versions of FFT related routines inside QE pre-v6

    FFTXlib is mainly a rewrite and optimisation of earlier versions of FFT related routines inside Quantum ESPRESSO (QE) pre-v6; and finally their replacement. Despite many similarities, current version of FFTXlib dramatically changes the FFT strategy in the parallel execution, from 1D+2D FFT performed in QE pre v6 to a 1D+1D+1D …Read More »
  • Extension of the ParaDiS code to include precipitate interactions, and code optimisation to run on HPC environment

    Extension of the ParaDiS code to include precipitate interactions, and code optimisation to run on HPC environment

    Here present two featured software modules of the month: ParaDiS with precipitates ParaDiS with precipitates optimized to HPC environment that provide extensions to the ParaDIS Discrete dislocation dynamics (DDD) code (LLNL, http://paradis.stanford.edu/) where dislocation/precipitate interactions are included. Module 2 was built to run the code on an HPC environment, by optimizing …Read More »
  • DBCSR@MatrixSwitch, an optimised library to deal with sparse matrices

    DBCSR@MatrixSwitch, an optimised library to deal with sparse matrices

    MatrixSwitch is a module which acts as an intermediary interface layer between high-level and low-level routines dealing with matrix storage and manipulation. It allows a seamlessly switch between different software implementations of the matrix operations. DBCSR is an optimized library to deal with sparse matrices, which appear frequently in many kind of …Read More »
  • Abrupt GC-AdResS: A new and more general implementation of the Grand Canonical Adaptive Resolution Scheme (GC-AdResS)

    Abrupt GC-AdResS: A new and more general implementation of the Grand Canonical Adaptive Resolution Scheme (GC-AdResS)

    The Grand Canonical Adaptive resolution scheme (GC-AdResS) gives a methodological description to partition a simulation box into different regions with different degrees of accuracy. For more details on the theory see Refs. [1,2,3]. In the context of an E-CAM pilot project focused on the development of the GC-AdResS scheme, an …Read More »
  • Porting of electrostatics to the GPU version of DL_MESO_DPD

    Porting of electrostatics to the GPU version of DL_MESO_DPD

    The porting of DL_MESO_DPD [1,2] to graphic cards (GPUs) was reported in deliverable D4.2 of E-CAM[3] (for a single GPU) and deliverable D4.3 [4] (for multiple GPUs) (Figure 1), and has now been extended to include electrostatics, with two alternative schemes as explained below. This work was recently reported on …Read More »
  • CTMQC, a module for excited-state nonadiabatic dynamics

    CTMQC, a module for excited-state nonadiabatic dynamics

      CTMQC is a module for excited-state nonadiabatic dynamics. It is used to simulate the coupled dynamics of electrons and nuclei (ideally in gas phase molecular systems) in response to, for instance, an initial electronic excitation. The CTMQC module is based on the coupled-trajectory mixed quantum-classical (CT-MQC) algorithm [1,2] that …Read More »
  • SCDM_WFs

    SCDM_WFs

      Module SCDM_WFs implements the selected columns of the density matrix (SCDM) method [1] for building localized Wannier Functions (WFs). Wannier90 [2] is a post-processing tool for the computation of the Maximally Localised Wannier Functions (MLWFs) [3,4,5], which have been increasingly adopted by the electronic structure community for different purposes. The reasons are manifold: …Read More »
  • QQ-Interface (Quantics-QChem-Interface)

    QQ-Interface (Quantics-QChem-Interface)

      The QQ-Interface module connects the full quantum nonadiabatic wavefunction propagation code Quantics to the time-dependent density functional theory (TDDFT) module of the electronic structure program Q-Chem. Q-Chem provides analytic gradients, Hessians and derivative couplings at TDDFT level. With this module, it is possible to use the Q-Chem TDDFT module for excited state direct …Read More »
  • PLUMED wrapper for OpenPathSampling

    PLUMED wrapper for OpenPathSampling

      PLUMED is a widely used and versatile rare-event sampling and analysis code that can be used with various Molecular Dynamics (MD) engines. It has a very intuitive and versatile syntax for the definition of Collective Variables (CVs), and a wide variety of sampling methods, which accounts for its widespread use. …Read More »
  • Improving I/O of DL_MESO_DPD files using SIONlib

    Improving I/O of DL_MESO_DPD files using SIONlib

      This module implements the SIONlib library to optimize the I/O (writing/reading) of the trajectory files generated by DL_MESO_DPD, the Dissipative Particle Dynamics (DPD) code from the DL_MESO package. SIONlib is a library for writing and reading binary data to/from several thousands of processors into one or a small number …Read More »
  • PaPIM: A code for Quantum Time Correlation Functions

    PaPIM: A code for Quantum Time Correlation Functions

      PaPIM code is a package to study the (quantum) properties of materials, and in particular time correlation functions, via the so-called mixed quantum-classical methods. In these schemes, quantum evolution is approximated by appropriately combining a set of classical trajectories for the system. Several quantum effects, for example, the possibility …Read More »
  • Spring shooting – A module for improving efficiency of transition path sampling

    Spring shooting – A module for improving efficiency of transition path sampling

      Transition path sampling is most efficient when paths are generated from the top of the free energy barrier. However, complex (biomolecular) activated processes, such as nucleation or protein binding/unbinding, can have asymmetric and peaked barriers. Using uniform selection on these type of processes will not be efficient, as it, …Read More »
  • Symmetry Adapted Wannier Functions – a Component of the Wannier90

    Symmetry Adapted Wannier Functions – a Component of the Wannier90

      Symmetry Adapted Wannier Functions is a module within Wannier90 which is devoted to the construction of Wannier function (WF) with a given symmetry. The procedure implemented in this module enables one to control the symmetry and center of the WFs and also simplifies the minimisation of the spread functional …Read More »
  • PIM_wd: Module for sampling of the quantum Wigner distribution

    PIM_wd: Module for sampling of the quantum Wigner distribution

      The PIM_wd module implements the exact quantum Wigner probability distribution function sampling algorithm of the Phase Integration Method [1], and is the main subroutine for the quantum correlation function calculations in the PaPIM code. The module samples the thermal Wigner density using a generalised Monte Carlo scheme for sampling …Read More »
  • Coarse-Graining module, a Component of the Hierarchical Equilibration Strategy for Polymer Melts

    Coarse-Graining module, a Component of the Hierarchical Equilibration Strategy for Polymer Melts

    To study the properties of polymer melts by numerical simulations, equilibrated configurations must be prepared. However, the relaxation time for high molecular weight polymer melts is huge and increases, according to reptation theory, with the third power of the molecular weight. Hence, an effective method for decreasing the equilibration time …Read More »
  • Contact Map – a package for analyzing and exploring contacts, from a trajectory generated by MD

    Contact Map – a package for analyzing and exploring contacts, from a trajectory generated by MD

      Contacts can be an important tool for defining (meta)stable states in processes involving biomolecules. For example, an analysis of contacts can be particularly useful when defining bound states during a binding processes between proteins, DNA, and small molecules (such as potential drugs). The contacts analyzed by the contact_map package …Read More »
  • LocConQubit, a module for the construction of controlled pulses on isolated qubit systems using the Local Control Theory

    LocConQubit, a module for the construction of controlled pulses on isolated qubit systems using the Local Control Theory

      The LocConQubit module implements the Local Control Theory[1,2], an algorithm for on-the-fly construction of a time-dependent potential that drives the evolution of a Hamiltonian towards one of its eigenstates. The algorithm is applicable to any Hamiltonian that is separable into a time-dependent and into a time-independent part, where the …Read More »
  • GRASP Sampling – a module to build a representative data set for a fitting procedure

    GRASP Sampling – a module to build a representative data set for a fitting procedure

    GRASP_sampling performs a stratified sampling of the configurations, described by vectors, of a system to build a representative training set in a fitting procedure. Given a list of candidate configurations, and selected the size (N) of the training set required, the module executes the combinatorial optimization that maximizes the following …Read More »
  • Geomoltools: A set of software modules to easily manipulate molecular geometries

    Geomoltools: A set of software modules to easily manipulate molecular geometries

    Geomoltools is a set of eight pre- and post-treatment Fortran codes that can be used to easily manipulate molecular geometries, allowing to minimize the average energy obtained for a range of internuclear distances for the dimers of each element, and decrease the computational cost of a DFT calculation. The set …Read More »
  • Path density for OpenPathSampling

    Path density for OpenPathSampling

    Module path density implements path density calculations for the OpenPathSampling (OPS) package, including a generic multidimensional sparse histogram, and plotting functions for the two-dimensional case. Path density plots provide a way to visualize kinetic information obtained from path sampling, such as the mechanism of a rare event. In addition, the …Read More »
  • Second-Order Differencing Scheme

    Second-Order Differencing Scheme

    This module, SodLib, provides exact wavefunction propagation using the second-order differencing (SOD) integrator scheme to solve the time-dependent Schrödinger equation as described by Leforestier et al, J. Comp Phys, 94, 59-80, 1991. Within this scheme the time interval is determined through dividing hbar by the eigenvalue of the Hamiltonian operator …Read More »
  • First GPU version of the DL_MESO_DPD code

    First GPU version of the DL_MESO_DPD code

    DL_MESO_DPD, is the Dissipative Particle Dynamics (DPD) code from the mesoscopic simulation package DL_MESO [1], developed by Dr. Michael Seaton at Daresbury Laboratory (UK). This open source code is available from Science and Technology Facilities Council (STFC) under both academic (free) and commercial (paid) licenses. E-CAM’s Work-package 4 (WP4), Meso …Read More »
  • LibOMM : Orbital Minimization Method Library

    LibOMM : Orbital Minimization Method Library

    Purpose The library LibOMM solves the Kohn-Sham equation as a generalized eigenvalue problem for a fixed Hamiltonian. It implements the orbital minimization method (OMM), which works within a density matrix formalism. The basic strategy of the OMM is to find the set of Wannier functions (WFs) describing the occupied subspace …Read More »
  • Analysis of charge dipole moments in DL_MESO_DPD

    Analysis of charge dipole moments in DL_MESO_DPD

    The present module, gen_dipole.f90, is a generalization of the dipole.f90 post-processing utility of DL_MESO_DPD, the Dissipative Particle Dynamics (DPD) code from the DL_MESO package. It processes the trajectory (HISTORY) files to obtain the charge dipole moments of all the (neutral) molecules in the system. It produces files dipole_* containing the …Read More »
  • Solvers for quantum atomic radial equations

    Solvers for quantum atomic radial equations

    SQARE (solvers for quantum atomic radial equations) is a library of utilities intended for dealing with functions discretized on radial meshes, wave-equations with spherical symmetry and their corresponding quantum states. The utilities are segregated into three levels: radial grids and functions, ODE solvers, and states. For more information see modules …Read More »
  • ClassMC

    ClassMC

    Module ClassMC samples the system phase space using the classical Boltzmann distribution function and calculates the time correlation functions from the sampled initial conditions. For more information check the module documentation here.Read More »
  • Direct MD (on-the-fly) flux/rate in OpenPathSampling

    Direct MD (on-the-fly) flux/rate in OpenPathSampling

    This module, based on OpenPathSampling, calculates the flux out of a state and through an interface, or the rate of the transition between two states, while running a trajectory. For more information check the module documentation here.  Read More »
Share