class gpr::priors::CovalentBondPrior

Overview

Length-scale prior on SexpAt keyed off the AtomsConfiguration ‘s pairtype table. More…

#include <CovalentBondPrior.h>
 
class CovalentBondPrior {
public:
    // construction
 
    CovalentBondPrior(const AtomsConfiguration& atoms_config, double alpha = 1.0);
 
    // methods
 
    Eigen::VectorXd lengthScalePerPairtype() const;
    static double bondLength(int Za, int Zb, double alpha = 1.0);
};

Detailed Documentation

Length-scale prior on SexpAt keyed off the AtomsConfiguration ‘s pairtype table. Returns one length scale per pairtype in the same indexing the SexpAt kernel uses (matches Distance.cpp:395-525).

Construction

CovalentBondPrior(const AtomsConfiguration& atoms_config, double alpha = 1.0)

Parameters:

atoms_config

AtomsConfiguration with n_pt active pairtypes and pairtype(i, j) indexed by atoms_mov.type etc.

alpha

optional scaling factor applied to the bond-length sum (default 1.0). Tighter alpha (~0.5) makes the GP more local; looser (~2.0) makes it more global.

Methods

Eigen::VectorXd lengthScalePerPairtype() const

Per-pairtype length scale in Angstrom. Length = conf.n_pt; element [k] is the prior length scale for pairtype k.

static double bondLength(int Za, int Zb, double alpha = 1.0)

Static convenience: bond length in Angstrom for arbitrary (Za, Zb).