#include <KernelFunctions.h>
Public Member Functions | |
| KernelFunctions (const KernelFunctions *in) | |
| KernelFunctions (const std::string &input) | |
| KernelFunctions (const std::vector< double > &at, const std::vector< double > &sig, const std::string &type, const std::string &mtype, const double &w) | |
| double | evaluate (const std::vector< Value * > &pos, std::vector< double > &derivatives, bool usederiv=true, bool doInt=false, double lowI_=-1, double uppI_=-1) const |
| Evaluate the kernel function with constant intervals. | |
| std::vector< double > | getCenter () const |
| Get the position of the center. | |
| std::vector< double > | getContinuousSupport () const |
| get it in continuous form | |
| double | getCutoff (const double &width) const |
| Get the cutoff for a kernel. | |
| std::vector< unsigned > | getSupport (const std::vector< double > &dx) const |
| Get the support. | |
| unsigned | ndim () const |
| Get the dimensionality of the kernel. | |
| void | normalize (const std::vector< Value * > &myvals) |
| Normalise the function and scale the height accordingly. | |
Static Public Member Functions | |
| static std::unique_ptr< KernelFunctions > | read (IFile *ifile, const bool &cholesky, const std::vector< std::string > &valnames) |
| Read a kernel function from a file. | |
Private Types | |
| enum | { gaussian , truncatedgaussian , stretchedgaussian , uniform , triangular } |
| What type of kernel are we using. More... | |
| enum | { diagonal , multi , vonmises } |
| Is the metric matrix diagonal. More... | |
Private Member Functions | |
| Matrix< double > | getMatrix () const |
| Convert the width into matrix form. | |
| void | setData (const std::vector< double > &at, const std::vector< double > &sig, const std::string &type, const std::string &mtype, const double &w) |
| Used to set all the data in the kernel during construction - avoids double coding as this has two constructors. | |
Private Attributes | |
| std::vector< double > | center |
| The center of the kernel function. | |
| enum PLMD::KernelFunctions:: { ... } | dtype |
| Is the metric matrix diagonal. | |
| double | height |
| The height of the kernel. | |
| enum PLMD::KernelFunctions:: { ... } | ktype |
| What type of kernel are we using. | |
| double | stretchA =1.0 |
| double | stretchB =0.0 |
| std::vector< double > | width |
| The width of the kernel. | |
|
private |
|
explicit |
| PLMD::KernelFunctions::KernelFunctions | ( | const std::vector< double > & | at, |
| const std::vector< double > & | sig, | ||
| const std::string & | type, | ||
| const std::string & | mtype, | ||
| const double & | w ) |
|
explicit |
| double PLMD::KernelFunctions::evaluate | ( | const std::vector< Value * > & | pos, |
| std::vector< double > & | derivatives, | ||
| bool | usederiv = true, | ||
| bool | doInt = false, | ||
| double | lowI_ = -1, | ||
| double | uppI_ = -1 ) const |
Evaluate the kernel function with constant intervals.
|
inline |
Get the position of the center.
| std::vector< double > PLMD::KernelFunctions::getContinuousSupport | ( | ) | const |
get it in continuous form
| double PLMD::KernelFunctions::getCutoff | ( | const double & | width | ) | const |
Get the cutoff for a kernel.
|
inlineprivate |
Convert the width into matrix form.
| std::vector< unsigned > PLMD::KernelFunctions::getSupport | ( | const std::vector< double > & | dx | ) | const |
Get the support.
|
inline |
Get the dimensionality of the kernel.
| void PLMD::KernelFunctions::normalize | ( | const std::vector< Value * > & | myvals | ) |
Normalise the function and scale the height accordingly.
|
static |
Read a kernel function from a file.
|
private |
Used to set all the data in the kernel during construction - avoids double coding as this has two constructors.
|
private |
The center of the kernel function.
| enum { ... } PLMD::KernelFunctions::dtype |
Is the metric matrix diagonal.
|
private |
The height of the kernel.
| enum { ... } PLMD::KernelFunctions::ktype |
What type of kernel are we using.
|
private |
|
private |
|
private |
The width of the kernel.
Hosted by GitHub
|
1.17.0
|