Scine::Swoose
2.1.0
This is the SCINE module Swoose.
|
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>
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... | |
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.
Scine::MolecularMechanics::InteractionExclusion::InteractionExclusion | ( | unsigned int | nAtoms | ) |
Constructor.
nAtoms | The number of atoms. |
Note that the number of atoms may be changed later by calling resetExclusions(...).
void Scine::MolecularMechanics::InteractionExclusion::addExclusions | ( | const Eigen::SparseMatrix< bool > & | excludedPairs | ) |
Add new exclusions.
excludedPairs | The exclusions. |
void Scine::MolecularMechanics::InteractionExclusion::addExclusions | ( | const IndexedStructuralTopology & | topology | ) |
Add the exclusions encoded in the topology, e.g., 1-3 and 1-2 interactions.
topology | The topology. |
const Eigen::SparseMatrix< bool > & Scine::MolecularMechanics::InteractionExclusion::getExclusions | ( | ) |
Getter for 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.
nAtoms | The new number of atoms. |
void Scine::MolecularMechanics::InteractionExclusion::setExclusions | ( | const Eigen::SparseMatrix< bool > & | excludedPairs | ) |
Setter for the exclusion matrix.
excludedPairs | The exclusion matrix. |