occ
|
Pointwise Distance Distribution for crystals. More...
#include <pdd_amd.h>
Public Member Functions | |
PointwiseDistanceDistribution (const crystal::Crystal &crystal, int k, const PointwiseDistanceDistributionConfig &config=PointwiseDistanceDistributionConfig{}) | |
Construct PDD from crystal structure. | |
const Vec & | weights () const |
Get the weights for each environment. | |
const Mat & | distances () const |
Get the distance matrix (environments as columns) | |
Vec | average_minimum_distance () const |
Calculate Average Minimum Distance from this PDD. | |
Mat | matrix () const |
Get the full PDD matrix (weights + distances) - assembled on demand. | |
size_t | size () const |
Number of unique chemical environments. | |
int | k () const |
Number of neighbors considered. | |
const Eigen::MatrixXi & | groups () const |
Get grouping information if available. | |
Pointwise Distance Distribution for crystals.
Based on the work by Widdowson et al., providing geometry-based crystallographic descriptors independent of unit cell choice.
The PDD is a matrix where each row corresponds to a unique chemical environment and contains the k nearest neighbor distances along with a weight indicating the relative abundance of that environment.
References:
occ::descriptors::PointwiseDistanceDistribution::PointwiseDistanceDistribution | ( | const crystal::Crystal & | crystal, |
int | k, | ||
const PointwiseDistanceDistributionConfig & | config = PointwiseDistanceDistributionConfig{} |
||
) |
Construct PDD from crystal structure.
crystal | The crystal structure to analyze |
k | Number of nearest neighbors to consider |
config | Configuration options for the calculation |
Vec occ::descriptors::PointwiseDistanceDistribution::average_minimum_distance | ( | ) | const |
Calculate Average Minimum Distance from this PDD.
Computes the weighted average of each distance column, providing a k-dimensional vector representing the average k-nearest neighbor distances across all chemical environments.
|
inline |
Get the distance matrix (environments as columns)
|
inline |
Get grouping information if available.
Returns a matrix where each column corresponds to a chemical environment and contains the indices of asymmetric unit atoms in that environment. Unused entries are filled with -1.
|
inline |
Number of neighbors considered.
|
inline |
Get the full PDD matrix (weights + distances) - assembled on demand.
|
inline |
Number of unique chemical environments.
|
inline |
Get the weights for each environment.