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

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

Collaboration diagram for BendBendPotential:

Public Member Functions

 BendBendPotential ()
 Default constructor for BendBendPotential.
 
 BendBendPotential (std::array< std::size_t, 4 > identifiers, BendBendType type, std::vector< double > vector_parameters)
 
 BendBendPotential (std::array< std::size_t, 4 > identifiers, const BendBendType type)
 Constructs a BendBendPotential with specified type and bend_bend IDs.
 
bool operator== (BendBendPotential const &) const =default
 
std::string print () const
 Generates a string representation of the bend_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 bend_bend.
 
BendBendType type
 The type of bend_bend potential.
 
std::array< double, maximumNumberOfBendBendParameters > parameters
 Parameters associated with the bend_bend potential.
 

Static Public Attributes

static std::array< std::size_t, 3 > numberOfBendBendParameters {3, 3, 3}
 Number of parameters required for each bend_bend type.
 
static std::map< std::string, BendBendType, caseInsensitiveComparator > definitionForString
 Mapping of bend_bend type strings to BendBendType enums.
 

Friends

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

Detailed Description

Represents a bend_bend potential between two particles.

The BendBendPotential struct encapsulates the type of bend_bend and associated parameters between two particles. It includes versioning for serialization, bend_bend type, identifiers of bend_bended particles, and bend_bend parameters.

Constructor & Destructor Documentation

◆ BendBendPotential() [1/2]

BendBendPotential::BendBendPotential ( )
inline

Default constructor for BendBendPotential.

Initializes a BendBendPotential object with Undefined bend_bend type and zeroed bend_bend IDs.

◆ BendBendPotential() [2/2]

BendBendPotential::BendBendPotential ( std::array< std::size_t, 4 >  identifiers,
const BendBendType  type 
)
inline

Constructs a BendBendPotential with specified type and bend_bend IDs.

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

Member Function Documentation

◆ print()

std::string BendBendPotential::print ( ) const

Generates a string representation of the bend_bend potential.

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

Returns
A string describing the bend_bend potential.

Member Data Documentation

◆ definitionForString

std::map<std::string, BendBendType, caseInsensitiveComparator> BendBendPotential::definitionForString
inlinestatic
Initial value:
{
{"CVFF", BendBendType::CVFF}, {"CFF", BendBendType::CFF}, {"MM3", BendBendType::MM3}}

Mapping of bend_bend type strings to BendBendType enums.

A static map that associates bend_bend type names with their corresponding BendBendType enumeration values.

◆ numberOfBendBendParameters

std::array<std::size_t, 3> BendBendPotential::numberOfBendBendParameters {3, 3, 3}
inlinestatic

Number of parameters required for each bend_bend type.

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


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