What is rascaline¶
Rascaline is a library for the efficient computing of representations for atomistic machine learning also called “descriptors” or “fingerprints”. These representation can be used for atomistic machine learning (ML) models including ML potentials, visualization or similarity analysis.
There exist several libraries able to compute such structural representations, such as DScribe, QUIP, and many more. Rascaline tries to distinguish itself by focussing on speed and memory efficiency of the calculations, with the explicit goal of running molecular simulations with ML potentials. In particular, memory efficiency is achieved by using the metatensor to store the structural representation. Additionally, rascaline is not limited to a single representation but supports several:
representation |
description |
gradients |
---|---|---|
Spherical expansion |
Atoms are represented by the expansion of their neighbor’s density on radial basis and spherical harmonics. This is the core of representations in SOAP (Smooth Overlap of Atomic Positions) |
positions, strain, cell |
SOAP radial spectrum |
Atoms are represented by 2-body correlations of their neighbors’ density |
positions, strain, cell |
SOAP power spectrum |
Atoms are represented by 3-body correlations of their neighbors’ density |
positions, strain, cell |
LODE Spherical Expansion |
Core of representations in LODE (Long distance equivariant) |
positions |
Sorted distances |
Each atom is represented by a vector of distance to its neighbors within the spherical cutoff |
no |
Neighbor List |
Each pair is represented by the vector between the atoms. This is intended to be used as a starting point for more complex representations |
positions |
AtomicComposition |
Obtaining the stoichiometric information of a system |
positions, strain, cell |