All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
PLMD::KernelFunctions Class Reference

#include <KernelFunctions.h>

Public Member Functions

 KernelFunctions (const std::vector< double > &at, const std::vector< double > &sig, const std::string &type, const bool multivariate, const double &w, const bool norm)
 
unsigned ndim () const
 Get the dimensionality of the kernel. More...
 
std::vector< double > getCenter () const
 Get the position of the center. More...
 
std::vector< unsigned > getSupport (const std::vector< double > &dx) const
 Get the support. More...
 
std::vector< double > getContinuousSupport () const
 get it in continuous form More...
 
double evaluate (const std::vector< Value * > &pos, std::vector< double > &derivatives, bool usederiv=true) const
 Evaluate the kernel function. More...
 

Static Public Member Functions

static KernelFunctionsread (IFile *ifile, const std::vector< std::string > &valnames)
 Read a kernel function from a file. More...
 

Private Types

enum  { gaussian, uniform, triangular }
 What type of kernel are we using. More...
 

Private Member Functions

Matrix< double > getMatrix () const
 Convert the width into matrix form. More...
 
double getCutoff (const double &width) const
 Get the cutoff for a kernel. More...
 

Private Attributes

bool diagonal
 Is the metric matrix diagonal. More...
 
enum PLMD::KernelFunctions:: { ... }  ktype
 What type of kernel are we using. More...
 
std::vector< double > center
 The center of the kernel function. More...
 
std::vector< double > width
 The width of the kernel. More...
 
double height
 The height of the kernel. More...
 

Detailed Description

Definition at line 32 of file KernelFunctions.h.

Member Enumeration Documentation

anonymous enum
private

What type of kernel are we using.

Enumerator
gaussian 
uniform 
triangular 

Definition at line 37 of file KernelFunctions.h.

Constructor & Destructor Documentation

PLMD::KernelFunctions::KernelFunctions ( const std::vector< double > &  at,
const std::vector< double > &  sig,
const std::string &  type,
const bool  multivariate,
const double &  w,
const bool  norm 
)

Definition at line 89 of file KernelFunctions.cpp.

Member Function Documentation

double PLMD::KernelFunctions::evaluate ( const std::vector< Value * > &  pos,
std::vector< double > &  derivatives,
bool  usederiv = true 
) const

Evaluate the kernel function.

Definition at line 184 of file KernelFunctions.cpp.

std::vector< double > PLMD::KernelFunctions::getCenter ( ) const
inline

Get the position of the center.

Definition at line 82 of file KernelFunctions.h.

std::vector< double > PLMD::KernelFunctions::getContinuousSupport ( ) const

get it in continuous form

Definition at line 153 of file KernelFunctions.cpp.

double PLMD::KernelFunctions::getCutoff ( const double &  width) const
private

Get the cutoff for a kernel.

Definition at line 144 of file KernelFunctions.cpp.

Matrix< double > PLMD::KernelFunctions::getMatrix ( ) const
inlineprivate

Convert the width into matrix form.

Definition at line 65 of file KernelFunctions.h.

std::vector< unsigned > PLMD::KernelFunctions::getSupport ( const std::vector< double > &  dx) const

Get the support.

Definition at line 176 of file KernelFunctions.cpp.

unsigned PLMD::KernelFunctions::ndim ( ) const
inline

Get the dimensionality of the kernel.

Definition at line 77 of file KernelFunctions.h.

KernelFunctions * PLMD::KernelFunctions::read ( IFile ifile,
const std::vector< std::string > &  valnames 
)
static

Read a kernel function from a file.

Definition at line 236 of file KernelFunctions.cpp.

Member Data Documentation

std::vector<double> PLMD::KernelFunctions::center
private

The center of the kernel function.

Definition at line 39 of file KernelFunctions.h.

bool PLMD::KernelFunctions::diagonal
private

Is the metric matrix diagonal.

Definition at line 35 of file KernelFunctions.h.

double PLMD::KernelFunctions::height
private

The height of the kernel.

Definition at line 43 of file KernelFunctions.h.

enum { ... } PLMD::KernelFunctions::ktype

What type of kernel are we using.

std::vector<double> PLMD::KernelFunctions::width
private

The width of the kernel.

Definition at line 41 of file KernelFunctions.h.


The documentation for this class was generated from the following files: