Loading...
Searching...
No Matches
Tool Box

Classes

class  PLMD::Angle
 Class to compute angles. More...
 
class  PLMD::AtomNumber
 Simple class to store the index of an atom. More...
 
class  PLMD::CheckInRange
 
class  PLMD::Citations
 Class taking care of bibliography. More...
 
class  PLMD::ves::CoeffsBase
 
class  PLMD::Communicator
 Class containing wrappers to MPI. More...
 
class  PLMD::DLLoader
 Class taking care of dynamic loading. More...
 
class  PLMD::Exception
 Class to deal with Plumed runtime errors. More...
 
class  PLMD::ves::FermiSwitchingFunction
 Small class to compute fermi switching function. More...
 
class  PLMD::GridBase
 
class  PLMD::HistogramBead
 A class for calculating whether or not values are within a given range using : \( \sum_i \int_a^b G( s_i, \sigma*(b-a) ) \). More...
 
class  PLMD::IFile
 Class for input files. More...
 
class  PLMD::LeptonCall
 
class  PLMD::LinkCells
 A class for doing link cells. More...
 
class  PLMD::LoopUnroller< n >
 Utiliy class for loop unrolling. More...
 
class  PLMD::NeighborList
 A class that implements neighbor lists from two lists or a single list of atoms. More...
 
class  PLMD::OFile
 Class for output files. More...
 
class  PLMD::Random
 
class  PLMD::RMSD
 A class that implements RMSD calculations This is a class that implements the various infrastructure to calculate the RMSD or MSD respect a given frame. More...
 
class  PLMD::SwitchingFunction
 Small class to compute switching functions. More...
 
class  PLMD::SwitchingFunctionAccelerable
 Small class to compute switching functions. More...
 
class  PLMD::TensorTyped< T, n, m >
 Class implementing fixed size matrices of doubles. More...
 
class  PLMD::Tools
 Empty class which just contains several (static) tools. More...
 
class  PLMD::Torsion
 Class to compute torsional angles. More...
 
class  PLMD::Tree
 
class  PLMD::TypesafePtr
 Class to deal with propoagation of typesafe pointers. More...
 
class  PLMD::Units
 Small utility class that contains information about units. More...
 
class  PLMD::Value
 A class for holding the value of a function together with its derivatives. More...
 
class  PLMD::VectorTyped< T, n >
 Class implementing fixed size vectors of doubles. More...
 

Typedefs

typedef Tensor3d PLMD::Tensor
 
typedef TensorGeneric< 1, 1 > PLMD::Tensor1d
 
typedef TensorTyped< float, 1, 1 > PLMD::Tensor1f
 
typedef TensorGeneric< 2, 2 > PLMD::Tensor2d
 
typedef TensorTyped< float, 2, 2 > PLMD::Tensor2f
 
typedef TensorGeneric< 3, 3 > PLMD::Tensor3d
 
typedef TensorTyped< float, 3, 3 > PLMD::Tensor3f
 
typedef TensorGeneric< 4, 4 > PLMD::Tensor4d
 
typedef TensorTyped< float, 4, 4 > PLMD::Tensor4f
 
typedef TensorGeneric< 5, 5 > PLMD::Tensor5d
 
typedef TensorTyped< float, 5, 5 > PLMD::Tensor5f
 
template<typename T>
using PLMD::TensorT = TensorTyped<T,3,3>
 Alias for three by three Tensor of any type:
 
typedef Vector3d PLMD::Vector
 Alias for three dimensional vectors.
 
typedef VectorGeneric< 1 > PLMD::Vector1d
 Alias for one dimensional vectors.
 
typedef VectorTyped< float, 1 > PLMD::Vector1f
 Alias for one dimensional vectors.
 
typedef VectorGeneric< 2 > PLMD::Vector2d
 Alias for two dimensional vectors.
 
typedef VectorTyped< float, 2 > PLMD::Vector2f
 Alias for two dimensional vectors.
 
typedef VectorGeneric< 3 > PLMD::Vector3d
 Alias for three dimensional vectors.
 
typedef VectorTyped< float, 3 > PLMD::Vector3f
 Alias for three dimensional vectors.
 
typedef VectorGeneric< 4 > PLMD::Vector4d
 Alias for four dimensional vectors.
 
typedef VectorTyped< float, 4 > PLMD::Vector4f
 Alias for four dimensional vectors.
 
typedef VectorGeneric< 5 > PLMD::Vector5d
 Alias for five dimensional vectors.
 
typedef VectorTyped< float, 5 > PLMD::Vector5f
 Alias for five dimensional vectors.
 
template<typename T>
using PLMD::VectorT = VectorTyped<T,3>
 Alias for three dimensional vectors of any type:
 

Functions

constexpr double PLMD::epsilon (std::numeric_limits< double >::epsilon())
 Very small non-zero number.
 
constexpr double PLMD::kBoltzmann (0.0083144621)
 Boltzman constant in kj/K.
 
constexpr double PLMD::pi (3.141592653589793238462643383279502884197169399375105820974944592307)
 PI.
 

Variables

constexpr double PLMD::halfpi =PLMD::pi*0.5
 PI / 2.
 
constexpr double PLMD::twopi =PLMD::pi*2.0
 PI * 2.
 

Detailed Description

Classes providing basic tools in plumed.

Classes of this group are designed to be reusable and to incorporate all sorts of functionality in plumed. We try to keep their documentation as complete and clear as possible so as to increase the chance that they will be reused.

If you implement a new class that you think might be useful to others please add it to the list by including the following inside the header file.

\ingroup TOOLBOX

Typedef Documentation

◆ Tensor

◆ Tensor1d

◆ Tensor1f

typedef TensorTyped<float,1,1> PLMD::Tensor1f

◆ Tensor2d

◆ Tensor2f

typedef TensorTyped<float,2,2> PLMD::Tensor2f

◆ Tensor3d

◆ Tensor3f

typedef TensorTyped<float,3,3> PLMD::Tensor3f

◆ Tensor4d

◆ Tensor4f

typedef TensorTyped<float,4,4> PLMD::Tensor4f

◆ Tensor5d

◆ Tensor5f

typedef TensorTyped<float,5,5> PLMD::Tensor5f

◆ TensorT

template<typename T>
using PLMD::TensorT = TensorTyped<T,3,3>

Alias for three by three Tensor of any type:

◆ Vector

Alias for three dimensional vectors.

◆ Vector1d

Alias for one dimensional vectors.

◆ Vector1f

typedef VectorTyped<float,1> PLMD::Vector1f

Alias for one dimensional vectors.

◆ Vector2d

Alias for two dimensional vectors.

◆ Vector2f

typedef VectorTyped<float,2> PLMD::Vector2f

Alias for two dimensional vectors.

◆ Vector3d

Alias for three dimensional vectors.

◆ Vector3f

typedef VectorTyped<float,3> PLMD::Vector3f

Alias for three dimensional vectors.

◆ Vector4d

Alias for four dimensional vectors.

◆ Vector4f

typedef VectorTyped<float,4> PLMD::Vector4f

Alias for four dimensional vectors.

◆ Vector5d

Alias for five dimensional vectors.

◆ Vector5f

typedef VectorTyped<float,5> PLMD::Vector5f

Alias for five dimensional vectors.

◆ VectorT

template<typename T>
using PLMD::VectorT = VectorTyped<T,3>

Alias for three dimensional vectors of any type:

Function Documentation

◆ epsilon()

double PLMD::epsilon ( std::numeric_limits< double > ::epsilon())
constexpr

Very small non-zero number.

◆ kBoltzmann()

double PLMD::kBoltzmann ( 0. 0083144621)
constexpr

Boltzman constant in kj/K.

◆ pi()

double PLMD::pi ( 3. 141592653589793238462643383279502884197169399375105820974944592307)
constexpr

PI.

Variable Documentation

◆ halfpi

double PLMD::halfpi =PLMD::pi*0.5
constexpr

PI / 2.

◆ twopi

double PLMD::twopi =PLMD::pi*2.0
constexpr

PI * 2.