structuretoolkit.analyse.snap.get_snap_descriptors_per_atom#
- structuretoolkit.analyse.snap.get_snap_descriptors_per_atom(structure: Atoms, atom_types: list[str], twojmax: int = 6, element_radius: list[float] | None = None, rcutfac: float = 1.0, rfac0: float = 0.99363, rmin0: float = 0.0, bzeroflag: bool = False, quadraticflag: bool = False, weights: list | ndarray | None = None, cutoff: float = 10.0) ndarray[source]#
Calculate per atom SNAP descriptors using LAMMPS https://docs.lammps.org/compute_sna_atom.html
- Parameters:
structure (ase.atoms.Atoms) – atomistic structure as ASE atoms object
atom_types (list[str]) – list of element types
twojmax (int) – band limit for bispectrum components (non-negative integer)
element_radius (list[int]) – list of radii for the individual elements
rcutfac (float) – scale factor applied to all cutoff radii (positive real)
rfac0 (float) – parameter in distance to angle conversion (0 < rcutfac < 1)
rmin0 (float) – parameter in distance to angle conversion (distance units)
bzeroflag (bool) – subtract B0
quadraticflag (bool) – generate quadratic terms
weights (list/np.ndarry/None) – list of neighbor weights, one for each type
cutoff (float) – cutoff radius for the construction of the neighbor list
- Returns:
Numpy array with the calculated descriptor derivatives
- Return type:
np.ndarray