Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Scine::MolecularMechanics::InteractionExclusion Class Reference

This class provides a framework to store exclusions of interactions between atoms. Such exclusions are required for the non-covalent interactions between bonded atoms or to eliminate contributions to the energy for the interaction between QM atoms in QM/MM. More...

#include <InteractionExclusion.h>

Inheritance diagram for Scine::MolecularMechanics::InteractionExclusion:
Inheritance graph
Collaboration diagram for Scine::MolecularMechanics::InteractionExclusion:
Collaboration graph

Public Member Functions

 InteractionExclusion (unsigned int nAtoms)
 Constructor. More...
 
void setExclusions (const Eigen::SparseMatrix< bool > &excludedPairs)
 Setter for the exclusion matrix. More...
 
void addExclusions (const Eigen::SparseMatrix< bool > &excludedPairs)
 Add new exclusions. More...
 
void addExclusions (const IndexedStructuralTopology &topology)
 Add the exclusions encoded in the topology, e.g., 1-3 and 1-2 interactions. More...
 
const Eigen::SparseMatrix< bool > & getExclusions ()
 Getter for the exclusions. More...
 
void resetExclusions (unsigned int nAtoms)
 Resize the exclusion matrix to the given number of atoms and remove all existing exlcuions. More...
 

Detailed Description

This class provides a framework to store exclusions of interactions between atoms. Such exclusions are required for the non-covalent interactions between bonded atoms or to eliminate contributions to the energy for the interaction between QM atoms in QM/MM.

The exclusions are stored as a sparse matrix atom x atom of booleans. If the entry is true for two atoms, their interaction is excluded.

Constructor & Destructor Documentation

Scine::MolecularMechanics::InteractionExclusion::InteractionExclusion ( unsigned int  nAtoms)

Constructor.

Parameters
nAtomsThe number of atoms.

Note that the number of atoms may be changed later by calling resetExclusions(...).

Member Function Documentation

void Scine::MolecularMechanics::InteractionExclusion::addExclusions ( const Eigen::SparseMatrix< bool > &  excludedPairs)

Add new exclusions.

Parameters
excludedPairsThe exclusions.
void Scine::MolecularMechanics::InteractionExclusion::addExclusions ( const IndexedStructuralTopology topology)

Add the exclusions encoded in the topology, e.g., 1-3 and 1-2 interactions.

Parameters
topologyThe topology.
const Eigen::SparseMatrix< bool > & Scine::MolecularMechanics::InteractionExclusion::getExclusions ( )

Getter for the exclusions.

Returns
The exclusions.
void Scine::MolecularMechanics::InteractionExclusion::resetExclusions ( unsigned int  nAtoms)

Resize the exclusion matrix to the given number of atoms and remove all existing exlcuions.

Parameters
nAtomsThe new number of atoms.
void Scine::MolecularMechanics::InteractionExclusion::setExclusions ( const Eigen::SparseMatrix< bool > &  excludedPairs)

Setter for the exclusion matrix.

Parameters
excludedPairsThe exclusion matrix.

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