indigoX
FFBond Class Reference

#include <indigox/classes/forcefield.hpp>

Public Types

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

Public Member Functions

 FFBond ()=default
 
 FFBond (const FFBond &)=default
 
 FFBond (FFBond &&)=default
 
 ~ FFBond ()=default
 
double GetForceConstant () const
 Get the force constant. More...
 
Forcefield GetForcefield () const
 
int32_t GetID () const
 Get the ID for this type. More...
 
double GetIdealLength () const
 Get the ideal angle (in degrees). More...
 
FFBond GetLinkedType () const
 Get the linked type for this type. More...
 
Type GetType () const
 Get the potential energy function type. More...
 
 operator bool () const
 
bool operator!= (const FFBond &bnd) const
 
bool operator< (const FFBond &bnd) const
 
bool operator<= (const FFBond &bnd) const
 
FFBondoperator= (const FFBond &)=default
 
FFBondoperator= (FFBond &&)=default
 
bool operator== (const FFBond &bnd) const
 
bool operator> (const FFBond &bnd) const
 
bool operator>= (const FFBond &bnd) const
 

Friends

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

Member Enumeration Documentation

◆ Type

enum Type
strong

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

Though other values are provided, currently only the harmonic and quartic function types are technically supported.

Enumerator
Empty 

An empty bond type with no parameters.

Harmonic 

A harmonic bond type taking the form $\frac{k_b}{2}(x - //!< x_0)^2$.

Quartic 

A quartic bond type taking the form $\frac{k_b}{2}(x^2 - //!< {x_0}^2)^2$.

Morse 
Cubic 
FENE 

Constructor & Destructor Documentation

◆ FFBond() [1/3]

FFBond ( )
default

◆ FFBond() [2/3]

FFBond ( const FFBond )
default

◆ FFBond() [3/3]

FFBond ( FFBond &&  )
default

◆ ~ FFBond()

~ FFBond ( )
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.

◆ GetIdealLength()

double GetIdealLength ( ) const

Get the ideal angle (in degrees).

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

◆ GetLinkedType()

FFBond GetLinkedType ( ) const

Get the linked type for this type.

A linked type is an equivalent type with a different functional type.

Returns
the linked type.

◆ 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 FFBond bnd) const
inline

◆ operator<()

bool operator< ( const FFBond bnd) const

◆ operator<=()

bool operator<= ( const FFBond bnd) const
inline

◆ operator=() [1/2]

FFBond& operator= ( FFBond &&  )
default

◆ operator=() [2/2]

FFBond& operator= ( const FFBond )
default

◆ operator==()

bool operator== ( const FFBond bnd) const

◆ operator>()

bool operator> ( const FFBond bnd) const

◆ operator>=()

bool operator>= ( const FFBond bnd) const
inline

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Friendship allows serialisation.

◆ Forcefield

friend class Forcefield
friend

Friendship allows bond types to be added to a forcefield.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const FFBond bnd 
)
friend

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