indigoX
FFDihedral Class Reference

#include <indigox/classes/forcefield.hpp>

Public Types

enum  Type
 Enum for the different function types a dihedral term can have. More...
 

Public Member Functions

 FFDihedral ()=default
 
 FFDihedral (const FFDihedral &)=default
 
 FFDihedral (FFDihedral &&)=default
 
 ~ FFDihedral ()=default
 
double GetForceConstant () const
 Get the force constant. More...
 
Forcefield GetForcefield () const
 
int32_t GetID () const
 Get the ID for this type. More...
 
double GetIdealAngle () const
 Get the ideal angle (in degrees). More...
 
int32_t GetMultiplicity () const
 Get the multiplicity. More...
 
double GetPhaseShift () const
 Get the phase shift (in degrees). More...
 
Type GetType () const
 Get the potential energy function type. More...
 
 operator bool () const
 
bool operator!= (const FFDihedral &dhd) const
 
bool operator< (const FFDihedral &dhd) const
 
bool operator<= (const FFDihedral &dhd) const
 
FFDihedraloperator= (const FFDihedral &)=default
 
FFDihedraloperator= (FFDihedral &&)=default
 
bool operator== (const FFDihedral &dhd) const
 
bool operator> (const FFDihedral &dhd) const
 
bool operator>= (const FFDihedral &dhd) const
 

Friends

class cereal::access
 Friendship allows serialisation. More...
 
class Forcefield
 Friendship allows dihedral types to be added to a forcefield. More...
 
std::ostream & operator<< (std::ostream &os, const FFDihedral &dhd)
 

Member Enumeration Documentation

◆ Type

enum Type
strong

Enum for the different function types a dihedral term can have.

Though other values are provided, currently only the proper and improper function types are technically supported.

Enumerator
Empty 
Proper 
Improper 
RyckaertBellemans 
PeriodicImproper 
Fourier 
Restricted 

Constructor & Destructor Documentation

◆ FFDihedral() [1/3]

FFDihedral ( )
default

◆ FFDihedral() [2/3]

FFDihedral ( const FFDihedral )
default

◆ FFDihedral() [3/3]

FFDihedral ( FFDihedral &&  )
default

◆ ~ FFDihedral()

~ FFDihedral ( )
default

Member Function Documentation

◆ GetForceConstant()

double GetForceConstant ( ) const

Get the force constant.

Returns
the force constant.
Exceptions
std::runtime_errorif the type does not allow a force constant.

◆ GetForcefield()

Forcefield GetForcefield ( ) const

◆ GetID()

int32_t GetID ( ) const

Get the ID for this type.

Returns
the ID of this dihedral type.

◆ GetIdealAngle()

double GetIdealAngle ( ) const

Get the ideal angle (in degrees).

Returns
the ideal angle.
Exceptions
std::runtime_errorif the type does not allow an ideal angle.

◆ GetMultiplicity()

int32_t GetMultiplicity ( ) const

Get the multiplicity.

Returns
the multiplicity.
Exceptions
std::runtime_errorif the type does not allow a multiplicity.

◆ GetPhaseShift()

double GetPhaseShift ( ) const

Get the phase shift (in degrees).

Returns
the phase shift.
Exceptions
std::runtime_errorif the type does not allow a phase shift.

◆ GetType()

Type GetType ( ) const

Get the potential energy function type.

Returns
the type of the potential energy function.

◆ operator bool()

operator bool ( ) const
inline

◆ operator!=()

bool operator!= ( const FFDihedral dhd) const
inline

◆ operator<()

bool operator< ( const FFDihedral dhd) const

◆ operator<=()

bool operator<= ( const FFDihedral dhd) const
inline

◆ operator=() [1/2]

FFDihedral& operator= ( FFDihedral &&  )
default

◆ operator=() [2/2]

FFDihedral& operator= ( const FFDihedral )
default

◆ operator==()

bool operator== ( const FFDihedral dhd) const

◆ operator>()

bool operator> ( const FFDihedral dhd) const

◆ operator>=()

bool operator>= ( const FFDihedral dhd) const
inline

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Friendship allows serialisation.

◆ Forcefield

friend class Forcefield
friend

Friendship allows dihedral types to be added to a forcefield.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const FFDihedral dhd 
)
friend

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