shape_descriptors
make_N_invariants(coefficients)
Construct the N
type invariants from SHT coefficients.
If coefficients is of length n, the size of the result will be sqrt(n)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
coefficients
|
ndarray
|
the set of spherical harmonic coefficients |
required |
Returns:
Type | Description |
---|---|
ndarray
|
np.ndarray the |
Source code in chmpy/shape/shape_descriptors.py
make_invariants(l_max, coefficients, kinds='NP')
Construct the N
and/or P
type invariants from SHT coefficients.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
l_max
|
int
|
the maximum angular momentum of the coefficients |
required |
coefficients
|
ndarray
|
the set of spherical harmonic coefficients |
required |
kinds
|
str
|
which kinds of invariants to include |
'NP'
|
Returns:
Type | Description |
---|---|
ndarray
|
np.ndarray the |
Source code in chmpy/shape/shape_descriptors.py
promolecule_density_descriptor(sht, n_i, p_i, **kwargs)
Calculate the shape description of the promolecule density isosurface.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
sht
|
SHT
|
the spherical harmonic transform object handle |
required |
n_i
|
ndarray
|
atomic numbers of the atoms |
required |
p_i
|
ndarray
|
Cartesian coordinates of the atoms |
required |
**kwargs
|
keyword arguments for optional settings. |
{}
|
Keyword Args: isovalue (float): change the Hirshfeld weight value (default 0.5) with_property (str): calculate the combined shape + surface property descriptor using the specified property on the surface (e.g. d_norm, esp) bounds (Tuple): modify the lower/upper bounds on the search for the isovalue (default 0.1, 20.0) coefficients (bool): also return the coefficients of the SHT origin (np.ndarray): specify the center of the surface (default is the geometric centroid of the atoms) kinds (str): the kinds of invariants to calculate (default 'NP') Returns: np.ndarray: the rotation invariant descriptors of the promolecule surface shape
Source code in chmpy/shape/shape_descriptors.py
stockholder_weight_descriptor(sht, n_i, p_i, n_e, p_e, **kwargs)
Calculate the 'stockholder weight' shape descriptors based on the Hirshfeld weight i.e. ratio of electron density from the 'interior' to the total electron density.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
sht
|
SHT
|
the spherical harmonic transform object handle |
required |
n_i
|
ndarray
|
atomic numbers of the interior atoms |
required |
p_i
|
ndarray
|
Cartesian coordinates of the interior atoms |
required |
n_e
|
ndarray
|
atomic numbers of the exterior atoms |
required |
p_e
|
ndarray
|
Cartesian coordinates of the exterior atoms |
required |
Other Parameters:
Name | Type | Description |
---|---|---|
isovalue |
float
|
change the Hirshfeld weight value (default 0.5) |
background |
float
|
include an optional 'background' electron density (default 0.0) |
with_property |
str
|
calculate the combined shape + surface property descriptor using the specified property on the surface (e.g. d_norm, esp) |
bounds |
Tuple
|
modify the lower/upper bounds on the search for the isovalue (default 0.1, 20.0) |
coefficients |
bool
|
also return the coefficients of the SHT |
origin |
ndarray
|
specify the center of the surface (default is the geometric centroid of the interior atoms) |
kinds |
str
|
the kinds of invariants to calculate (default 'NP') |
Returns: np.ndarray: the rotation invariant descriptors of the Hirshfeld surface shape