Descriptors
- 
class Descriptor
- Subclassed by B1, B2, B2_Simple, B3, FourBody, ThreeBody, ThreeBodyWide, TwoBody - Public Functions - 
Descriptor()
 - 
virtual DescriptorValues compute_struc(Structure &structure) = 0
 - 
virtual ~Descriptor() = default
 - 
virtual void write_to_file(std::ofstream &coeff_file, int coeff_size)
 - 
virtual nlohmann::json return_json() = 0
 - Public Members - 
std::string descriptor_name
 
- 
Descriptor()
- 
class DescriptorValues
- Public Functions - 
DescriptorValues()
 - Public Members - 
int n_descriptors
 - 
int n_types
 - 
int n_atoms
 - 
double volume
 - 
std::vector<Eigen::MatrixXd> descriptors
 - 
std::vector<Eigen::MatrixXd> descriptor_force_dervs
 - 
std::vector<Eigen::MatrixXd> neighbor_coordinates
 - 
std::vector<Eigen::VectorXd> descriptor_norms
 - 
std::vector<Eigen::VectorXd> descriptor_force_dots
 - 
std::vector<Eigen::VectorXd> cutoff_values
 - 
std::vector<Eigen::VectorXd> cutoff_dervs
 - 
std::vector<Eigen::VectorXi> neighbor_counts
 - 
std::vector<Eigen::VectorXi> cumulative_neighbor_counts
 - 
std::vector<Eigen::VectorXi> atom_indices
 - 
std::vector<Eigen::VectorXi> neighbor_indices
 - 
int n_clusters = 0
 - 
std::vector<int> n_clusters_by_type
 - 
std::vector<int> cumulative_type_count
 - 
std::vector<int> n_neighbors_by_type
 
- 
DescriptorValues()
- 
class ClusterDescriptor
- Public Functions - 
ClusterDescriptor()
 - 
ClusterDescriptor(const DescriptorValues &structure)
 - 
ClusterDescriptor(const DescriptorValues &structure, const std::vector<std::vector<int>> &clusters)
 - 
ClusterDescriptor(const DescriptorValues &structure, const std::vector<int> &clusters)
 - 
void initialize_cluster(int n_types, int n_descriptors)
 - 
void add_clusters_by_type(const DescriptorValues &structure, const std::vector<std::vector<int>> &clusters)
 - 
void add_clusters(const DescriptorValues &structure, const std::vector<int> &clusters)
 - 
void add_all_clusters(const DescriptorValues &structure)
 
- 
ClusterDescriptor()
- 
class B2 : public Descriptor
- Subclassed by B2_Norm - Public Functions - 
B2()
 - 
B2(const std::string &radial_basis, const std::string &cutoff_function, const std::vector<double> &radial_hyps, const std::vector<double> &cutoff_hyps, const std::vector<int> &descriptor_settings)
 - 
B2(const std::string &radial_basis, const std::string &cutoff_function, const std::vector<double> &radial_hyps, const std::vector<double> &cutoff_hyps, const std::vector<int> &descriptor_settings, const Eigen::MatrixXd &cutoffs)
- Construct the B2 descriptor with distinct cutoffs for each pair of species. 
 - 
virtual DescriptorValues compute_struc(Structure &structure)
 - 
virtual void write_to_file(std::ofstream &coeff_file, int coeff_size)
 - 
virtual nlohmann::json return_json()
 - Public Members - 
std::function<void(std::vector<double>&, std::vector<double>&, double, int, std::vector<double>)> radial_pointer
 - 
std::function<void(std::vector<double>&, double, double, std::vector<double>)> cutoff_pointer
 - 
std::string radial_basis
 - 
std::string cutoff_function
 - 
std::vector<double> radial_hyps
 - 
std::vector<double> cutoff_hyps
 - 
std::vector<int> descriptor_settings
 - 
std::string descriptor_name = "B2"
 - 
Eigen::MatrixXd cutoffs
- Matrix of cutoff values, with element (i, j) corresponding to the cutoff assigned to the species pair (i, j), where i is the central species and j is the environment species. 
 
- 
B2()