# 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.

Returns

map – A DataFrame containing the descriptions of each dimension

Return type

DataFrame object

project(mol)

Project molecule.

Parameters
Returns

data – An array containing the projected data.

Return type

np.ndarray