# moleculekit.projections.metricshell module¶

class moleculekit.projections.metricshell.MetricShell(sel1, sel2, numshells=4, shellwidth=3, pbc=True, gap=None, truncate=None)

Calculates the density of atoms around other atoms.

The MetricShell class calculates the density of a set of interchangeable atoms in concentric spherical shells around some other atoms. Thus it can treat identical molecules (like water or ions) and calculate summary values like the changes in water density around atoms. It produces a n-by-s dimensional vector where n the number of atoms in the first selection and s the number of shells around each of the n atoms.

Parameters: sel1 (str) – Atom selection string for the first set of atoms around which the shells will be calculated. See more here sel2 (str) – Atom selection string for the second set of atoms whose density will be calculated in shells around sel1. See more here numshells (int, optional) – Number of shells to use around atoms of sel1 shellwidth (int, optional) – The width of each concentric shell in Angstroms pbc (bool, optional) – Set to false to disable distance calculations using periodic distances gap (int, optional) – Not functional yet truncate (float, optional) – Set all distances larger than truncate to truncate
copy()

Produces a deep copy of the object

getMapping(mol)

Returns the description of each projected dimension.

Parameters: mol (Molecule object) – A Molecule object which will be used to calculate the descriptions of the projected dimensions. map – A DataFrame containing the descriptions of each dimension DataFrame object
project(mol)

Project molecule.

Parameters: mol (Molecule) – A Molecule object to project. kwargs – Do not use this argument. Only used for backward compatibility. Will be removed in later versions. data – An array containing the projected data. np.ndarray