RASPA3 3.0.12
A molecular simulation code for computing adsorption and diffusion in nanoporous materials
Loading...
Searching...
No Matches
BondBendPotential Struct Referenceexport

Represents a bond_bend potential between two particles. More...

Collaboration diagram for BondBendPotential:

Public Member Functions

 BondBendPotential ()
 Default constructor for BondBendPotential.
 
 BondBendPotential (std::array< std::size_t, 4 > identifiers, BondBendType type, std::vector< double > vector_parameters)
 
 BondBendPotential (std::array< std::size_t, 4 > identifiers, const BondBendType type)
 Constructs a BondBendPotential with specified type and bond_bend IDs.
 
bool operator== (BondBendPotential const &) const =default
 
std::string print () const
 Generates a string representation of the bond_bend potential.
 
double calculateEnergy (const double3 &posA, const double3 &posB, const double3 &posc, const double3 &posD) const
 

Public Attributes

std::uint64_t versionNumber {1}
 Version number for serialization.
 
std::array< std::size_t, 4 > identifiers
 Identifiers of the two particles forming the bond_bend.
 
BondBendType type
 The type of bond_bend potential.
 
std::array< double, maximumNumberOfBondBendParameters > parameters
 Parameters associated with the bond_bend potential.
 

Static Public Attributes

static std::array< std::size_t, 7 > numberOfBondBendParameters {5, 5, 4, 3, 4, 4, 4}
 Number of parameters required for each bond_bend type.
 
static std::map< std::string, BondBendType, caseInsensitiveComparator > definitionForString
 Mapping of bond_bend type strings to BondBendType enums.
 

Friends

Archive< std::ofstream > & operator<< (Archive< std::ofstream > &archive, const BondBendPotential &b)
 
Archive< std::ifstream > & operator>> (Archive< std::ifstream > &archive, BondBendPotential &b)
 

Detailed Description

Represents a bond_bend potential between two particles.

The BondBendPotential struct encapsulates the type of bond_bend and associated parameters between two particles. It includes versioning for serialization, bond_bend type, identifiers of bond_bended particles, and bond_bend parameters.

Constructor & Destructor Documentation

◆ BondBendPotential() [1/2]

BondBendPotential::BondBendPotential ( )
inline

Default constructor for BondBendPotential.

Initializes a BondBendPotential object with Undefined bond_bend type and zeroed bond_bend IDs.

◆ BondBendPotential() [2/2]

BondBendPotential::BondBendPotential ( std::array< std::size_t, 4 >  identifiers,
const BondBendType  type 
)
inline

Constructs a BondBendPotential with specified type and bond_bend IDs.

Parameters
typeThe type of bond_bend potential.
identifiersA pair of particle identifiers forming the bond_bend.

Member Function Documentation

◆ print()

std::string BondBendPotential::print ( ) const

Generates a string representation of the bond_bend potential.

Provides a formatted string containing bond_bend type, particle IDs, and parameters.

Returns
A string describing the bond_bend potential.

Member Data Documentation

◆ definitionForString

std::map<std::string, BondBendType, caseInsensitiveComparator> BondBendPotential::definitionForString
inlinestatic
Initial value:
{
{"CVFF", BondBendType::CVFF},
{"CFF", BondBendType::CFF},
{"MM3", BondBendType::MM3},
{"TRUNCATED_HARMONIC", BondBendType::TruncatedHarmonic},
{"SCREENED_HARMONIC", BondBendType::ScreenedHarmonic},
{"SCREENED_VESSAL", BondBendType::ScreenedVessal},
{"TRUNCATED_VESSAL", BondBendType::TruncatedVessal}}

Mapping of bond_bend type strings to BondBendType enums.

A static map that associates bond_bend type names with their corresponding BondBendType enumeration values.

◆ numberOfBondBendParameters

std::array<std::size_t, 7> BondBendPotential::numberOfBondBendParameters {5, 5, 4, 3, 4, 4, 4}
inlinestatic

Number of parameters required for each bond_bend type.

A static vector indicating the number of parameters needed for each bond_bend type.


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